C Programme Comos Help ENGLISH HelpMenu Manual
C Programme Comos Help ENGLISH HelpMenu Manual
C Programme Comos Help ENGLISH HelpMenu Manual
2 MENU OVERVIEW
2.1 File....................................................................................2-1
2.2 Editing..............................................................................2-3
2.3 View..................................................................................2-4
2.3.1 Direct commands .......................................................2-4
2.3.2 Sub-menu Icon with placing information ....................2-5
2.3.3 Sub-menu Menu bar / Symbol bar .............................2-6
2.4 Administrator ..................................................................2-8
2.4.1 Sub-menu Base data .................................................2-8
2.4.2 Sub-menu System......................................................2-9
2.5 Extra ...............................................................................2-10
2.5.1 Sub-menu Bulk processing ......................................2-10
2.5.2 Sub-menu Query ......................................................2-10
2.5.3 Sub-menu Standard import ......................................2-11
2.5.4 Sub-menu Language translation ..............................2-11
2.5.4.1 Sub-menu Test........................................................2-11
2.5.5 Sub-menu Detail ......................................................2-11
2.5.6 Sub-menu Working layers / histories .......................2-12
2.5.7 Commands...............................................................2-13
2.6 Windows ........................................................................2-13
2.7 Help ................................................................................2-14
2.8 The “PlugIns” icon bar .................................................2-14
5 PROJECT MANAGEMENT
5.1 The system project .........................................................5-1
5.2 Create or delete projects................................................5-1
5.3 Import / Export of projects .............................................5-3
5.3.1 Export project .............................................................5-3
5.3.2 Import project .............................................................5-3
5.3.3 Comparison of exporting and importing: ....................5-4
5.3.4 DBSync.exe ...............................................................5-5
5.3.4.1 Purpose .....................................................................5-5
5.3.4.2 Synchronization sequence ........................................5-6
5.3.4.2.1 Step 1: Create synchronous databases with ExportDB...............5-6
5.3.4.2.2 Step 2: modify DBSync.ini .........................................................5-6
5.3.4.2.3 Step 3: Export of the original Comos database (“source”) .........5-8
5.3.4.2.4 Step 4: Import with retrospective matching................................5-9
5.3.4.2.5 Step 5: Retrospective matching ................................................5-10
5.3.4.2.6 Alternative: Import without retrospective matching.................5-10
5.3.4.3 Error messages .......................................................5-11
5.4 Joint access to projects ...............................................5-12
5.4.1 Introduction ..............................................................5-12
5.4.2 Attributes for joint access .........................................5-12
5.4.3 Project utility programs.............................................5-13
5.5 The project properties ..................................................5-13
6 RIGHTS MANAGEMENT
6.1 Overview of rights management within Comos ...........6-1
6.1.1 Access an the database.............................................6-1
6.1.2 Meta-rights .................................................................6-1
6.1.2.1 Administrator ...........................................................6-1
6.1.2.2 Project management ..............................................6-2
6.1.3 Notes regarding licenses............................................6-2
6.1.3.1 Viewing license..........................................................6-2
6.1.4 Definition of the three rights groups ...........................6-3
6.1.5 General effect of the mechanism for rights ................6-4
6.1.6 Overview of the options for allocating rights ..............6-4
6.2 Object rights....................................................................6-5
6.2.1 Inheritance in the case of object rights.......................6-5
6.2.2 Object rights in detail..................................................6-5
6.2.2.1 Read completely........................................................6-5
6.2.2.2 Write ..........................................................................6-6
6.2.2.3 Delete ........................................................................6-6
6.2.2.4 Create........................................................................6-7
6.2.2.5 Create revision ..........................................................6-7
6.2.2.6 Check revision...........................................................6-7
6.2.2.7 Release revision........................................................6-7
6.2.2.8 Set user rights ...........................................................6-7
6.3 Function rights................................................................6-8
7 INHERITANCE
7.1 Definition of the methods...............................................7-1
7.1.1 Inheritance with planning objects ...............................7-1
7.1.2 Definition of hierarchical inheritance ..........................7-1
7.1.3 Definition of references (links)....................................7-3
7.1.4 Definition of links ........................................................7-4
8 COPYING
8.1 General definitions and delineations ............................8-1
8.1.1 The constituent parts of an object ..............................8-1
8.1.2 The amount to be copied ...........................................8-1
8.1.3 References.................................................................8-2
8.1.3.1 Allocation of objects ..................................................8-3
8.1.3.2 Definition and classification .......................................8-4
8.1.3.3 Special reference types .............................................8-6
8.1.3.4 Alternative solutions ..................................................8-6
8.1.4 Extended amount to be copied ................................8-10
8.2 Copying with the Navigator and an additional one ...8-11
8.2.1 Copying within the Navigator (within the project) .....8-11
8.2.1.1 Functional scope .....................................................8-11
8.2.1.2 Application...............................................................8-13
8.2.2 Simple copying with a change of project ..................8-14
8.2.2.1 Functional scope .....................................................8-14
8.2.2.2 Application...............................................................8-16
8.3 Copy structure ..............................................................8-17
8.3.1 Scope of copying......................................................8-17
8.3.2 Application................................................................8-20
8.3.2.1 Rights that are required...........................................8-20
8.3.2.2 Preparing for the copy operation .............................8-21
8.3.2.3 Intermediate editing.................................................8-22
8.3.2.4 Concluding the copying operation ...........................8-26
8.3.3 Special cases regarding projections and prohi-
bitions on projection .................................................8-26
8.4 Copying across projects ..............................................8-26
8.4.1 Scope of copying......................................................8-27
8.4.2 Application................................................................8-28
8.5 The Object Matcher ......................................................8-31
8.5.1 Explanation of the interface......................................8-31
8.5.2 Scope of copying......................................................8-34
9 DELETING
15 PROPERTIES: TABS
15.1 General...........................................................................15-1
15.1.1 Definition, structure and technical background ........15-1
15.1.2 Rights administration................................................15-3
15.2 Mouse menus and operation .......................................15-3
15.2.1 Mouse menus of the tab...........................................15-3
15.2.2 Mouse menu of an attribute .....................................15-5
15.2.3 Attribute display: Scaling, shifting, grouping ............15-6
15.3 Properties of a specification-tab .................................15-7
15.3.1 General tab ..............................................................15-7
15.3.2 Script tab ..................................................................15-8
15.3.3 Uses tab ...................................................................15-9
15.4 Specifications tab: List view......................................15-10
16 PROPERTIES: SPECIFICATIONS
16.1 Create copy of a specification .....................................16-1
21 STATUS MANAGEMENT
21.1 Preparing base objects ................................................21-1
21.1.1 Base object @Status................................................21-1
21.1.2 Base objects, System tab.........................................21-2
21.1.3 Controlling the status through attributes ..................21-3
21.1.4 Controlling the status through a base object script ..21-4
21.2 Status management on the planning side ..................21-4
21.2.1 Setting the status in the Properties window .............21-4
21.2.2 Setting the status within the Navigator.....................21-5
21.2.3 Automatic status change..........................................21-7
21.2.4 Status calculation log ...............................................21-7
21.3 Allocation of rights for status management...............21-8
24 OBJECT BROWSER
24.1 Overview ........................................................................24-1
24.2 Displaying the list of objects .......................................24-2
24.2.1 Changing the order of the columns ..........................24-2
24.2.2 Row height ...............................................................24-3
24.2.3 Column width ...........................................................24-4
24.2.4 Editing cells directly..................................................24-4
24.3 Display attributes (additional columns)......................24-5
24.4 Row statistics................................................................24-5
24.5 Sort.................................................................................24-6
24.6 Filter ...............................................................................24-8
24.7 Sorting/Filter................................................................24-10
24.7.1 Sorting area............................................................24-11
24.7.2 Filter area ...............................................................24-12
24.8 Options .......................................................................24-13
24.8.1 General tab ............................................................24-14
24.8.2 Administration tab ..................................................24-14
24.8.3 Column edit tab ......................................................24-17
24.8.3.1 General..................................................................24-17
24.8.3.2 Object evaluation...................................................24-18
24.8.3.3 Value calculation ...................................................24-19
24.8.3.4 Extras ....................................................................24-19
24.8.3.5 Languages.............................................................24-21
24.8.3.6 Extension classes..................................................24-21
24.9 Export...........................................................................24-22
24.10New (additional columns) ..........................................24-23
24.10.1| General column ...................................................24-23
24.10.1.1 General tab............................................................24-24
24.10.1.2 Object evaluation tab.............................................24-24
24.10.1.2.1 Navigation library short.......................................................... 24-25
24.10.1.2.2 Navigation library extended ................................................... 24-27
24.10.1.2.3 Script type............................................................................... 24-29
24.10.1.3 Value calculation tab .............................................24-30
24.10.1.4 Extras tab ..............................................................24-31
24.10.1.5 Languages tab.......................................................24-31
24.10.2Default columns (project, timestamp, etc.) ............24-31
24.10.3New | Row statistics ..............................................24-32
25 STANDARD QUERIES
25.1 Creating and opening standard queries .....................25-1
25.2 Operation: Standard controller....................................25-3
25.3 Standard query Planning objects ................................25-7
25.4 Standard query Base objects ....................................25-12
25.5 Standard query Documents / printing.......................25-13
25.5.1 General ..................................................................25-13
25.5.2 Further information regarding printing ....................25-18
25.6 Standard query Attributes..........................................25-19
25.7 Standard query Connectors.......................................25-21
25.8 Other queries...............................................................25-22
25.8.1 Standard tables for picklists ...................................25-23
25.8.2 Values of standard tables.......................................25-24
25.9 Special applications ...................................................25-26
25.9.1 Translation .............................................................25-26
25.9.2 Reimport.................................................................25-26
25.9.3 Device selection (product data)..............................25-26
25.9.4 User-defined...........................................................25-26
25.10Query as list ................................................................25-27
25.11Outputting standard queries in reports....................25-27
26 BULK PROCESSING
26.1 Preliminary comments .................................................26-1
26.2 Bulk processing of planning objects ..........................26-2
26.2.1 Purpose....................................................................26-2
26.2.2 The left-hand window area.......................................26-2
26.2.3 The right-hand window area.....................................26-2
26.2.4 Work flow for bulk processing ..................................26-3
26.2.4.1 Step 1: Setting the object and defining filters ..........26-3
28 DECISION TABLES
28.1 Concept and scope.......................................................28-1
28.2 Creating a decision table .............................................28-1
28.3 Design mode .................................................................28-1
28.3.1 Addressing extended values ....................................28-1
28.3.2 Condition columns....................................................28-2
28.3.3 Action columns.........................................................28-3
28.4 Working mode ...............................................................28-4
28.4.1 Conditions ................................................................28-4
28.4.2 Actions .....................................................................28-4
28.5 Documentation of the action taken .............................28-5
28.6 Applications ..................................................................28-5
28.7 Controlling decision tables by scripts ........................28-6
34 QUERY REIMPORT
34.1 Read the data into the query........................................34-1
34.2 Prepare the data............................................................34-2
34.3 Carry out the reimport ..................................................34-3
38 XML / MOTIONX
38.1 Overview ........................................................................38-1
38.2 Navigator display for XML documents .......................38-1
38.3 Linking specifications and XML attributes .................38-4
38.4 Free import / export (XML Connectors) ......................38-5
38.4.1 Aim / basic principles of XML Connectors................38-5
38.4.2 Implementation in the interface ................................38-9
38.4.3 XML template (XML Connector template) ..............38-11
38.4.4 Configuring queries for XML ..................................38-12
38.4.4.1 Changing templates ..............................................38-12
38.4.4.2 Properties of a column, Extras ..............................38-13
38.4.4.3 Options of a column, MotionX ...............................38-15
38.4.5 XML Document (XML Connector document) .........38-17
38.4.5.1 Properties ..............................................................38-17
38.4.5.2 Export ....................................................................38-18
38.4.5.3 Import ....................................................................38-19
38.4.6 Configure XML Connector......................................38-20
38.4.6.1 Preparations ..........................................................38-21
38.4.6.2 Interface ................................................................38-21
38.4.6.3 Application.............................................................38-24
38.4.7 Script for the XML Connector.................................38-24
38.5 MotionX Server............................................................38-28
38.5.1 Objective ................................................................38-28
38.5.2 Installation ..............................................................38-28
38.5.2.1 Comos 8.1 .............................................................38-28
38.5.2.2 Comos 8.2 .............................................................38-29
38.5.3 Uninstallation..........................................................38-30
38.5.4 Administration ........................................................38-30
38.5.4.1 MotionX Server configuration file .........................38-30
38.5.4.2 Edit command file..................................................38-31
38.5.4.3 Sequence ..............................................................38-33
38.5.4.4 Process figure .......................................................38-34
38.5.4.5 Response messages in Comos.............................38-35
38.5.4.6 Log files .................................................................38-35
38.5.5 Example files..........................................................38-35
38.5.5.1 ComosMotionXServerManager.config ..................38-35
39 OTHER INTERFACES
39.1 Comos-Comos (import, export) ...................................39-1
39.2 Comos-Comos (import planning projects) .................39-1
39.3 Comos-Comos (import system project) .....................39-2
39.4 Translations (import, export) .......................................39-2
39.5 WMF data (import) ........................................................39-2
39.6 Report templates (import) ............................................39-2
41 REVISIONS
41.1 Creating revision base objects (revision types) ........41-1
41.1.1 General ....................................................................41-1
41.1.2 Structure of a revision base object / revision table...41-1
41.1.2.1 The "revision carrier" ...............................................41-1
41.1.2.2 The revision elements / revision steps ....................41-2
41.1.2.3 Creating multiple revision base objects...................41-4
41.1.3 "@Project" revision ..................................................41-4
41.1.4 Switching off animation ............................................41-4
41.2 Base object of a document: Selecting the revision type .
41-5
41.3 Preparing group revisions ...........................................41-5
41.3.1 Base objects of a document group: Selecting the
revision type .............................................................41-5
41.3.2 Planning objects for document groups.....................41-5
41.4 The "Index" of a revision..............................................41-6
41.5 Project options: Revision options...............................41-7
41.5.1 The general revision procedure ("PDF at first step") 41-7
41.5.1.1 Overview .................................................................41-7
41.5.1.2 "PDF at first step" ....................................................41-8
41.5.1.3 "Create PDF file at first step": deactivated .........41-9
41.5.2 Revision monitoring..................................................41-9
41.5.2.1 Overview .................................................................41-9
41.5.2.2 Basic settings (Project settings) ..............................41-9
41.5.2.3 Report templates: AutoWatchRevisions................41-11
41.5.3 Report comparison method: Timestamp ................41-11
42 LANGUAGES (LOCALIZATION)
42.1 General...........................................................................42-1
42.1.1 Language areas in Comos .......................................42-1
42.1.1.1 The program interface (interface language) ............42-1
42.1.1.2 The database (project language) ............................42-1
42.1.1.3 Template files ..........................................................42-2
42.1.2 Combination of language areas ...............................42-2
42.1.3 Technical background ..............................................42-3
42.2 Interface language ........................................................42-3
42.3 Project languages .........................................................42-3
42.3.1 Switching languages / language management ........42-3
42.3.1.1 Language management (Languages tab)..............42-3
42.3.1.2 Mouse-menus on the Languages tab ....................42-5
42.3.1.3 Application...............................................................42-6
42.4 Translation of project data ...........................................42-9
42.4.1 Translating attributes................................................42-9
42.4.1.1 Procedure:...............................................................42-9
42.4.1.2 Technical background ...........................................42-10
42.4.2 Translate “description” (object language translation) ......
42-10
42.4.2.1 Application.............................................................42-10
42.4.2.2 Editing multiple objects one after another .............42-11
42.4.2.3 Relationship between base objects and
planning objects ....................................................42-11
42.4.3 Translation of multiple objects ...............................42-12
42.4.4 Translation of ComosDB .......................................42-15
42.4.4.1 Interface of the dialog window...............................42-15
42.4.4.2 Carrying out an export operation...........................42-16
42.4.4.3 Carrying out an import operation...........................42-20
42.5 Language-dependent selection of template files.....42-21
42.6 Exclusions ...................................................................42-22
43 DESIGNER (2D-DRAWINGS)
43.1 General operation of the interface ..............................43-1
44 MULTICRP.EXE
44.1 Objective........................................................................44-1
44.2 Selecting reports...........................................................44-1
44.3 Manual search and replace ..........................................44-2
44.4 Re-establish uniqueness of names .............................44-3
45 SYMBOL-DESIGNER
45.1 Background: types of diagrams ..................................45-1
45.2 General rules for designing symbols..........................45-1
45.3 Toolbar ...........................................................................45-3
45.3.1 Properties of a text (text parameters) ......................45-3
45.3.1.1 Text defaults............................................................45-4
45.3.1.2 Text parameter: properties ......................................45-4
45.3.2 Set origin ..................................................................45-5
45.4 Properties of a text .......................................................45-6
45.4.1 Text functions...........................................................45-6
46 REPORT DESIGNER
46.1 Background: Types of diagrams .................................46-1
46.2 General operation of the interface ..............................46-1
46.2.1 Toolbar .....................................................................46-1
46.2.2 Context-sensitive mouse menus ..............................46-2
46.2.2.1 Insert object.............................................................46-2
46.2.2.2 Import / export scripts ..............................................46-4
46.2.2.3 Correction function ..................................................46-4
46.2.3 Options: worksheet parameters and script ..............46-5
46.3 The toolbar ....................................................................46-6
46.3.1 Placing texts.............................................................46-6
46.3.1.1 Text Defaults ...........................................................46-7
46.3.1.2 Text properties .......................................................46-7
46.3.1.3 Properties window ...................................................46-8
46.3.1.4 Type “ReportObject-Property” ...............................46-11
46.3.1.5 Type “Expression” .................................................46-11
46.3.1.6 Type “Script”..........................................................46-12
46.3.1.7 Type “Item-Property” .............................................46-13
46.3.1.8 Type “Fixed” ..........................................................46-14
46.3.1.9 Type “Attribute”......................................................46-14
46.3.2 Switch / Options switch .........................................46-17
46.3.2.1 General tab............................................................46-18
46.3.2.2 Properties tab ........................................................46-18
46.3.2.3 Type “ReportObject-Property” ...............................46-18
52 PE AND CM MODULES
52.1 General notes on templates .........................................52-1
52.2 Preparing 3D / CM templates from scratch ................52-1
52.2.1 Creating the unit to contain P&ID and 3D objects....52-1
52.2.2 Placing 3D objects in the Model space ....................52-2
52.2.3 Creating a Mapping table and linking PFD objects
to 3D objects ............................................................52-4
52.2.4 Linking the DimLen object to PFD objects ...............52-5
52.2.5 Connector mapping..................................................52-5
52.2.5.1 PFD -> PID connector mapping ..............................52-5
52.2.5.2 PFD -> CM connector mapping...............................52-6
52.3 Preparing P&ID templates ............................................52-7
52.4 Availability of P&ID and 3D templates ........................52-8
52.5 Preparing 3D templates using existing ones .............52-9
52.6 The PE base object structure ....................................52-11
52.6.1 PE root node ..........................................................52-11
52.6.2 CN Nomenclature Catalog node ............................52-11
52.6.3 DS Data Structures node .......................................52-11
52.6.4 CA Attributes Catalog.............................................52-12
52.6.4.1 CC Tabs Catalog...................................................52-12
52.6.4.2 MT Mapping Tables...............................................52-12
52.6.5 QU Queries ............................................................52-13
52.6.5.1 REM Remarks .......................................................52-13
52.6.6 PO Process Objects...............................................52-13
52.6.6.1 EQ Equipment .......................................................52-13
52.6.6.3 SO Stream Objects ...............................................52-14
52.6.7 US Unit System ......................................................52-14
52.7 Tips for administrators on PE objects ......................52-14
53 ISOMETRIC MODULE
53.1 Defaults and definitions ...............................................53-1
53.2 Base data, lists, templates ...........................................53-4
53.2.1 | PI| EN| D| 03 Pipe ..................................................53-4
53.2.2 “@3D” branch...........................................................53-4
53.2.2.1 “@3D| @Menu” .......................................................53-4
53.2.2.2 “@3D| @PPC| @01 PipeSpec”...............................53-5
53.2.2.3 “@3D| @PPC| @CTS Part Components” ...............53-6
53.2.2.3.1 Structure ....................................................................................53-6
53.2.2.3.2 Technical background ...............................................................53-7
53.2.2.3.3 Designing symbol .....................................................................53-7
53.2.2.3.4 Tabs.........................................................................................53-14
53.2.2.3.5 “FT Fabrication” .....................................................................53-14
53.2.2.3.6 “GD 3D Geometry” ................................................................53-14
53.2.2.3.7 “SYSISO System Information” ..............................................53-17
53.2.2.3.8 “VTX Texts” ...........................................................................53-19
53.2.2.3.9 “VDM Data sheet” ..................................................................53-19
53.2.3 “|@ISO” node .........................................................53-20
53.2.3.1 “|@ISO|A Tag symbols” ........................................53-20
53.2.3.1.1 Creating tag symbols...............................................................53-20
53.2.3.1.2 Configuring base objects.........................................................53-21
53.2.3.1.3 Modifying tag symbols ...........................................................53-21
53.2.3.1.4 “...| 01 Seal”, “...| 06 Position number”, “...| 09 Welding
point”.......................................................................................53-22
53.2.3.1.5 “...|02 Equipment”...................................................................53-22
53.2.3.1.6 “...|03 Flow direction”.............................................................53-22
53.2.3.1.7 “...|04 Mounting tags” .............................................................53-22
53.2.3.1.8 “...|05 Nominal diameter/Pipe class” ......................................53-22
53.2.3.2 |@ISO| B Constr. symbols ....................................53-23
53.2.3.2.1 “...|01 Wall breakthrough” ......................................................53-23
53.2.3.3 “|@ISO|C Spool symbols” .....................................53-23
53.2.3.4 “@ISO|D|01 Check symbols” ................................53-25
53.2.3.5 “|@ISO|O|ISO documents”....................................53-25
53.2.4 Standard tables ......................................................53-26
53.2.4.1 “|@3D|01|PC|01|03 Functionscode”......................53-27
53.2.4.2 “|@3D|01|BC|02 Connection Types” .....................53-27
53.2.4.3 “|@3D|01|06 Contact faces” ..................................53-28
53.2.4.4 “|@SYSTEM| @NORTHARROW” ........................53-28
53.2.4.5 “@SYSTEM|@NORTHARROWANGLE” ..............53-28
53.2.4.6 “@SYSTEM|SLOPEINPUTTYPE” ........................53-28
53.3 Report/ Data sheet ......................................................53-29
54 OVERVIEW COMOS PT
55 CROSS-MODULE PT TOOLS
55.1 Signal management ......................................................55-1
55.2 Signal name matching..................................................55-2
55.3 Assignment Manager....................................................55-2
57 P&ID MODULE
57.1 Base data, lists, templates ...........................................57-1
57.1.1 PI Piping and instrumentation ..................................57-1
57.1.1.1 Basic structures PI|PI EN ........................................57-1
57.1.1.1.1 Labeling ....................................................................................57-1
57.1.1.1.2 Symbol ......................................................................................57-2
57.1.1.1.3 Connectors and auxiliary connectors ........................................57-3
57.1.1.1.4 General attributes and calculated attributes ..............................57-4
57.1.1.2 @RI-B labeling symbols P&ID.................................57-4
57.1.1.2.1 All .............................................................................................57-4
57.1.1.2.2 RW Revision clouds .................................................................57-5
57.1.1.2.3 @RIGRAFIK Graphic symbols P&ID .....................................57-6
59 ELECTRICAL ENGINEERING
59.1 Base data, lists, templates ...........................................59-1
59.1.1 Devices (planning objects) .......................................59-1
59.1.1.1 “Simple” devices ......................................................59-1
59.1.1.1.1 DIN labels................................................................................. 59-1
59.1.1.1.2 Symbol...................................................................................... 59-2
59.1.1.1.3 Connectors and auxiliary connectors ....................................... 59-4
59.1.1.1.4 Attributes and calculated attributes .......................................... 59-4
59.1.1.1.5 Request property....................................................................... 59-5
59.1.1.1.6 Product data.............................................................................. 59-5
59.1.1.2 @1EA Catalog EE |- I Potentials .............................59-6
59.1.1.2.1 Logical potential....................................................................... 59-6
59.1.1.2.2 Physical potential ..................................................................... 59-8
59.1.1.3 K Relay, contactor .................................................59-10
59.1.1.4 O Other..................................................................59-12
59.1.1.4.1 @BB Blackbox....................................................................... 59-12
59.1.1.4.2 @SG ID segment.................................................................... 59-14
59.1.1.5 W Cables ...............................................................59-17
59.1.1.5.1 Goal ........................................................................................ 59-17
59.1.1.5.2 Control of the extended capabilities....................................... 59-17
59.1.1.5.3 Application ............................................................................. 59-17
59.1.1.5.4 Placing a cable on the report .................................................. 59-20
59.1.1.5.5 Shields .................................................................................... 59-21
59.1.1.5.6 Other objects........................................................................... 59-22
59.1.1.5.7 Supporting documents............................................................ 59-22
59.1.1.5.8 Pre-allocating wires to connectors ......................................... 59-23
59.1.1.6 X Terminal strips / plug strips ................................59-23
59.1.1.6.1 Goal ........................................................................................ 59-23
59.1.1.6.2 Control of the extended capabilities....................................... 59-23
59.1.1.6.3 Terminal strips........................................................................ 59-23
59.1.1.6.4 Terminals................................................................................ 59-24
59.1.1.6.5 Bridges.................................................................................... 59-24
59.1.1.6.6 Supporting reports .................................................................. 59-25
59.1.1.6.7 Plug strips ............................................................................... 59-26
59.1.1.7 ZA_1EA templates / part switching .......................59-26
59.1.1.8 ZE_1EA elements .................................................59-26
59.1.1.8.1 HK Auxiliary contacts............................................................ 59-26
64 I&C SUB-MODULE
64.1 P&ID defaults.................................................................64-1
64.1.1 Base data .................................................................64-1
64.1.2 Unit planning ............................................................64-1
64.1.3 Position and functions ..............................................64-2
64.2 Base data, lists, templates ...........................................64-2
64.2.1 Devices from other branches ...................................64-2
64.2.1.1 Folder “EE/I&C Engineering”...................................64-2
64.2.1.2 “@Position” .............................................................64-5
64.2.1.2.1 General ......................................................................................64-5
64.2.1.2.2 Tabs / attributes.........................................................................64-6
64.2.1.3 “@F Functions” .......................................................64-8
64.2.1.3.1 General ......................................................................................64-8
64.2.1.3.2 Display of functions ..................................................................64-8
64.2.1.3.3 Tab / attributes ..........................................................................64-8
64.2.1.3.4 “@F| SE Structure elements for functions” ............................64-10
66 PQM
Keycode.exe
If the above was done accidentally and if the locking of the Comos ET data-
base is to be released, then proceed as follows:
• Look in Windows Explorer for sub-directory ..\comos\bin .
• Start KEYCODE.exe
• Select the database to be released from the dialog window shown below:
Only close the above dialog window once the entire process has
been completed!
Example:
Comos /D z:\ReleaseDatabase\Comos.mdb /P SO1 /NO
Old form
As an alternative to the above method, you can also use parameters separated
by spaces. In that case they must follow a specific order:
1. Parameter [Complete database file name with directory]
2. Parameter [0: Default access; 1: Universal access;
2: Alternative access for the user]
3. Parameter [Project name]
Example:
Comos.exe z:\ReleaseDatabase\Comos.mdb 1 SO1
This older form must not be mixed with the usage parameters.
Server database
<Comos.exe> /d [SQL - SERVER]pt_sql_server_1 /P Test
“pt_sql_server_1” is an example of a name of the data source. Please note the
space character in “SQL - SERVERS”!
XIF can start up Comos via an external program call, it can open a project,
select an object in the Navigator and open a report on which the object has
been placed.
There is a sample script for WinCC in XifExample.txt.
Application examples
• Search for an object by means of FullLabel
The device or document that is being searched for can also be identified via
the FullLabel. However, the FullLabel does not take into consideration
the folder or prefix. If a document is searched for by means of FullLabel
and not found, then all the parallel folders are automatically searched in
parallel to see whether the object can be found there. In addition, any
possible prefixes are taken into consideration.
• Open report
An object can be placed on multiple reports. For that reason you can now
specify the /PA: <Symbol type> option. This stipulates a specific type of
report on which the object in question is placed. Please note in such a case
that it is not allowed to place the object on two reports of the same type.
The Properties window of the object opens if no document was found (the
object was not placed on a report of this type or the symbol type is unknown).
This function can also be used in a targeted way: you simply need to input an
unknown symbol type as the option if the Properties window is to be opened
explicitly.
1.6.1 Profiles
At many points the user can design the interfaces to suit his or her own wishes.
For example, when selecting a project.
Do this right-clicking on the head of a column:
The table can be designed as you wish. There is a comprehensive description
on how these tables (“object queries”) can be designed in SECTION 24: OBJECT
BROWSER.
Then right-click again on a column head and select the | SETTINGS | SAVE com-
mand.
The user-specific layout is stored in the profiles directory of the base data.
2 Menu overview
2.1 File
Open or create a database
Closing a project
2.2 Editing
The following functionalities are described here in the way that they behave
in a planning project. The form of behavior in a base project can differ
slightly, especially in the case of references.
Cut object(s)
Copy object(s)
Paste object(s)
A function of the Comos clipboard. If the | CUT function had been used before-
hand, the objects that had been cut are pasted in at this position. If the | COPY
function had been used beforehand, the newly created objects are pasted in at
this position. It is not possible to copy a reference and paste it with the aid of
the | PASTE command; the | PASTE REFERENCE command must always be used
instead for that.
Paste link
2.3 View
Direct start
| VIEW | DIRECT START
If direct starting has been activated, then the next time that Comos starts it
automatically attempts to recreate the working environment that had existed
when it was last quit.
Thus the database and the project that had been running when Comos was last
ended are opened again. If the last object that had been selected in the Navi-
gator was not inherited, the tree is folded out correspondingly up to this point.
Navigator
| VIEW | NAVIGATOR
The Navigator is called up when Comos starts. This menu item allows the
automatic activation of the Navigator to be disabled. See also SECTION 10: DIS-
PLAY IN THE NAVIGATOR.
Load PlugIns
| VIEW | LOAD PLUGINS
This command updates the PlugIn menu bar. Please note that a number of
functionalities are only offered by the PlugIn symbol bar. If this symbol bar
is not shown, then probably a number of Comos functionalities have not been
made available to you.
If the option is activated, a tick is shown in the Navigator at the icons at the
top right when the object is placed on a report. It is possible to distinguish
between two options here:
For all placed objects : The tick is shown for all objects that are placed.
Only for placed elements : The tick is only shown for objects that are in the
elements collection of another object (created on the Elements tab).
Please note that this option requires a good deal of computer capacity. It is
best to disable this option on slower PCs.
The following commands relate to the appearance of the menu bar. In partic-
ular, you can use them to save symbol bars that you have created.
| MENU CONFIGURATION |LOAD ORIGINAL CONFIGURATION
– The original menu configuration is loaded.
| MENU CONFIGURATION | LOAD MENU BAR FROM...
– Here you can stipulate which configuration file (*.atb) you wish to
access.
| MENU CONFIGURATION | LOAD MENU BAR LAYOUT...
– At this point you can specify which menu layout you wish to load
(selection of *.atb files).
| MENU CONFIGURATION | SAVE MENU BAR TO...
– Here you can stipulate where the current menu configuration is to be
saved.
bar. In other words: nobody else but you can access this symbol bar, but
you also have the security of knowing that you will not “disturb”
anybody.
– Symbol bar created specifically by the base data
If a symbol bar is created specifically by the base data, this symbol bar is
visible to all Comos users who work in the same database. The symbol
bar is created in the base project in branch @System | @Symbols. You do
not have to switch to the base project to do this. The base-data-specific
symbol bar can also be created within the planning project, provided that
you possess the Base data editing function right. However, you may not
edit @Symbols in the Navigator but instead must use the dialog window
to create special symbol bars, see the next section.
– Symbol bar created specifically by the document
This symbol bar is visible to all Comos users who open this document. A
planning object with the name “@Symbols” is created under the report
template in the base project to do this. The @Symbols planning object
points to another template through the implementation pointer or else
possesses directly under it the collection for the symbol bar.
Here too you may not work in the Navigator itself. The command (and
also the | LOAD ORIGINAL DOCUMENT-SPECIFICALLY command) is active
when a report is opened.
Now right-click in the upper area of the dialog window, as shown in the fol-
lowing screenshot:
2.4 Administrator
Apart from CVS MONITOR, the administrator functions can only be used when
a database is opened.
Standard tables
| ADMINISTRATOR | BASE DATA | STANDARD TABLES
See SECTION 11.1: STANDARD TABLES
Unit systems
| ADMINISTRATOR | BASE DATA | UNIT SYSTEMS
See SECTION 11.2: UNIT SYSTEMS
Document types
| ADMINISTRATOR | BASE DATA | DOCUMENT TYPES
See SECTION 11.3: DOCUMENT TYPES
Support
Performance Monitor
| ADMINISTRATOR | SYSTEM | PERF. MONITOR
See SECTION 3.9: PERFORMANCE MONITOR.
CVS Monitor
| ADMINISTRATOR | SYSTEM | CVS MONITOR
See SECTION 3.10: CVS MONITOR.
User management
| ADMINISTRATOR | SYSTEM | USER
See SECTION 6: RIGHTS MANAGEMENT
Database reconciliation
| ADMINISTRATOR | SYSTEM | DATABASE RECONCILIATION
See SECTION 49.3: DATABASE ADJUSTMENT
2.5 Extra
At this point you have available to you all the base objects that are in the base
data under @System | @O | @Query and are created by using the
| NEW QUERY... mouse menu.
A basic structure can be created by database reconciliation, see SECTION 49.3:
DATABASE ADJUSTMENT.
At this point you have available to you all the base objects that are in the base
data under @System @O @StdImport and are created by using the
| NEW STANDARD IMPORT... mouse menu.
A basic structure can be created by database reconciliation, see SECTION 49.3:
DATABASE ADJUSTMENT.
Device requests are replaced by actual manufacturer devices with the aid of
this dialog window. See SECTION 60: REQUEST AND IMPLEMENTATION.
Signal Manager
Device modification
| EXTRA | DETAIL | CHANGE BY RULE:...
See SECTION 58.1: RUPLAN IMPORT.
Product data
| EXTRA | DETAIL | DEVICE SELECTION (PRODUCT DATA)
See SECTION 61.6.2.2: SELECTION FOR A PLANNING DATA BRANCH.
See SECTION 4.5.1: DIALOG WINDOW “SELECT WORKING LAYER” for the Histories tab.
See “Working layers” tab, P. 4-16 for the Working layers tab.
2.5.7 Commands
System Monitor
| EXTRA | SYSTEM MONITOR ([Ctrl]+[S])
See SECTION 3.8: SYSTEM MONITOR.
2.6 Windows
This menu controls the display of multiple open windows. If, for example
(with a single screen), both a Properties window and an Interactive Report are
opened, the second window covers the first window that was opened.
| WINDOWS | ON TOP OF ONE ANOTHER (CASCADE?)
2.7 Help
Contains the PDF files of the Comos manuals, the PDF file for the Microsoft
VB Script reference and the command for the information window. Please
note that Comos also has context-sensitive help available through the F1 key.
Assignment Manager
See SECTION 55.3: ASSIGNMENT MANAGER.
Marshaling Management
See Quick start MSR.
Pipe classes
See Quick start Viper.
Ruplan import
Viper
See Quick start Viper.
Conversion of units
See SECTION 30.2: UNIT CONVERSION.
VNS import
See SECTION 56.5: VNS IMPORT.
3 Database Administration
3.1 Login
Alternative access
If this command is selected, the ending '_2' is added to the user name. This
means that a second user name to which independent rights can be assigned
is available to each user in Comos.
3.1.5.1 Definitions
Database scheme
All the object properties that are available in Comos are stored in the Comos
database. If an object property that did not exist before is introduced in a cur-
rent Comos version, the Comos database must be extended to be able to take
this new property.
Database indices
Database indices are required to speed up access. The result of this check is
displayed in a dialog window together with the test of the database scheme.
Database version
Comos databases are given explicit version numbers when the appropriate
developments are made.
Document version
In the same way as for database schemes, with documents there is also a con-
stant further development of options. The document version determines the
range of options open to the user. New options can only be used once the doc-
ument version has been incremented.
Joint matching
The database scheme and database indices are jointly matched. A dialog win-
dow opens and clicking on [MATCH] acts on both of them.
Conversion matrix
• Old Clients
– Old database (scheme and/or indices not matched):
Normal state
– Converted database (scheme and/or indices matched):
Old Client can open the database and use the “old” functionalities, but not
the new ones.
• New Clients
– Old database (scheme and/or indices not matched):
New Client cannot open the old database.
– Converted database (scheme and/or indices matched):
Normal state
User
If the user opens an older Comos database with the current version of Comos,
the following message is shown:
The tables of this database do not meet the requirements of COMOS!
Please contact your COMOS administrator!
Comos remains open after the message and you can select another suitable
database.
Administrator
If an administrator opens an older Comos database with the current version of
Comos, a dialog window “Checking the tables ” opens as well. There are the
following options:
[No ]
The database remains unchanged and is not opened. Comos remains open and
you can select another suitable database.
[Yes ]
The database scheme is matched. Both the older and the new current Comos
Clients can be used in the usual way. No data is lost. However, the older
Comos Clients cannot make use of the options that are made available by
updating the database scheme.
Conversion matrix
• Old Clients
– Old database (database version not matched):
Normal state
– Converted database (database version matched):
Old Client cannot open the converted database.
• New Clients
– Old database (database version not matched):
New Client can open the old database.
– Converted database (database version matched):
Normal state
Implementation
The database version is managed with the aid of the support dialog in Comos,
see SECTION 3.6.1: UPDATE VERSIONS.
Please note: The database version cannot be set back to an older version after-
wards.
Conversion matrix
• Old Clients
– Old database (database version not matched):
Normal state
– Converted database (database version matched):
Old Client is given a warning message when logging in.
Old Client can open and edit documents that have not been updated to the
new document version.
Old Client can only open documents that have been updated to the new
document version.
• New Clients
Implementation
The document version is managed with the aid of the support dialog in
Comos, see SECTION 3.6.1: UPDATE VERSIONS.
Please note: The document version cannot be set back to an older version
afterwards.
Recommendation:
Number of users < 5: Access
Number of users 5 or more: MS SQL Server
Please note that in particular accesses can be set up via instances, see for
example Installation, section 3.2.1.2 “Create instances for SQL Client”.
Please note: it is not possible to start work at once with a new blank database.
In particular, it is not possible to make any accesses that are external to the
database, such as an export access (see SECTION 3.4: IMPORT / EXPORT OF DATABA-
SES). The administrator must first of all be logged in: he or she is entered in the
User management window as the administrator during this first login.
A user @SETUP has been created in the user management in the sample data-
base Comos.mdb. But as described above, for security reasons it is not possible
to enter just any name for the login. The user name is taken from the operating
system in the Open database dialog window.
A preconfigured entry is available when right-clicking with the mouse to
input the user name @SETUP in the Open database window.
• Open the sample database Comos.mdb .
• Command: right-click in the User name field
• Mouse context menu | Universal Access
This creates a login name that consists of the default login name with a “2”
attached to it. Other user rights than those given to the default user can now
be allocate to this user.
3. This window behaves like Microsoft Explorer: You can navigate within
the directory structure of your PC.
Change to the desired directory and input a filename. The required file
extension is added automatically.
4. Click on the [OPEN] button.
You are asked if you are sure, and this must be confirmed with [YES].
5. You are returned to the Open Database dialog window. Log in as
administrator.
It is possible to access the same database from different PCs with the aid of
the third party Citrix Terminal Server software.
Comos has the option of version management for the distributed keeping of
data. In this case the stocks of data of physically separated databases can be
synchronized. The synchronization is initiated manually and then carried out
automatically.
This method must not be confused with the importing or exporting of projects.
Data can be bundled together in a database in this way, but this process creates
parallel projects in the Comos database that must then be merged manually.
The prerequisite for synchronization is that a Comos database has been pre-
pared and then a special copy is made of it. If two completely independent and
separate databases are created, these databases cannot be synchronized retro-
spectively, regardless of how similar these databases appear to be.
1. Open a database, using administrator rights, and open any desired project.
2. Open the Support dialog window via the | ADMINISTRATOR | SYSTEM
| SUPPORT menu and change there to the DB Orga. tab.
3. Input any letter in the DB identifier field.
Please note: You may not use any letters that have ever been used at any time
by any database as a DB identifier! This also include test versions, meaning
database copies that had been deleted later.
Please create a list of which DB identifiers you have used and for
which database!
It is not important for the next step whether Comos remains open or is closed.
The sub-directory \bin is in the objects folder of Comos. There you should
start the program ExportDB.exe. See also SECTION 3.4.2: EXPORT regarding the
export of a database.
Input in the Source the database to which a DB identifier had been allocated
in the previous step. Ensure that you are logged in as administrator in the User
name field.
A new database is input in the Target field. You cannot use any of the exist-
ing databases.
Please note: You may not use any letters that have ever been used at any time
by any database as a DB identifier! This also include test versions, meaning
database copies that had been deleted later.
Please create a list of which DB identifiers you have used and for
which database!
You can input in the Projects dialog window which projects are to be
exported synchronized. You have two options available: You can specifically
mark the projects that are to be exported synchronized or else simply mark all
the projects. Depending on the database and the amount of data, the options
can save time under the appropriate circumstances.
If there are only a few projects that you do not require within a large number
of projects, it is nonetheless quicker to mark all the projects. (The “superflu-
ous” projects can be deleted later from the target database.) The reason for
that is that while “superfluous” data is exported in this case, it is only neces-
sary to go through the database once.
If there are only a few projects that you actually require within a large number
of projects, it is nonetheless quicker to select only those projects that you
want. The reason for that is that while it is necessary to go through the data-
base for each project, no “superfluous” data is exported.
Confirm with [EXPORT].
Caution: the export process can take several hours if the database is large!
You get the corresponding message once the export process has been com-
pleted.
You have both the option to summarize the data in one of the synchronized
databases and also to reconcile the databases. In the first case the source data-
base remains unchanged, while in the second case the updating is done in both
directions. Use the ImportDB.exe program in sub-directory \bin for both
options:
In principle, either of the two databases can be the Source or Target in the
Import Comos database dialog window. (Ensure that you have logged in
as administrator in the User name fields of both databases.)
A number of different changes take place, depending on which database was
selected as the source and which one as the target, since the source database
always wins in the event of a data collision!
The corresponding query messages are shown if the identifiers are not differ-
ent or were not set.
The following dialog window has the title Projects :
Synchronize databases
• If the switch was not activated, then the data in the target database is
summarized and the source database is not changed.
3.4.1 Import
3.4.2 Export
Comos is in the position to export its own databases. The procedure depends
to some extent as to which types of database were used. While Access data-
bases can also be created by Comos itself, the server databases that are cur-
rently supported must be created from scratch from the corresponding
software.
In other words:
• If you wish to export to a server database, a blank new server database must
exist already.
In addition, the administrator must have already logged into the new blank
database so that he is listed in the user administration of the new blank
database as administrator.
• If you wish to export to an Access database, it must be created during this
export process. It is not possible to use an existing database.
The sub-directory \bin is located in the objects folder of Comos. There start
the program ExportDB.exe.
In order to use ExportDB, the user must have the following rights: “Read” and
the meta-right “Project management.” ExportDB can also be used for the syn-
chronization of databases, see SECTION 3.3.3: CREATING THE SYNCHRONIZED COPY
(EXPORTDB).
Input the name of the database to be exported from in the Source field.
Ensure that you have been logged in as administrator in the User name field.
The new database is input in the Target field. If you selected an existing data-
base as the target, then all the data in the target database will be deleted and
the data from the source will be written to it.
Documents sub-directory
If you select a server database in the Target , you then have the option to select
an instance. In addition, you can set the documents directory:
See also SECTION 3.6.3: DATABASE ORGANIZATION regarding the documents direc-
tory.
The options switches are as follows:
Without deleted If objects are deleted in Comos, they have still not
objects been deleted physically for safety reasons. Instead
the objects are simply given a Delete-Flag and
can no longer be accessed by a normal user.
Use the Support function to finally and defini-
tively delete such objects.
If the option has been activated, then objects with
the Delete-Flag are not exported.
With DB See SECTION 3.3.3: CREATING THE SYNCHRONIZED COPY
synchronization (EXPORTDB)
If only planning projects are marked, an additional query is made: “Are the
system project and base objects project to be exported as well?” A planning
project cannot be run without the system project and the base objects project.
The query ensures that you are reminded of this in case you simply forgot to
mark these projects as well.
Confirm with [EXPORT].
Caution: the export process can take several hours if there is a lot of data.
You get the corresponding message once the export process has been con-
cluded.
If the export process was terminated manually or if an error occurred, you can
then open a new database but should not use the projects involved in the error.
Comos displays the corresponding message:
... Please delete the project from the database
Please ensure that you have been logged in as the administrator in the User
name field, otherwise the process is terminated for safety reasons.
The Oracle and SQL Server options presuppose that the corresponding data-
base links have been installed in the ODBC administrator of your PCs.
You can determine in the From section (the upper part of the window) from
which database the system project is to be taken for use. Select the drive, path
and filename of the database containing the new system project by using the
[...] button.
Within the target database a sequential number is appended to the name of the
previous system project, and then the new system project is copied.
You get the corresponding message once the function has been concluded.
Error log
Any objects that could not be allocated when the system project was copied
are logged in error log file C:\..\TMP\NoCon.DAT. You can also input in the
“Error output at” field into another path and filename or select with the but-
ton next to the field.
3.6 Support
The “Support” tool is opened with:
| Administrator | System | Support
The administrator can only carry out a database conversion once all the PCs
have been equipped with the new Client version. The full upgraded scope of
Comos is available after the database has been converted.
If an interactive report is saved, then a crp file is created within the Comos
documents directory and this includes details on which report version is
involved. In practice, after version changes there are both workstations work-
ing with the current version of Comos as well as workstations that still use
older versions of Comos. The older report versions still need to be kept so that
the reports can still be read and processed at the workstations with the older
setup during the transitional phase. This means:
• Reports with an older version level are not converted to the newer version.
• New reports are still created in the older report version.
If the newer version of Comos was installed on a workstation and was used to
access a database in which the “ database-internal permitted document ver-
sion” (see the following) had not yet been brought up to the latest version
number, then information to that effect is given during the login.
The version management function determines from when the newer report
version is to be used.
The Version tab is in the | Administrator | System |Support menu. In it
there is the [Match document Versions ] button that has the following
effect:
• In the database the information is stored to the effect that reports are
permitted as of immediately with the current (higher) version numbers. This
information is known as the “database-internal documents version.”
• Thus no messages are shown during login concerning the deviation between
the documents version and the database version.
• New reports are created as of immediately with the higher version.
• Older reports initially remain unchanged (no automatic mass conversion),
they are only saved in the higher version once these reports have been
opened and saved again.
3.6.1.2 Application
Open the Support dialog window with the | Administrator | System
| Support command. Change to the Version tab.
[Match document Versions ]
If this function is initiated, then not only is a variable set to a higher value, but
conversions are made within the database. These conversions cannot be
undone. Once a database has been converted, PCs with older version levels
can no longer access it.
During the transition period, on networks there will be PCs with the current
version of Comos as well as PCs with older versions of Comos. It is therefore
recommended that you do not convert the database until all the Comos Clients
have been changed over accordingly. “Old” and “new” Clients can still access
the “old” database and work quite normally. There is no pressure to convert
the database at the time of the first login of a Comos Client.
The question of the compatibility of different version levels obviously will
not arise if Comos is only used locally on non-networked PCs.
3.6.2.1 Compression
Databases mostly have a number of different functions to ensure the security
and integrity of the data. The disadvantage of such safety functions is that they
require a lot of memory and disk space. For that reason there are two functions
within Comos to reduce the size of the database again.
Open the Support dialog window with the | Administrator | System
| Support command and change from there to the DB Utility tab.
3.6.5 Status
The status information shows you whether Comos can be started correctly and
what settings you are working with. You should always have this information
at hand if you contact Support at innotec with a question.
Refresh speed
The Refresh speed determines at what intervals the System Monitor is
updated.
1. Number of objects
Number of Comos objects in the cache. The Number of objects is
limited by the entry in the Maximum loaded objects field.
2. Referenced objects
Number of Comos objects that are held by components and cannot be
removed from memory. Releasing objects does not affect the referenced
objects, which still remain in memory.
The Number of objects in 1. above is thus always greater than the
number of referenced objects.
3. Cache entries
Number of cache entries. The cache entries are a result of the Number of
objects from 1. above. The rule is as follows: the number of cache entries
is always considerably greater than the Number of objects . However, a
cache entry needs considerably less memory than an object. Releasing
objects does not affect the cache entries, which still remain in memory.
4. Hash table size
The cache entries are managed in the hash table. As a rule, initially a table
with 50,000 fields is created, and these are filled up bit by bit. If that is
not adequate, the hash table is enlarged to 100,000, and so forth.
5. Number of collections
Number of Comos collections in the cache (subset of 1.).
Summary
The main points are the Number of objects and the Cache entries . Both
take up memory. The cache entries each take up less memory than do objects,
but on the otehr hand there are also significantly more cache entries.
The Number of objects is limited by the Maximum loaded objects field
and can also be reduced by “releasing objects”, see below.
The Cache entries cannot be limited in advance and also cannot be released.
If the number of cache entries has become so large that Comos runs slowly
(very rare), you need to quit and restart Comos.
3.8.2.2 Preparing to release objects: matching the cache and main memory
The amount of main memory available is not determined dynamically during
operations and released as required. Instead, Comos has the “Maximum
loaded objects” function.
Maximum loaded objects
The value selected for Maximum loaded objects determines from what
point the cache is to be emptied.
The Maximum loaded objects field can be edited. Do this by marking the
text in the field, deleting it, and entering a number. Your input is saved per-
manently. The value that is input here is stored in Comos function MaxLoade-
dObjects (class Workset).
The limit to be set for the maximum number of objects to be loaded depends
on the amount of free memory available. For example, the amount of free
memory available can be checked from within Task Manager: start Comos
and determine how much memory is free. As a rule of thumb, 10,000 objects
require 10 MB of free memory.
Example: If you press Save, Comos then checks within the System Monitor
to see whether the specified upper limit has already been reached. If it has,
then any objects that are no longer required are deleted from the cache. You
can do the same thing by right-clicking on the Status bar on the SAVE field and
selecting the | SAVE command.
In very rare cases the user could carry out a series of actions that would not
be covered by Comos’s own optimization rules, and in such a case the cache
can become too big for the main memory and information is written back and
forth between the main memory and the hard disk. This can happen if a very
large number of objects are edited simultaneously, for example, due to bulk
processing or when copyimg a large unit.
In such a case the action should be terminated (if necessary, also with the Task
Manager), sicne the write operations to the hard disk require an extremely
large amount of time and make effective work impossible. Manual termina-
tion does not cause any loss of data.
To prevent an overflow of the cache, you should check whether the cache still
has enough space before carrying out larger operations (copying a unit or the
like), meaning that the number of objects in the cache should be well below
the limit for the maximum number of objects to be loaded.
Please note: If the limit for Maximum loaded objects is set too low, then
even the number of items that cannot be released (such as modified objects,
referenced objects) could push you over the limit. In such a case objects
would be released unnecessarily and caching would have almost no effect.
You can release the memory manually if there is no longer enough memory
(if the Number of objects is no longer well below the limit for the maximum
number of objects to be loaded).
There are a number of ways to clear the cache:
The active modules are shown on this tab together with the monitoring value
that is currently valid for a module.
Please note: Only those modules that are currently active are shown in the list
area in the presettings. The list of active modules does of course change
according to the current working situation. If you wish to carry out base
objects processing, other modules than are shown in an EE/C&I report are
activated. A number of modules nearly always need to be run, such as
Functree. The options mean:
This tab determines at regular intervals a monitoring value for the modules
that you selected.
• Click the [START] button.
The other options are as follows:
3.9.4 Notes
If you retrospectively mark a value for monitoring, the module may indeed by
listed correctly on the Monitoring tab but no column header is shown. The
determined values are correct.
ID
Computer The name under which the PC is logged into the company
network.
Notes
The CVS Monitor uses resources-intensive network functions. It is impossi-
ble to run the CVS Monitor “simultaneously”. You can run other tasks when
the CVS Monitor has been switched on.
4.1 Goal
Aim: Splitting up data into topic-related blocks. These subsets can be edited,
modified and transported considerably more quickly, cost-effectively and
precisely. For that reason there are the following main functions:
• Create new working layer, release working layer.
– Initially the working layer is completely blank and only shows all the
information of the “parent layer”. Working in the working layer means
that you create a “subset of information” of the entire planning data. You
create a new working layer for each topic that you wish to edit separately
and only work there.
– If a topic is completed, you can release the working layer and thus make
the work generally available.
– Working layers can be set up and structured hierarchically. This gives
you the option to further sub-divide topics into sub-topics, etc.
• Working layer display and history display. Both functions illustrate the
respective editing status of the objects in a similar way to status display.
• Importing and exporting working layers
• History of the released area
Objects are edited in working layers. If you compare a current object with any
desired earlier initital state, there can be four states:
These four states do of course occur in the original data as well, or in other
words, in the data that already exists regardless of any working layers. This
original data is also called the “released area”. See also SECTION 4.4.2: CON-
TROLLING THE PROPERTIES OF WORKING LAYERS (@WOLEVELS) for a definition of the
hierarchy of working layers.
If you thus open any particular project and check the data before and after a
certain point in time, the state could look like the following, for example:
Released Area
The above example has nothing to do with the display of the history, but
instead only symbolizes that the four basic states (Old, New, Deleted, Modi-
fied) do of course exist for all data. And not only in working layers.
Nonetheless, we would like to point out here that there are in fact five states
that can be shown in Comos, since deleted objects can be sub-divided once
again into two groups.
• “Hard deleted“
The objects are physically deleted and have actually been completely
removed.
• “Soft deleted“
These objects are only marked as “deleted” and are removed from the
Navigator. However, the data still exists physically.
It is displayed as follows:
4.2.2.1 Definitions
Superordinate, preceding: the working layer was there “first” and passes on
its information to the following working layers.
Subordinate, following: the working layer takes over (“inherits”) the informa-
tion from the preceding working layers.
Equal priority, parallel: the working layers have a common predecessor.
Released Area
Released Area
Only now is a physical copy of the object actually created. This difference
between objects that are only displayed (inherited) and objects that actually
exist in the working layer in the form of a copy must be taken into consider-
ation, primarily when copying or exporting (working layers).
• Object is not modified in the working layer: the working layer takes over
(inherits) the modified object in the released area.
If one of the objects beneath a node is displayed in color, the complete path
(up to the first level of the project hierarchy) is also displayed in color. In the
release database these nodes are displayed in a light blue color. The hierarchi-
cal information is computed from the database. If there are too many object
histories for one working layer, it will take more time to compute the path.
4.2.2.3.2 Deleting objects in the working layer (hard deletion / soft dele-
tion)
Objects that have been deleted in the working layer can be divided into two
groups:
• The deleted object was created in the working layer. In this case the object
is physically deleted (“hard deleted”).
Please note: The object is also hard deleted in all the succeeding
(subordinate) working layers that it had been checked into.
• The deleted object originally came from the released area. In that case the
object was checked in as a result of the deletion (if that had not been done
already):
Working layer 1
X
Released Area
This might at first sight seem contradictory, but it is necessary from a techni-
cal point of view. It is precisely the objects of the released area that should not
be edited in the working layer. Consequently in all cases the object must be
separated initially from the released data, meaning that it is to be checked in.
The object that had been checked in is now given the “deleted” property and
is no longer displayed. An object of this type is also called “soft deleted”.
An object can only take the “soft deleted” property when it is in a working
layer. A hard deletion is always done if objects are deleted in the released
area.
If, however, a working layer is released into the released area, then any
objects with the “soft deleted” property can be transferred to the released area.
In other words: While the released area can contain “soft deleted” objects,
these objects must always originate from subordinate working layers.
4.2.2.3.3 Restore
If the working layers display is activated, the | RESTORE command is offered
in the Navigator when an object that had been checked in is selected. It is only
available for WO administrators.
This object and all the objects underneath it are deleted (“hard deleted”) and
the corresponding information is removed from the preceding working layer.
This also applies to the project root (the blue globe): in this case all the objects
in the Navigator are deleted and are removed again from the preceding work-
ing layer.
Exceptions:
• In the Layer-independent functions, P. 4-11 section a number of areas were named
that work completely independently from the working layers. These areas
are of course not affected by the | RESTORE command (because they cannot
be modified in the working layer).
• In addition, there are the following areas that can be modified within a
working layer but are not affected by a | RESTORE command:
– systems of units,
– document types
4.2.2.3.4 Release
A release can also be regarded as a reduction in the amount of information.
• Option switched on: The objects remain “soft deleted” and thus exist
physically.
• Option switched off: “Soft deleted” is toggled to “Hard deleted”. The
objects are physically deleted.
See SECTION 4.5.4: HISTORY.
4.2.2.3.5 Collisions
Information can be lost as a result of collisions.
Definition of a collision: An object that had been checked into the working
layer was edited again in the preceding working layer. In other words, the
object that had been checked into the working layer is no longer based on the
most up to date information in the preceding working layer.
There are only two possible ways to resolve a collision:
• Restore to the object
In this case the information of the object is lost.
• Release of the working layer
In this case the information of the preceding object is lost.
Collisions are displayed at the object level and not at the level of the working
layer. If an object was not checked into a working layer, then no collisions
will be shown if the object is modified in the preceding working layer.
Instead, the modified object is displayed. The collision is displayed in the
working layer into which the object was checked in the first time.
Special case: Due to the hierarchical structure of working layers, it is possible
for an object that had been checked into a preceding working layer to be
edited again, or in other words, checked in again. In that case the collision is
only displayed for the first object that had been checked in.
In this case there are the same relationships between Working_layer 1 and
Working_layer 2 as those already introduced above for the “Released area ->
Working_layer 1” case.
From a technical point of view, the new working layer is initially blank and
inherits the objects, which it displays as “unmodified objects”. But now there
is in addition the case in which this inheriting can “reach through” multiple
working layers:
Working layer 2
Working layer 1
Released Area
Starting out on this basis, objects are then once again modified, deleted or cre-
ated in Working layer 2.
Base project
You can create and use working layers in the base project. In this way you can
elegantly further develop the base project. However, at the present time plan-
ning projects can still only use as the base project the released stock of data of
the base project. It is not possible to insert a working layer within the base
project into a planning project as the base project.
Interactive Reports
Interactive Reports support working layers. In this case all the changes from
the preceding working layers are taken over each time that a report is opened.
When a working layer is released, all the changes in the working layer are
transferred into the preceding working layer. If the working layer display has
been activated, the objects that had been placed on the report are shown in the
appropriate colors (depending on the Comos module).
In addition, you can also use the following project option:
Layer-independent functions
There are functions that are completely independent of the working layers.
Changes to these areas therefore take effect at once in all the working layers.
• Project properties
• User administration
• Run cases
• Languages
• Time stamps
• Individual objects
In very special cases objects, and also planning objects, are generally
excluded from the working layers. Important examples:
– System project, @PROPAR: That is the variable part of the project
properties. Since the project properties are layer-independent overall, this
also has to apply for objects as well.
– Device with name “@Project” and class “Document group” (and all the
objects underneath it). This planning object is part of DQM when you
work with the redundant document administration.
– Device with name “@Groups” (and all objects underneath it). This
planning object is part of the user administration. Since the user
administration is layer-independent overall, this also has to apply for
these objects as well.
Tools
• Information list
Shows everything from all working layers. This also means that if a
reference is made to objects that are in other working layers, then these are
“not found”, so to speak, and are shown with a black cross.
• Support: Project utility programs
The global test relates to all objects that are “visible” in a working layer, and
thus includes objects that had been taken from preceding working layers. It
is not possible to test only those objects that had been modified in the
working layer.
• Database reconciliation
Relates to the database, and thus the released area and all the working layers
of all projects.
• All other tools
Relate to the working layer. This also applies to the project directory
matching.
S1 Level 2
S11
S2
S22
S23
S24
All the base objects for the levels of the working layer are collected in the
@WOLevels branch. An example for @WOLevels can be created by updating
the database (see SECTION 49.3: DATABASE ADJUSTMENT):
This example thus works in terms of four levels of working layers, but it could
equally well be more as well. In the above examples the base object belongs
to “1 Valid planning status”, or to the first subsequent level of the
project. The number must be used as the name, and the description, which in
this case is Valid planning status, can be any that you wish.
Control options
• Text masks
The text masks of the base objects control the names of the new working
layers.
• Attributes for access administration
Controls access to the working layers, see SECTION 4.4.4.1: GLOBAL CONTROL OF
LEVELS OF WORKING LAYERS.
In the basic state the working layers are displayed in the form of a tree struc-
ture that the user can select from. If the @WOLevels base object exists, then the
List tab appears in the working layer selection as well.
Specification tabs and attributes can be created in the usual way in the base
objects of the working layers. These attributes are made available to the user
on the List tab and can be made visible in the form of new columns. For exam-
ple, you can filter or sort the list by means of these new columns.
If the user has changed the display of the List tab in this way, he can also save
his own settings. The information is stored in the following base object:
@System |@Profiles... |WOList
The administrator can also create a default for the display. This default is cre-
ated in exactly the same way as a user creates his own personal form of dis-
play. See SECTION 4.5.1.3: “LIST” TAB.
Activation
Comos menu | EXTRA | WORKING LAYERS/HISTORY | MANAGEMENT
• Import
Automatically creates a new working layer and imports the Access database
there. The folder with the documents is also included, of course.
Multiple import:
In principle, each import operation creates a new working layer in the target.
Thus two working layers would be created at the target if a working layer
was imported twice. The second import “does not overwrite itself”, as you
might assume.
Exception: If a working layer is imported and then released, the working
layer no longer exists at the target, but the objects still do (in the preceding
working layer). If the working layer is imported again in this case, all the
objects that were not modified (time stamp not changed) are not imported
again! In this case the new working layer created in the target by the second
import operation would have significantly fewer objects.
Detecting collisions:
If a working layer is exported and reimported later, collision detection then
shows whether an object that is being reimported had been modified in the
interim in the preceding working layer.
• Delete
Deletes a working layer.
• New , Property
Creates or modifies a new working layer or deletes it. The properties are:
Name : Any, but it must be unique.
Description : Any.
Documents can possess external files that are stored outside the Comos data-
base. When a working layer is created, the external files are copied as well as
required. To this end there is an “Overlays” directory with sub-directories.
Example:
Comos\Test.mdb
Comos\Test\<Project name>\Overlays\WO<sequential number>
The sub-directory is copied again when exporting a working layer in a
“Test2” database:
Comos\Test2.mdb
Comos\Test2\<Project name>\Overlays\WO<sequential number>
See also SECTION 4.3: SCOPE OF ACTION OF WORKING LAYERS.
4.4.7 WO-Administrator
To release, delete, create, import etc. working layers you need specific rights.
These rights are sometimes also called “WO-Administrator“. As “WO-
Administrator you need to have the following object rights for the working
layer object in question:
• Write
• Delete
• Create
• Read completely
• plus all the rights of the @WOLevels base object that are controlled by
specifications:
Tab SYS , specification ProjectManagement .
– Specification on:
Level can be administrated if you have
Meta right Project management or
Function rigth Project options .
– Specification off:
Level can be administrated if you have
Meta right Project management or
Function rigth Project options or
if you are the owner of the working layer (i.e. the one who created the
working layer).
4.5.1.1 Activation
• When logging into a project with working layers
When logging in, the Select working layer dialog window is combined
with the project selection window. However, the Select working layer
dialog area only appears if a working layer already exists somewhere in this
project or if the base object @WOLevels exists.
Please note: if you are the administrator or if you possess the relevant rights
for layer management, then one of the expanded mouse menus is available
for your use, see SECTION 4.4.5: MANAGING WORKING LAYERS.
• Select the project root, | CHANGE WORKING LAYER context-sensitive mouse
menu.
Display additional
If list display of the working layers has been switched on through @WOLevels,
you can then change this list display individually: sorting, filtering, making
new columns visible, etc.
To do this, a Specification tab with attributes must first be created in a sub-
object of @WOLevels. In the next step you select the appropriate level in the
List tab. Then click on a column header in the list and select | NEW
| ATTRIBUTE... In the following dialog window you select one of the new attri-
butes that you had just created.
If working layers are used in Comos, the way in which deleted objects are
handled changes: objects are no longer deleted physically but only logically
(“soft deleted”):
• The deleted objects cannot be used but still exist physically.
• Deleted objects are not visible in the default display mode of the Navigator.
• Deleted objects retain their red text in the “Working layer display” and
“History display” displays but remain visible in all interfaces (Navigator,
queries, etc.). (The colors can also be changed by the user as desired.)
Exceptions:
If the | RESTORE command is used, then previously modified objects are phys-
ically deleted.
The objects also remain soft deleted when a working layer is released into
another working layer. The only alternative is when a working layer is
released into the released area (Level 0 (zero)).
Collisions
Definition of a collision: An object that had been checked into the working
layer was edited again in the preceding working layer. In other words, the
object that had been checked into the working layer is no longer based on the
most up to date information in the preceding working layer.
See SECTION 4.2.2.3.5: COLLISIONS.
Restore
The | RESTORE command is offered in the Navigator when an object that had
been checked in is selected.
The | RESTORE command is offered in the Standard tables dialog window.
See SECTION 4.2.2.3.3: RESTORE.
4.5.3 Legend
To set the colors for the working layers and for histories perform a right-click
in the Navigator and select the | LEGEND command. For more information go
to SECTION 10: DISPLAY IN THE NAVIGATOR.
This is done by clicking on a color box next to an entry. The Colors dialog
window opens.
Colors that are saved like that are saved as personal settings on the base object
tab. For more information on personal settings go to SECTION 1.6.1: PROFILES.
4.5.4 History
4.5.4.1 Overview
Area affected
Aim of the project history: Project-oriented tracking of the release of all
Comos objects.
The project history provides an overview of the changes made within the
working layers. The history can thus only be used if working layers have also
been used.
The history consists of the following areas:
• Automatic history entries on release into the released are:
History entries permanently store the various editing states of the data, but
only if it concerns validated data. According to the working layer model in
Comos, there are therefore only history entries for Level 0 (zero), this being
the released area. The released area includes by definition the validated data,
while the subsequent working layers can only include data that is still
incomplete or has not been checked yet.
• Automatically running object history:
Creation of entries in the object histories also while work is being carried
out.
This is controlled by means of an object property that is transferred to the
elements in the planning area. The Object Debugger is used to this end.
Enter the following statement into its script window:
Object.SetObjectOverlayBehaviour 3, TRUE
The property applies for the object and all subordinated objects solely for
the current layer (respectively the released area). If the object is to be
monitored in another layer, the monitoring property must likewise be
activated there at the object.
Again, the backup copy only contains own data. Information that is only
inherited is not saved in the copy. This applies both to inherited attribute
values and to information that is taken over by means of pointers.
A history data record is created by activating the monitoring. In the interface
of this data record, the “History monitoring” column has the entry
“activated”. Once the monitoring has been activated, all changes made to
the existing data lead to the production of history data records (backup of
the data before the change). It is possibly to precisely track from the history
within which period a stock of data was valid and who had edited it.
Display
Open the object history: context-sensitive mouse menu, command “Object
history“:
The above example contains the released area and a working layer. The acti-
vation point in time of the history monitoring can be found at any time.
Buttons (from left to right):
• Layer limiting
[ALL UNDERLYING LAYERS]
Current layer plus all preceding layers (released area first, etc.)
[CURRENT LAYER]
If there is no entry in the object history of this object in one of the dis-
played layers, then no entry is displayed for this layer, not even the cur-
rent status.
• Properties limiting
[ONLY DIFFERENT VALUES]
Only changed properties are to be shown in the columns (description
here)
[ALL VALUES]
Show changed and unchanged columns
Otherwise, the dialog window uses a query and functions in the usual way.
Meaning of the entries in At/From , To
It is possible to determine from the At/From and To columns when an editing
status of the object was applicable.
In principle, the From column can never be blank. There is always a point in
time at which the object was created, modified or taken into the history man-
agement.
The To column is blank in the following cases:
• If history monitoring has been activated.
• If history monitoring has been deactivated (this case is not given in the
above illustration).
• In the last entry of an object for a layer. This is the currently applicable
status.
Please note: The object history of an object does not automatically reveal
which specification values of an object have changed. To find out about these
changes, open the object history of the specification object: Either open its
mouse menu in the navigator, or perform a right-click on the label of the spec-
ification in the properties window of the planning object (not on the entry
field!) and select the command | OBJECT HISTORY.
• In the Properties window of the planning objects the history of the value is
made available for the attributes in the mouse menu.
• Deleted objects are not deleted physically but only logically. See Deleted
objects “Soft deleted”, P. 4-20.
The time stamp appears as the default text. However, any other text can be
input, since the time stamp is written to the history entry in any case. This text
is written to the backup copy together with the time stamp.
The backup copy contains all own data, This means that information that was
only inherited is not saved in the backup copy. This applies both to inherited
attribute values and to information that had been accepted via pointers.
There is an overview of all the history entries, and thus of all the backup cop-
ies, in the “Working layers/History management ” dialog window.
History entries can also be used in the history display.
Activation
Comos menu | EXTRA | WORKING LAYERS/ HISTORY | MANAGEMENT
“History” tab
This tab controls the history display in the Navigator. The | HISTORY DISPLAY
mouse menu is blocked as long as a comparison point in time has not been set.
Once a comparison point in time has been set, all the objects are given colors
in accordance with the Not changed / Changed / New / Deleted scheme.
Changes since index :
Klick on an index above.
Changes since :
Any desired object can be dragged into this field. The time stamp of this
object is evaluated and the date of the last change is taken from it for use. It is
also possible to drag an object into this field from the list of history entries. In
this case the current state of the working layers is compared against the
backup copy of the history entry.
Fundamentally speaking, however, the history display can also be used with-
out history entries. In that case an object of the Navigator is used. The objects
are then given the appropriate status colors by comparison with the point in
time at which this object had been created.
See SECTION 4.4.5: MANAGING WORKING LAYERS.
FDA
This license allows history management for working layers. The FDA license
controls:
• |Extra |Working layers/Histories |Management
Project properties, Options tab, “History management” option.
Activation
Comos menu | EXTRA | WORKING LAYERS/ HISTORY | OBJECT STATUS
Application
This dialog window displays all the important information for an individual
object with respect to working layers. When the dialog window is opened, the
object that was currently selected in the Navigator is evaluated. Another
object can be set for evaluation by using drag & drop.
Working layer overview , History : these two fields display exactly those
object colors that would appear in the Navigator if the corresponding display
were to be activated.
5 Project management
If you right-click with the mouse in one of the column headers, you can sort
or filter the dialog window.
Open project
A database can include one or more projects, but only one project can be open
at any one time. Which projects you can see also depends on the rights allo-
cated to you.
Select a project type from within the Open Project dialog window, then all
the projects of this type for which you have read rights as a minimum are dis-
played.
Mark with the cursor the project that you wish to open. Double-click on it or
press the [OK] button.
The opened project is displayed in the main window, the Navigator.
The Project properties dialog window opens, see also SECTION 5.5: THE PRO-
JECT PROPERTIES.
On the General tab, the drop-down field Type always has the Planning
project type as the default input. If necessary, you must change from here to
Base objects, etc.
Copy project
A project can be duplicated within the Open Project window with the mouse
commands | COPY and | PASTE. The user is asked whether the document revi-
sions should be copied?
Only with SQL Server: fine control when copying a project
If a project is to be copied in the Open Project window, a query is made as
to the priority of the action. Effect: more or fewer resources are allocated to
the copying process.
Delete project
This right is not coupled to the Administrator rights. Anyone may delete a
project as long as he or she possesses the DELETE right to this project.
The project rights are opened by clicking on the globe and pressing
<Ctrl><A>. See also SECTION 6.6: MANAGING RIGHTS: OBJECT MANAGEMENT.
Please check first whether you have the necessary rights for this operation for
both databases. When a project is exported, the user is queried as to whether
or not the users are to be exported as well.
The | EXPORT function should only be used for base object projects. The
| IMPORT function is more efficient for planning projects, see the next section.
The source database from which the project is to be imported can be selected
in the following dialog window:
Please check first whether you have the necessary rights for this operation for
both databases.
The project that is to be imported is selected in the second step and a new base
project is allocated:
When a project is imported, the user is queried as to whether or not the users
are to be imported as well.
If an project is transferred from one database to another, all the objects must
be “grabbed.”
In addition, the base project must be reset. All the objects are likewise
“grabbed” when the base project is reset.
For that reason the | IMPORT function is more efficient for planning projects
than the | EXPORT function, since here the two steps of “Transfer” and “Reset
base project” can be done in one pass. The objects only need to be “grabbed”
once.
If the| EXPORT function is used, all the objects need to be “grabbed” twice,
since the two steps are separate here. The difference in time between | IMPORT
and | EXPORT can be very great, especially with big databases.
5.3.4 DBSync.exe
5.3.4.1 Purpose
The program “DBSync.exe ” is a DOS-based program working at the system
level that is used for the synchronization of Comos databases.
Call:
• Open a DOS window
• Base directory Comos \bin\
• DBSync.exe. [mandatory parameters]
In functional terms, DBSync is comparable to using a combination of
ExportDB and ImportDB . The combination of ExportDB and ImportDB is
safer and more efficient, nonetheless, ExportDB /ImportDB can only be used
if there is online access to both databases (for example, via a permanent line).
DBSync does not require online access of this type.
DBSync.exe may only be used by authorized administrators with
system experience. Incorrect use can lead to data inconsistency or
even a loss of data.
DBSync is not able to meaningfully synchronize documents. There
is a risk of a loss of data if DBSync is used on projects in which
there are planning documents. We there emphatically recommend
that DBSync should only be used for the synchronization of base projects.
Any use going beyond this is entirely at your own risk.
DBSync may only be used if the databases to be synchronized are not being
accessed online.
We recommend that you create a directory of its own for each target database
and then place the relevant DBSync.ini in this directory.
Structure of DBSync.ini
SOURCEMailAdr = "[email protected]"
TARGETMailAdr = "[email protected]"
SOURCE_DB = "C:\Ccc_Test\Step2\Source\ComosPT.mdb"
SOURCE_ID = "A"
TARGET_DB = "C:\Ccc_Test\Step2\Target\ComosPT.mdb"
TARGET_ID = "B"
USER = "@SETUP"
ZIP = ""
[Data]
PROJECT = "A0QHWDIFM8"
PROJECT = "A17VG71WMB"
$
[Messages]
SUBJECT = "Synchronize DB"
LINE1 = "Hello Mr. User"
LINE2 = "please synchronize our databases"
Line 1, line 2: Mail address of source and target. Please note: Do not confuse
the source and the target at the various locations! You might think that the
location that is the source from one point of view is the target from the point
of view of the neighboring location. But it is not so, the source is always the
location at which the synchronization is begun.
Line 2: If this involves an Access database, this line includes the source data-
base with full pathing details.
The following entries apply for other database connections (to be set in the
apostrophe area in DBSync.ini):
Line 7: User name. This user must likewise possess administrator rights
within the database.
Line 8 ff: Projects to be synchronized.
In each line there is the SystemUID of the project to be synchronized or
exported, as applicable. A new line must be used for each project (“Return”).
The area in which the projects are located is terminated by a ”$” (without
apostrophes in DBSync.ini).
Following line: Header text of the mail
Following lines: In the following lines is the text of the mail.
Please note: The order of the lines is not important, but instead the relevant
keywords at the beginning of the line are important.
The “stamp” is then set in the original Comos database, meaning that the DB
identifier of the target database is entered in the “SYNC_FIELD” column as
applicable. This stamp provides the information that this data record has been
matched with a target database.
Please note: Technically speaking, no matching has taken place yet
at this time. The matching is broken down into two steps for techni-
cal reasons, and the completed matching has already been entered in
the source database before the second step - this being the actual matching -
has actually taken place. The working copy (the Access database that was cre-
ated) must be used on the target side as well for synchronization, otherwise
there is a risk of losing data.
Do not confuse the order of the working copies! If you call up DBSync several
times one after another and thus also create multiple working copies, then the
working copies must be read into the target in the exact order in which they
had been created.
If DBSync is called up several times one after another, and thus several dif-
ferent target databases are to be synchronized, then the relevant DB identifier
is inserted. If there is the text “XBD” in a data record in the “SYNC_FIELD”
field in the source database, then the data record is first matched with a target
called “X”, then with target database “B” and finally with target “D”.
Each change in the data record in the source database means that the field is
deleted (reset).
Further action
Optional: The working copy is packed in the next step.
The working copy is then sent as mail to the target side. The mail address is
taken from the ini file.
Further action
The Access database is packed (optional) and sent as mail to the source data-
base side.
The first working copy is deleted.
Further action
The second working copy is deleted.
On the target database side, the packed file (e.g. “BA.zip”) must be in the
same directory as where program DBSync.exe is located. The working copy
is automatically unpacked after the program is called up.
The target database stipulated in the ini file is synchronized with the working
copy. The table entries of the target database are stamped when doing this,
meaning that the DB identifier of the source database is entered in the
“SYNC_FIELD” column as applicable.
Further action
The working copy is deleted.
Differing from parameter 2, there is no retrospective matching of
target and source, and consequently no second working copy of the
target database is created.
This method is very useful if development work was done on the source data-
base side and only those changes need to be made available on the target data-
base side.
5.4.1 Introduction
Please note: the mechanisms described below only apply to joint work on
attributes (specifications). If, for example, the Label is changed for an object
that has been opened jointly, the other user is not informed of this and no color
labelling is done either. This restriction prevents the user from being
“flooded” with information.
The Navigator is of course updated after every change.
Global test The project is checked for defective objects. Any erors
that are found appear in the error list that is opened auto-
matically. This list is displayed in the Object test dialog
window. Although the Object test dialog window is
only used for display, the Global Test and the
| ADMINISTRATOR | OBJECT TEST functions are not identi-
cal: the Global Test has the peculiarity that it also finds
objects that no longer have an “owner”. In the case of the
| OBJECT TEST function a search is made hierarchically
downwards from the project, with the result that objects
without owners are not found.
Delete “pick” Deletes the entries in the pick list of the Navigator.
lists
Project Changes the project directory. A new directory is not
directory selected, but the existing directory is renamed instead.
The name and the description in the first field appear in the Navigator. The
second and third descriptions are displayed as well in the Open project win-
dow.
Type :
• Planning
• Base object
• Templates
• System
The dropdown field Type is only activated if the object right “Write ” and the
function right “Project options ” are available for the project.
Data from other projects can be used by linking with other projects.
Project precepts
Defines the base object (i.e. the layout objects) for the project.
Generally @J Project .
The base object script of the project also comes from the base object. Script
functions can as such also be run from a base object, for example to extend
the context menu via OnMenuCreate.
You can drag a new base object into this field and as such change its defini-
tion.
Normal - M 1
The devices are numbered
sequentially
Device Sequential
prefix number
ID char
Label / Path - 1 M 1
(= key letter / path) The
page number automatically
precedes it. Device Sequential
prefix number
The labelling of the devices is affected by factors other than this option. An
evaluation is made as to whether a device is under a different unit than the one
given in the report:
But this information does not depend on the option and can appear in both the
above cases.
5.5.3.4 DisplayValue
Zeroize decimal places
The number of post-comma positions a numerical attribute possesses, can be
specified in the units.
By default, these post-comma positions will be displayed even if the actual
value has less post-comma digits.
In this case, the post-comma positions will be filled with zero digits.
If this option is switched off, then these post-comma positions will not be
filled.
Potential tracking is only done for types “ELO/C&I”, “single line” and
“Fluid.” The reason is that potential are not relevant from a technical point of
view for all other types of connections, and thus time-consuming potential
tracking is also not necessary in such cases.
Option off: The „New Object“ could use the same name as Object X.
Option on: The „New Object“ gets a different name as Object X.
5.5.4.1 Detail
“Implement request” replaces objects :
This option determines whether an implementation is only to be set as a
pointer to the request object or whether the request object is to be deleted.
Display relative label:
This option determines whether the texts that are output by functions such as
DevUnit are to be displayed as before or as AliasRelativLabel.
ANSI standards:
This option determines whether ANS standards are to be the basis of the dis-
play.
Regard rotation of *V*-variables
This option refers to the "Additional symbols" or "Sub symbols" technique,
see SECTION 45.4.2.4: BASE OBJECT.
The option determines how the integrated sub symbols are to be handled when
placing the main symbols.
„Regarding rotation of *V*-variables“ on: The sub symbols will be rotated in
the position of the place holder text.
„Regarding rotation of *V*-variables“ off: Sub symbols will always appear
with horizontal base line.
Implementation name :
This gives the key term by which the implementations of a PFD are labelled
as being together (system setting). See the PFD section for more detailed
information.
Disable automatic generation of Comos connectors:
Determines whether or not a new connection in the report automatically gen-
erates new connections in the database as well.
Always create a new name at unit assignment:
Determines whether or not new object names are always generated.
You can find the reference base objects on the Base objects tab under
@1EA Catalog EE . This concerns:
• Page references (pair reference, pair reference with device tag)
• Cables
• Potentials
(“References” should not be taken literally in the case of potentials, since
they “refer” to themselves in a manner of speaking and thus make it possible
for a potential to extend over several pages.)
The labels can be turned on or off on both sides as desired by using the mouse
context menu.
Sort documents
Determines in what order the documents are addressed internally. (This has
nothing to do with the form of display in Navigator.) The internal sequence
determines in turn which documents are displayed as the next or previous in
the corresponding diagram cross-references.
The “sort documents” option does not change anything in the data or the con-
sistency of the data within Comos. This option is solely used to allow the user
to page quickly back and forth between the individual documents in the doc-
umentation that is output. The documents are printed out in the order stipu-
lated by the user within Print Manager. The cross-references to the diagrams
should now be such that the user does not have to always “jump back and
forth” when paging up and down but can quickly get to the desired diagram.
If the parameter is changed, this has two effects:
• Objects that run across multiple documents can have a label at the edge
showing on which document this object continues on. An example of such
objects is provided by potential references: potentials often extend over
several documents. If the Sort documents option is changed, a different
document will be displayed as the next in the series in the labels at the edge.
(Potential references are created automatically if the same potential object
is used on different diagrams.)
• The parameter is also taken into consideration in the output of the next and
previous pages when Interactive Reports are printed. This is a label on
diagrams that states which document is the next in the sequence and which
is the preceding one. The same applies here: If the Sort Document option is
set accordingly, then a different document is displayed as next / previous for
these labels.
Please note: the parameter Sort documents does not change the order in
which the documents are printed! This sequence is determined by Print Man-
ager.
Reference not The text that had been entered in this text field is
resolved displayed if a reference still has no target.
Use complete This option has the effect that the complete owner
structure name structure is displayed in the reference.
Remove document When the reference evaluates the document groups
group (e.g. in Reference via reference object ), it is
possible to set here whether the Name document
group is to be displayed as well.
Delimiter unit / One or more delimiters.
location to sheet
Delimiter sheet to One or more delimiters. (The path is the horizontal
path component of a standard sheet.)
Delimiter path to One or more delimiters. (The zone is the vertical
zone component of a standard sheet.)
Reference with Determines when the name of the unit is to be
unit named in the reference.
Reference with Determines when the name of the location is to be
location named in the reference.
Table 5-1: Project parameters for the display of references
These properties are described together with language translation for the
objects in a chapter of their own, see SECTION 42: LANGUAGES (LOCALIZATION).
The name of the selected run case is displayed in the Navigator at the top level
next to the project designation.
In addition, the run cases can be switched by means of their own dialog win-
dow. Open this dialog window by clicking on the project and selecting the
| RUN CASES mouse command.
6 Rights Management
Databases could use own passwords. See SECTION 6.9: RIGHTS MANAGEMENT FOR
DATABASES.
6.1.2 Meta-rights
In Comos there are rights that go beyond the “normal” rights management.
6.1.2.1 Administrator
As is generally the case, that is the name for the user who possess all the
rights. Regardless of how the rights of a user are otherwise granted: if the
administrator right has been allocated to the user, the user may manipulate the
data in all possible ways. An administrator automatically possesses the
“project management” right as well. The following tasks and tools are only
available to administrators:
• Menu | ADMINISTRATOR | SYSTEM
– Support
– User management
User management covers the options for creating and editing users and
user groups.
In addition to user management, in Comos there is also a second option
for granting rights, this being via object management. Within object
management there is a “grant rights” right for this very purpose. In other
words, rights can also be partially allocated even without going through
user management, but this only relates to a specific object in which you
are allowed to do that.
– Database reconciliation
– Synchronize project folder
• DBsync (tool at the bin-folder)
• ExportDB (tool at the bin-folder)
• ImportDB (tool at the bin-folder)
The usable functional scope varies according to the license in use. The license
limitations state which rights are available for a particular license.
This also applies to administrators. If access to Comos is made via the view-
ing license, then of course even an administrator is not allowed to make any
write accesses. The administrator has in this case all the read rights and also
access to all the working areas, but no more than this.
If all the write rights are missing, the interface of Comos can behave
strangely. A number of user interfaces presuppose that you have unrestricted
write rights and can no longer be used, or only with restrictions, without the
write right. An attempt was made in such interfaces to simulate an access that
resembles a write access and so to make operation appear uniform throughout.
However, we cannot exclude the possibility that individual, very specialized
components can only be used with restrictions with a viewing license.
In Comos there are three different areas in which rights are granted: object
rights, function rights and working areas.
Inheritance of rights
Object rights (but only these) are inherited. See SECTION 6.2.1: INHERITANCE IN THE
CASE OF OBJECT RIGHTS.
If actions are undertaken in Comos, then there are always two participants: the
user who is doing something, and the data or components that are affected by
the action. Thus you always have two options to allow a user to do something
within an action:
• You can allow the user to do specific things.
See SECTION 6.5: MANAGE RIGHTS: USER MANAGEMENT.
• You can inform the data or components who is allowed to manipulate them.
See SECTION 6.6: MANAGING RIGHTS: OBJECT MANAGEMENT.
To all intents and purposes the two methods are just as good as one another
and it is purely a matter of preference or the amount of work involved that
determines which one is to be used.
Let us assume that a user had no read rights at all for an object. Then he or she
would also not be allowed to see this object in drawings, parts lists or other
documents. However, this would mean that a parts list or other documents
would only be complete and correct if the user of this document possessed all
the read rights for all the objects involved.
But since the situation always arises within complex CAE systems that the
read rights of the users are not completely up to date, incorrect documents are
often produced.
This cannot be allowed. Documents must always be correct, or to put it in
another way: either you get no document at all or you get a correct document.
But it cannot be allowed that incorrect documents are output. For that reason
the read right is not evaluated in the case of documents: if the user has the right
to open this document, then it does not matter if he or she also possesses read
rights for all the objects within the document.
Setting
With the exception of the project, all objects start out with the Read comple-
tely right switched on for each user. The effect is that users can in particular
read all the base objects (and thus use them) without the administrator needing
to explicitly give users read rights for the base objects.
6.2.2.2 Write
• At the project level
To change the General tab and all tabs inherited from the project base
object. All other project properties are controlled via the Project options
function right.
The entry for Current user may be switched over on the Languages tab
within the project properties without needing to possess write rights for the
project.
• At the object level
To modify the object.
6.2.2.3 Delete
• At the project level
This right only takes effect within the project if you also possess the Project
management right. If you possess both rights, you are permitted to delete the
project within the project selection window.
6.2.2.4 Create
• All objects
To create new objects underneath this object.
Write rights are required to modify these “blank” new objects.
All actions that do not involve the creation of any new Comos objects are
unaffected by this. Thus you can draw circles and lines on a report or move
objects, etc.
This right has no effect with all other objects, since revisions are created
exclusively for documents and document groups.
This right is by far the most comprehensive of the function rights. The right
represents an intermediate level between the administrator and the normal
user.
Please note: The base data function right can also be allocated within a plan-
ning project and then relates only to this one. When the term “base object” is
used in the following, it includes within itself all action objects.
The right has the following effects:
• Navigator display
– All objects are visible on the Base objects tab within the Navigator.
(All the system branches are greyed out if you do not have this right.)
– All the text components are visible. (All the texts that have a name
starting with “@” are greyed out if you do not have this right.)
• Context-sensitive mouse menu Navigator | New
– The | New menu command is available for the base objects of this
project. In other words: if you are within a planning project, then the
| New menu is not available in the case of objects that were displayed
from the base project. You can thus create local base objects within a
planning project with this right.
– | New | New query
– | New | New standard import
• Context-sensitive mouse menu Navigator | Delete
– You can delete local base objects within a planning project with this
right.
• Context-sensitive mouse menu Navigator | Navigate
– (In the case of planning objects) | Navigate | Object in base project
– | Navigate | Inheritance source
– Context-sensitive mouse menu Navigator | Template
– Neither the | TEMPLATE PROPERTY command nor the | OPEN DOCUMENT
command are available in the original document.
• Context-sensitive mouse menu Report | Navigate
For planning objects of the “Device” class if this had been prepared for prod-
uct data:
• Icon bar: Create base object product data
• Allocate base object product data (“device selection”)
Attributes (specifications) can also be edited without this right.
There is a green key and a red key in the icon bar within the properties window
of planning objects of the “Device” class. The “lock object” function right
controls who may use this switch and thus who is permitted to “terminate”
planning objects, document objects or document groups. The following func-
tions are blocked in an object that has been terminated:
• Editing of the properties window, including changes to the pointers (base
object, unit pointer, location pointer, implementation, etc.)
• Creation of elements
• Deletion
(also forbidden to administrators, who can otherwise continue to use all the
other functions)
• Moving, cutting
• Revision of the object
• Setting the status (checking is still possible)
Connectors and elements that have already been created are allowed to be
edited.
Terminated objects can still be copied. The copy is likewise blocked.
A locked document object also blocks the report against being changed.
Object queries have their own blocking functions.
A number of properties can be terminated in the base object (name, label,
description).
The base objects (tabs, attributes) are always allocated to at least one working
area.
Working areas are not identical with the levels in interactive reports, which
are likewise often referred to as “layers” (see @GRAFICS | @LAYERS).
The working areas must have been created in the base data if they are to be
available to all:
@System | @D Data | @Layer Operating ranges
Thus additional objects that have a name with a letter between A and Z are
created underneath @Layer:
A layer object corresponds exactly to a working area. All the defined layer
objects are then available for selection in the Working area dialog field of
the base objects (tab, specification/attribute).
The working area is also evaluated for the base objects of documents! In other
words: the document is not visible in the Navigator if it belongs to a “foreign”
working area.
Properties window for an attribute (a specification), General tab:
The Working area without restriction option has been set in the default set-
tings. Ignore this option, it will be adjusted later automatically.
• Mark one or more of the working areas with <CTRL> or Shift and right-
click on the selection.
• Select ON or OFF. (The Working area without restriction option is
switched off automatically if at least one working area has been set to OFF.)
The list can be sorted by clicking with the left mouse button on the head of the
one of the columns:
Click on the Working area without restriction check box if you wish to
reactivate all the working areas. If this option has been activated, the user also
automatically receives all rights for all working areas created in the future. If
this option has been deactivated, the user has no rights for all working areas
created in the future.
A working area is created if you input in the Working area dialog field a let-
ter that is not yet included in the list:
This local working area is then included in the list of working areas when you
click on the [...] button:
As soon as you switch off the local working area in the list, the local working
area disappears again from the list and from the dialog field.
For technical reasons, the local working areas are deleted in the window when
changing the “Working area without restriction“ option. If you turn the
switch off again, you have to input the local working areas by hand once
again.
The effect in this dialog window is the same as if fewer working areas had
been allocated to the user account. You can thus quickly check how the data
will be displayed for a user with fewer rights regarding the working areas.
Working areas are allocated via the user management, see SECTION 6.5.2.4: THE
WORKING AREAS TAB.
The Type field is located in the properties window for connectors. It is stip-
ulated within the base data which working areas the type of connector should
belong to.
A base object with the fixed name @Connector is created for this purpose in
the base data under the base object @Layer underneath the relevant base
object of a working area.
A base object is created underneath @Connector for each type of connector
allocated, the name of which is exactly the same as the Comos constant for
the Type of connector. The Comos constant can be found by selecting the text
in the Type field of the connector properties window; you can find the Comos
constant on the Connectors tab in the Type column.
Nonetheless, all rights can be withdrawn from the above two profiles.
• The relevant own user profile
If it were possible to edit the user profile that you had used to log in at that
time, it would cause massive problems due to inconsistency.
User management, User tab, mark a user profile, right mouse button
| PROPERTIES
You can input the working areas directly into the dialog fields if you know the
letters off by heart. Alternatively, click on the [...] selection button and select
from the list of working areas:
The Working area without restriction option has been set in the default set-
tings. Ignore this option, it will be adjusted later automatically.
• Mark one or more of the working areas with <CTRL> or Shift and right-
click on the selection.
• Select ON, OFF or READ ONLY. (The Working area without restriction
option is switched off automatically if at least one working area has been set
to OFF or READ ONLY.)
The list can be sorted by clicking with the left mouse button on the head of the
one of the columns.
Click on the Working area without restriction option to reactivate all the
working areas.
The Groups tab consists of two lists: the groups are shown in the upper list.
The lower list is to provide information on which employees are in the rele-
vant group that had been clicked on above.
Editing is always done in the upper list only.
Create groups
Command: Right mouse button | NEW | GROUP
Delete groups
Mark one or more groups, right mouse button | DELETE
Edit groups
The first two columns (Name, Description ) can be changed directly in the
upper lists:
Right mouse button | EDIT
All the other information on the group can only be changed in the properties.
Administration rights
(User management) Only appears when the tab is called up within user man-
agement and only for users, not for groups. See SECTION 6.1.2.1: ADMINISTRATOR
concerning the importance of the rights.
If the Administration rights has been activated, the Project management
option is fixed in the “on” setting. The reason: an administrator possesses all
the rights in any case. In that case it thus makes no difference which object
rights or function rights appear in the list at the bottom.
Project management
(User management) Only appears when the tab is called up within user man-
agement. See SECTION 6.1.2.2: PROJECT MANAGEMENT concerning the importance
of the rights.
Object management opens up by marking the object with the mouse and then
pressing [CTRL]+[A].
First of all, use the selection button to search for a user for whom the evalua-
tion is to be made:
Current object Shows the actual rights that the user in question has
rights for regarding this object.
Read only because Shows the reasons why an object for which you
possess all the rights cannot be changed:
Object is not in the current project
Example: Base objects may be shown in the plan-
ning project, but they belong to the base project.
Inherited
Often in the case of attributes. Inherited properties
cannot be changed or else need to be checked in.
Locked
This affects objects in the properties window with
the red key. Blocked objects cannot be changed.
This information can also be queried with the
SystemRO function, see „IComosBaseObject“.
The Rights tab is valid throughout and is explained in SECTION 6.5.5: THE RIGHTS
TAB.
The “2” is a constant here and stands for the “write” object right.
Effect
“True” appears in the column if the evaluated right exists for this object, and
“False” if the user does not possess the right.
An own base object is created underneath this each for each status. The ele-
ments that determine the status values lie one level deeper.
You can allocate to the base objects the status values to indicate which users
may possess write rights by using the object management.
Only those users who have write rights there are permitted to set the corre-
sponding status value in the planning data.
Application
Comos creates a file in the Comos\OCX directory when the database is
accessed for the first time:
With Oracle: orapwd.dat.
With multiple instances: This mechanism also applies to orapwd_1.dat.
However, orapwd_2.dat is not covered by this mechanism, so you can login
“freely” with this instance.
With MS SQL Server: mssqlpwd.dat.
With multiple instances: This mechanism also applies to mssqlpwd_1.dat.
However, mssqlpwd_2.dat is not covered by this mechanism, so you can
login “freely” with this instance.
If you have logged in correctly into the database for the first time, this login
is thus stored in the file: this file includes the account name and the access
password in an encrypted form that can only be read by Comos. This file can
now be transferred publicly over the network to all authorized Comos users
and stored locally in the Comos\OCX directory.
7 Inheritance
This section covers the mechanisms by which information can be transferred
automatically within Comos from one object to other objects.
In principle, the same terms are used in the case of planning objects, but com-
pletely different mechanisms are described there.
Hierarchical inheritance: There is no hierarchical inheritance in the case of
planning objects.
Referring: There is the Base object field in the properties window of a plan-
ning object that connects the planning object with a base object. From a tech-
nical point of view, this is similar to the use of References on the properties
window of base objects, except that only a portion of the data is transferred
from the base object to the planning object, while in the case of base objects
all the information is transferred. For example, the Symbols and Usage tabs
that are required for administration are not available on the planning side.
Linking: A link is also called a “reference” in the case of planning objects.
Links can be created within a planning project, but information is not col-
lected, unlike within the base project. Links within planning objects thus rep-
resent nothing more than an alternative access point for the object.
So much for the planning side, the following details relate to the base data.
Inheritance can also be called „1-to-n inheritance“, since an object can have
any desired number of “children,” but each object only has one “parent
object.”
Catalog
Pump
Spec2 Power
Hierarchical
Pump 1
Inheritance
Spec1 Quantity
Spec2 Power
Pump 2
Spec1 Quantity
Spec2 Power
In the case of hierarchical inheritance, new objects take the properties and col-
lections of the “parent object” that is higher up in the hierarchy. If any infor-
mation is changed in the “parent object” (also called parent”), this change
takes effect in all “child objects” as well.
If information is inherited, as shown above in the example for “Power,” this
information can be added to and modified at the lower levels of the hierarchy.
A value could be assigned to the “Power” property or the description is mod-
ified. In this case we refer to a property that has been checked in, see
SECTION 7.3: CHECK IN OBJECT.
Please note: if the name of the attribute is changed at a higher level within the
hierarchy, then any properties that had been checked in are now unusable.
Avoid changing the name of an attribute that has already been checked in
somewhere.
This inheritance always takes place, and automatically. This is shown by an
“E” in the Status column of list mode. A reference breaks the original inher-
itance chain at this point and inserts a new one (see SECTION 7.1.3: DEFINITION OF
REFERENCES (LINKS)).
A reference transports all information that can also be inherited. (The man-
agement of the rights structure is completely separate from this, although that
too deals with the question of “inheritance”).
In the case of references an object receives the information (properties and
collections) off an object that is on another branch of the tree structure when
seen from a hierarchical point of view. If an attribute of the source object is
changed, for example, this change also takes effect for all objects that have a
reference to this source object.
References also have a 1-to-n relation, since an object can serve as the source
of a link as many times as desired, but each object can only have one “refer-
ence source object.”
A reference breaks the inheritance chain:
Catalog 1
Old pumps
Spec3
Spec4
Catalog 2
Special pumps
New pumps
Spec3
Spec1 Z.B.
Quantity
Spec4
Spec2 Z.B.
Power Pump 1
Special pumps
Spec1 Quantity
Spec1 Quantity
Spec2 Power
Spec2 Power
Link/ Reference
Pump 1
to...
Spec1 Quantity
Spec2 Power
Please note: the attributes in the various branches can of course be given the
same name.
There are two options, which from a technical point of view are both forms of
reference, but which differ in the way that they are used: a reference to another
base object, and an assembly reference.
Template reference
The current base object can no longer be modified in the case of a template
reference. All the input fields are blocked and it is not possible to check in any
more information. In practice, an assembly reference is used in order to set up
a reference to a predefined group of planning objects.
In order to understand this, you need to know that a base object does not need
to be within the base project and a planning object does not necessarily have
to be located within the planning project. It is possible to create, wire and pre-
pare objects in all possible ways within the base project planning.
Nonetheless, the user cannot later access within the planning project the
“planning objects“ from the base project. An “intermediary” is required to
make these prepared planning objects accessible. An assembly reference is
used for this purpose.
In other words: the base object only serves as a “container” for the module;
and for that reason it is also not necessary to change the information that had
been transferred from the module. And by the same token, you cannot do that
either with an assembly reference.
An assembly reference overwrites a base object reference.
Links are not base objects in their own right, but from a programming point
of view, merely objects of type CLink). If a link is affected in any way, this
change takes effect on the original (and this is visible in the original with all
links). Technically speaking, this concerns an “inheritance via Backpointer
Clink”: By contrast with the two methods introduced previously, in this case
information is not transported forwards but instead backwards.
Links are n-to-1 relations, since a link can be created at any desired number
of locations and each link adds information to the original.
Please note: Links can be switched to active or inactive within the Navigator
(mouse command Inheritance active via this link).
Spec1
From Norm1
Spec1
Spec2 via link
Other Link to
Catalog 3
tab special pump
Spec4
Legend:
All the information is visible everywhere, both in the original of the object
and also in all links. Please note that if the inherited information is modified,
that this does not change the “source” (which cannot be changed at this point),
but instead checks the information in and changes it locally. See SECTION 7.3:
CHECK IN OBJECT.
If tabs are linked via the Catalog specification field, then the attributes on
the tabs are also linked.
This linking of a tab has in addition the result that the hierarchical inheritance
of owners is broken off for this tab. The effect is that same as that we have
already seen in the case of references for base objects: a reference breaks the
inheritance chain from above, and it is only possible to inherit from the refer-
ence source.
The sole difference here is that this inheriting of owners is only broken off for
this special tab.
7.2 Application
Example of attributes
Devices can have attributes that had been defined at a higher hierarchical level
and are to be valid for all lower levels. This is displayed in the “list view“ in
the Status column by an “E”.
If inherited attributes are to be modified, they must be changed within the own
attributes of the device. This procedure is called “checking-in.” Checking-in
is done automatically by the system.
Inheritance and checking-in are done in principle at the level of the item, or
element (elements are not to be confused with the Elements tab). However,
a further distinction is made as to which Properties of the items are actually
to be modified. This means that the Value property can be checked in, while
the Control properties property continues to be inherited. Modified properties
are released from the higher hierarchical levels.
Please note: if the name of the attribute is modified in a higher hierarchical
level, the properties that had been checked in before will become unusable.
Avoid changing the name of an attribute that has already been checked-in
somewhere else in the system.
• Mark an inherited attribute in the Navigator (this can be seen by the black
arrow at the top left)
• Right-click, context-sensitive menu | PROPERTIES.
• The arrow changes to white once the change has been made (checked-in
attribute).
8 Copying
These components are handled in different ways by the different methods for
copying. The following defines the components to the extent that is necessary
for an understanding of a copying operation. Further information on the struc-
ture of the objects can be found in the Reference 1 manual.
Multiple selection
There are small differences in a multiple selection: a number of copying pro-
cedures summarize all the marked objects into a single amount to be copied,
while other procedures handle the marked objects individually and make
independent amounts to be copied. More on this in the relevant sections.
8.1.3 References
Please note that base objects in the broader sense are not necessarily always
automatically located in the base project! For example, it is permitted to create
local base objects (instances), or in other words, base objects within the plan-
ning project. Document types, for example, are also permitted to be located in
the system project. In other words, the referenced objects can be located out-
side the project in which the copying operation took place.
Base objects in the broader sense can be located either in a planning
project, in the base project or in the system project. They also do not
need to be located in the same project as the objects of the amount
to be copied.
Reference types
There is a list of all references in the annex. There it is also stated whether a
planning object reference or a base object reference is involved.
Objects that have been brought over can in turn bring over other objects as
well. At the simplest, this can be made clear from the example of the base
object: a base object can possess a collection of documents that are then like-
wise brought over.
Result:
Pic. 8-2: Objects that have been brought over in the case of collections (example)
There is a similar mechanism for the references of objects that have been
brought over. Very broadly speaking, the rule is as follows:
P-references are lost and S-references are retained when copying the struc-
ture.
The references are retained and bring over additional objects when copying
across projects and when using the Object Matcher.
• Class
An example:
In other words: everything that was not inherited is copied. Inherited informa-
tion is recalculated on the basis of the new owner.
Furthermore, the copying methods differ in the way that references are han-
dled.
[1] Default case: The DocObjs are deleted. When the document is opened
for the first time after copying, new objects are then created according to the
information of the report itself. In other words, the document no longer
contains the original placed objects but instead the new objects that have
been created. Where and how the objects are created is determined by the
type of diagram involved. To some extent it can be helpful to create the
objects underneath the report, and to some extent the objects are created in
parallel to the report.
[2] DocObjs are retained. If the placed object is likewise part of the amount
to be copied, then after the copying operation the DocObj points to the new
object that had been created by this copying operation. If the placed object
is not in the amount to be copied, the DocObj then points to exactly the same
object. The device is then placed twice: once on the original document and
once on the document produced by the copying operation.
[3] DocObjs are modified. A copy is automatically created in parallel with
the placed object. If there was previously a placed Indicator1 , then after the
copying operation there will also be Indicator1_1 . The DocObj points to
the object that has just been created.
The mode that is set for a DocObj can be determined by the object interpreter.
This is done by dragging the DocObj into the drag & drop field A and select-
ing the A.CopyMode command. As a result a number [1, 2, 3] is displayed
that corresponds to one of the three above-mentioned cases.
• Revisions are deleted in the case of documents.
8.2.1.2 Application
Because of its limitations the default copying function is fast and simple.
Mark an object in the Navigator and select the | COPY context-sensitive menu
with the right mouse button.
The object is copied with all its properties and collections into the Comos clip-
board and can be pasted in again at another position.
Please note that a common amount to be copied is not set up when making a
multiple selection! The effect is the same as if the relevant marked branches
had been copied individually. This is primarily of importance in the case of
“references pointing outwards”, since without the common amount to be cop-
ied the references are treated as “pointing outwards” by one of the marked
branches in one of the other branches.
The | Copy and | Move combination is functionally identical to the | Cut and
| Paste combination from the point of view of the user but it offers greater
safety in technical terms, since no objects can be lost.
Example: If an object is cut, it then only continues to exists in the Comos clip-
board. The clipboard is deleted without a safety prompt when Comos is
closed. But Comos can always be closed with no risk when using | Copy and
| Move , since the original still exists in addition to the copy in the clipboard.
– a) The referenced object (example CDevice pointer: the base object that
was entered in the Reference field of a base object) is part of the amount
to be copied. After the copying operation the pointer points to the object
that had been copied as well and no longer to the object that was originally
referenced.
b) The referenced object is not a constituent part of the amount to be
copied, but it is precisely the referenced base object that can be found
from the target. The pointer is retained and after the copying operation
continues to point to the original object.
re b) Comos searches for the base object in the following sequence:
1) The base object is part of the amount of copied objects.
2) Alternatively, the target project is searched for the base object.
3) Alternatively, a search is made in the base project of the target project
for the base object.
– c) The copying function is blocked if neither a) nor b) is possible. As an
example, the case of the base object pointer:
The base object pointer reveals on which base object the planning object
is based. A precise object allocation follows; simply having the same
name is not enough:
Other
This procedure is not identical with “copying across projects”!
It is not possible to copy across databases.
8.2.2.2 Application
The alias object must not have been referenced in any other way than as
an alias.
Special points
The Copy structure function contains a number of rules by which the amount
to be copied can be increased. In other words: normally the OwnCollections
alone form the basis for making up the amount to be copied, but an additional
evaluation is made with Copy structure:
• Tracing the connectors
| COPY STRUCTURE automatically traces the connectors.
Example:
A copy is made of object A , which has six connectors, of which four are actu-
ally connected. The connectors that are joined lead to four objects that are
now all included within the extended amount to be copied, either as a projec-
tion or as a new object to be created.
The first of these four objects also has four connectors joined to it. One of
these is the counterpart to object A , but the other three connectors point to
three further objects. Each of these objects is included in the extended amount
to be copied if it has not been included already.
Please note: if | COPY STRUCTURE is included in a quantity of data that is inter-
linked within itself in a complex way, the extended amount to be copied can
be very large.
• BackPointerDevicesWithUnit, BackPointerDevicesWithLocation
The information as to which planning objects (class Device) are joined
within this unit or location. In other words: not only a planning object
“knows” with which unit it is linked; the unit also “knows” which planning
objects are linked with it.
• BackPointerDocsWithUnit, BackPointerDocsWithLocation
As for the previous item, but for documents.
8.3.2 Application
Sub-unit AN1 was marked and copied in the above example. The link to the
R1 and S01 location view are taken over automatically.
Do not use the [OK] command when using | COPY STRUCTURE within
a project! The data must first be subjected to intermediate editing
before you can close the copying operation.
• Open the source project and then an additional (second) Navigator (by
means of | COPY STRUCTURE).
• Change the project. The additional Navigator retains the “old” project.
• Execute the | COPY STRUCTURE command in the additional Navigator. The
result of the copying operation is executed in the main Navigator - and
hence in another project!
It is still possible to edit the objects before the copying operation is actually
executed, see the following. The changes only take effect once the objects
have been accepted in the main Navigator by means of [OK] or [ACCEPT].
Inconsistency check
In Comos there are cases in which 1-to-1 links are absolutely essential: with
connectors, in Comos’s own alias naming system, and in implementation.
Multiple connections could arise if there are inconsistencies, but these are
strictly prohibited.
If there are any inconsistencies, the projection is not totally prohibited, but the
projection is run through first of all. (No objects have yet been copied at this
point in time.)
If it turns out during the actual copying that a multiple connection would be
produced, then the copying action is permitted but a portion of the source
information - precisely that portion of the information that would lead to a
multiple connection - is discarded.
The deleted information is taken into the notification list.
This also makes it possible to reduce the number of hierarchical levels (reduc-
tion of levels).
Example: in the extended amount to be copied there is an object that had orig-
inally been located on the fifth level of the structure tree. A projection is set
onto an object that is on the third level by using drag & drop.
However, the relative ordering of the levels must still be retained; if the object
related to another object that was higher up in the hierarchy, the other object
is not allowed to be at the same level or at a lower level in the hierarchy as a
result of the reduction in levels.
From a technical point of view, this means:
A reduction in levels (the removal of objects) is only permitted if during the
preparation for the copying there are no other objects located on that level and
there are no pointers referring to them.
This sounds complicated, but it is simple enough in actual practice. If two
projects have been set up in a very similar way, but an additional folder level
was incorporated in the source project, for example, then all objects in the tar-
get can “move up one level”. All the relative superordinated and subordinated
relationships are still retained in this case.
The original projection to the existing object S1 can no longer be reproduced
automatically. In other words: the automatic projection is carried out just once
and at that very moment, since the extended amount to be copied is transferred
to the Copy structure to... dialog window.
Of course, a manual projection can be carried out by using drag & drop, and
this has the same effect. But if the user has done considerable editing after-
wards in the case of an automatic projection, it is necessary to bear in mind
that you cannot lightly discard all the changes that have been made and go
back to the initial state.
A number of further editing commands are available for all objects that are
not projected – and hence also for all objects for which the projection was
removed manually.
The simplest form of post-editing is a change of name:
In other words, you cannot explicitly drag an attribute into the Source field.
However, these exceptions also only apply to the starting point; these three
object types can of course be copied as well in the case of all subordinated
objects.
Special points
The structure of the source project from the project root (the globe) up to the
marked object can be reconstructed in the target project with the aid of the
automatically create hierarchy option.
Difference from Copy structure:
In the case of Copy structure the hierarchy is reconstructed first of all. The
levels can be matched by using drag & drop.
It is not specifically possible to match the levels when copying across projects
because the intermediate processing function is highly restricted. You only
have the choice to select the marked target object as the target (i.e., the objects
are copied to underneath this target object) or to completely reconstruct the
hierarchy to be the same as it was in the source.
8.4.2 Application
the left-hand lists window and input a new name. However, you need to
already have the information as to which objects are referenced and what
the reference targets are called, because this information is not shown in
the Copying across projects dialog window.
If a projection is not possible, the object is of course created with the new
name.
In other words: objects can either be projected differently or renamed
with the aid of intermediate editing.
4. Setting the options:
– Object
The sub-area from the source project is copied directly underneath the
target object.
or
– automatically create hierarchy
The structure is created in the target project just as it is in the source
project and the objects are correspondingly appended to the source
project.
– without references
If activated: all references that relate to planning data (in the introduction
these were called “P-references”) are lost during the copying operation.
These include, for example, the unit pointer and the location pointer.
References to the base data (in the introduction these were called
“S-references”) are retained. These are thus the pointer to the base object,
references to base lists, etc. Please note: in principle this loss of references
always relates only to “references pointing outwards”.
5. The target project is now opened and the target node is dragged into the
Copy under field by means of drag & drop.
6. The copying operation is started by pressing the [EXECUTE] button.
The message “The copying operation has been completed” is shown
when the copying operation has finished, and this message must be
confirmed with [OK].
7. The dialog window remains open. The copying operation can be repeated
or a new target node can be set.
8. The process can still be cancelled with [Cancel]. The objects that had
been displayed in the Navigator are deleted again.
The new structures that have just been created (the first branch of the objects
that have been brought over) are displayed in the right-hand list window.
Set target project Transfers the project from the Source project
and source field into the upper Navigator and the project
project in the tree from the Target project field into the lower
Navigator.
Start object The allocation and comparison of the objects is
comparison done. No data has been changed yet.
Filter setting for The filters affect which objects are allocated
the object and compared. No data has been changed yet.
comparison
New start Deletes all fields in the dialog window. The
effect is the same as if the dialog window had
been closed with [CANCEL] and then reopened.
To the next Navigate to the next object difference
difference
The difference between the two displays thus only affects object B.
Both displays are correct in themselves. Technically speaking, the change in
data takes place at object C, which is also correctly flagged as “different” in
both cases. The change at object B is “only” a consequence of the change at
object C.
It is thus as a rule a good idea to do as follows when carrying out data match-
ing at object C: either take over or delete the reference at object C. Recom-
mendation: the “with inherited objects” option should be deactivated.
But object B also changes from the point of view of the user, since in the one
case it displays the attributes of object C and in the other case it does. How-
ever, the display with inherited objects could lead to a situation that could
cause problems: a user might get the idea of checking in and editing the inher-
ited attributes at object B and thus make the data match that at the other object
B. This is not recommended because the cause is, as described above, to be
found at object C.
Special point
It is also permissible to view the project in the Object Matcher. This allows
the project to be copied. Please note, though, that projects cannot be located
under other projects. In other words, the copied project is not inserted into the
target project, but instead the target project is overwritten.
The allocation and comparison of the objects is done from the start node
onwards (including the start node itself and all objects located underneath it).
The Object Matcher does not take the UID into consideration, otherwise
objects would always be regarded as being different.
Often you can tell immediately at a glance why two objects are flagged as
“different”. Sometimes the reason for the difference may be hidden more
deeply. The following explains all the situations that lead to differences.
– When the situation on the right is checked against the situation on the
left by means of the Object Matcher (the start node in each case is object
UnitA ), the left-hand Transformer object is flagged as being “different”
from the right-hand Transformer object.
The reason for this: in the situation on the left the RoomA object has the
FullName “RoomA” and in the situation on the right the RoomA object has
the FullName “NewLevel|RoomA”. This FullName is a constituent part of the
properties of the Transformer object! Thus there is a difference in a property
of both Transformer objects and they are flagged as being “different”.
This auxiliary construction has a further effect that tends to be undesirable in
practice but which is unavoidable from a technical point of view:
• If the pointer goes to an object that is located relative to the starting object
both in the source and in the target as well,
• and the start nodes are different, then
• the FullName of the referenced objects is different and the starting objects
are flagged as being “different”.
Recommendation: the names of the source node and the target node should be
the same, otherwise a reference that is pointing outwards cannot be allocated
meaningfully. The exception to this is the project itself; this should in any case
be different.
2. Comparison of collections
There are different types in the case of collections as well. The basic princi-
ples are:
• Collections that are regarded as “belonging to the object”
Examples in the case of the planning object: attributes or connectors. This
information is displayed in the lower window area when the object is
marked above.
• Collections that are treated as a collection of “independent objects”
Examples in the case of the planning object: elements, documents. These
objects are displayed in the structure tree in the upper window area.
The collection of attributes will be taken as an example from the first group,
“collections belonging to the object”. Objects are flagged as “different” in the
collection if:
• an attribute has been renamed.
• the contents of an attribute have been changed (Value or OwnValue).
• the data type of an attribute has been changed.
This case is partially one that cannot be seen at first glance! A ‘zero” can be
input either as a number or as a character; in both cases only a “0” is to be
seen, but the attribute is different!
• The position of the attribute on the tab is moved.
• An attribute is deleted or added.
• And all other properties.
8.5.4 Application
Select a source project and a target project from the drop down menu.
As opposed to step 1: “set source project and target project”, the two fields
can now also be used with drag & drop for all further Comos objects. For
example, an object from the main Navigator can be dragged into the applica-
ble field or a standard table from the Standard tables dialog window .
Note carefully when doing this which project is open right then! If project
HKS 51_1 was open at that moment, then in the above example you also only
could fill in the Target object node field from the main Navigator or from
the Standard tables dialog window (or other dialog windows). Change the
project if this is necessary, the Object Matcher dialog window will remain
open.
Any object can be dragged from either Navigator within the Object Matcher
without needing to change the project as well.
Once the start node and the target node have been set, the two buttons Start
object comparison and Filter settings also become active.
4. Filter settings (which objects are to be compared)
The filter settings are more comprehensive than elsewhere within in Comos.
Among other things, objects are offered that are not visible in the main Nav-
igator.
It is important to emphasize at this point that not all the information (objects)
that is managed within Comos is also displayed within the main Navigator,
since otherwise the display would become too cluttered. An example of that
concerns objects that are located hierarchically underneath the project: stan-
dard tables, unit systems and so forth.
The Object Matcher makes it possible to compare and reconcile all objects,
and consequently an extended form of display is required within the Object
Matcher. In other words: the Object Matcher displays more than does the
main Navigator. You can stipulate in detail in the filter settings what is not to
be compared (and hence also not displayed):
The classes for the “planning object” object are displayed on the left-hand
side. If the option for planning objects has been deactivated on the right, then
all the classes on the left are deactivated automatically.
The system types are displayed on the left-hand side. The following list
explains a number of important system types:
Run cases
Languages
Parameters
Document types
Start comparison
• Objects that only exist in the source object or target object are displayed
without any further functionalities in a list line. These lines also do not have
an icon at the start of the line.
• Objects that exist in both branches but which differ are identified as such
with the aid of an icon at the start of the line. If this involves attributes or
connectors, you can open an additional information window by
double-clicking or from the | DETAIL DISPLAY context-sensitive mouse menu:
All the properties that have been changed are listed in the Object differences
dialog window in the same way as for control properties (graphic properties)
that have changed. Sometimes black and white arrows are shown as well. The
white arrow stands for a property that is checked in, and the black arrow for
an inherited one.
If you wish to see the detailed view for another object, leave the details win-
dow open and simply double-click on the other object. Effect: the contents are
swapped in the detail window that is open.
The mouse menus reconcile the differences individually. The mouse menus
are called up by right-clicking, whereby only that subset of commands is vis-
ible that is also meaningful for this object.
TAKE OVER OBJECT INTO Copies the object from the source project into
THE TARGET PROJECT the target project.
DELETE OBJECT IN THE Deletes the object in the target project.
TARGET PROJECT
NAVIGATE TO THE NEXT Navigates to the next object that is new, was
OBJECT DIFFERENCE deleted, or differs. If possible, the object is also
displayed in one or both Navigators of the
Object Matcher.
This is especially helpful if a difference in the
sub-structure is shown for an object.
COMPARE AGAIN The data can also be edited within the Object
Matcher to remove any differences. New
objects could be produced in the target project
as a result of this editing of the data and hence
also differences could arise that had not existed
at the time of the first comparison. The two
databases to be matched can be processed in an
iterative manner until there are no more
differences.
This mouse menu is identical with what you
would get if you pressed the Start object
comparison button.
Before matching, you still have to choose whether objects that only exist in
the target project are to be deleted:
The “Object Matcher” plugin can now also be controlled through a script
(properties and methods). However, please note the order:
,source object and internally the source project is set
Public Sub Let Source (Byval vNewValue as Object) ‚
‚target object and internally the target project is set
Public Sub Let Destination (Byval vNewValue as Object)‘
‚set the FilterMatchOption, however, after that the matching process always
needs to be restarted
Public Sub FilterMatchOption (ByVal MatchOption as String, ByVal
Dummy as String, ByVal NewValue as long)
E.g.: FilterMatchOption “ “ Specifications””, ““““, 0 => attributes are not
matched as well.VNewValue = 0 or 1
OptionStrings:
“DocObj” = DocObj
“Specifications” = attributes
“Connectors” = connectors
“Symbols” = symbols
“Documents” = documents
“CDevices” = base object
“Devices” = planning object
“Cases” = run cases
“Company” = supplier / manufacturer
“DocumentTypes”= document types
“Language” = language
“Parameters” = parameters
“StandardTables” = standard tables
“PhysUnitGroup” = unit groups
“Device. Unit” = unit references
“Device. Location” = location references
“Device. Alias” = alias references
X X X X
Minimum amount to be copied
(X) X X X
The copying
operation is
(S-references)
blocked if the
pointer to this
precise object
cannot be
retained.
– X X X
Connector reference
(connections)
– X X X
Alias functional
scope
– X X X
Planning object references (S-references)
Project not The unit to which The unit to which The unit to which
changed: the pointer points the pointer points the pointer points
is retained is searched for on is searched for on is searched for on
Project changed: the basis of the the basis of the the basis of the
e.g., unit or location pointers
(X) X X
References in the case of objects
– X X –
hierarchy
Create
X X X X
“sameness” of
data after the
copying!
– X – –
selection
Multiple
Only apparently!
X – X –
Quick
– X (X) –
mediate editing
Manual inter
(X) X X X
Rights query
at the target
Create All rights are All rights are All rights are
required; but not required; but not required; but not
necessarily necessarily necessarily
Admin Admin Admin
both allocation
points
and object
matching
9 Deleting
This documentation will soon be available. We appreciate your understand-
ing.
Definition: A filter is set as a new starting point for the tree structure for the
object that is currently marked within the Navigator.
Effect: Within the Navigator only those objects that lie underneath this start-
ing object are still visible. If the filter has been set, the question mark is
replaced by a lightning flash symbol.
You can input an object as an anchor by:
• marking the object in the tree structure.
• left-clicking on the Anchor symbol.
Each tab has its own Anchor filter that is managed separately. Left-clicking
once again deactivates the filter.
If you select one of these superordinate objects, this is used as the new anchor.
Pick list
Definition: The pick list is used to quickly find objects again within
large projects. A function of this type is often called a “bookmark” as well.
Each of the four tabs has its own pick list that is managed separately.
Effect: If you mouse-click on an entry in the pick list, the corresponding
object is shown in the Navigator. The pick list contains the last ten objects that
had been pasted.
You can input an object into the pick list by:
• marking the object in the tree structure.
• left-clicking on the pick list symbol.
• Select the | CURRENT OBJECT... ACCEPT context-sensitive mouse menu.
Display
Here you can set what is to be displayed in the Navigator in the upper part and
in the lower part, or whether nothing at all is to be displayed.
General
Directly edit new objects
If this has been activated, it opens the Properties window for all new objects.
The option is also evaluated if objects are created as planning objects by
means of drag & drop.
Otherwise the object is created with an automatically-generated name.
Save automatically
Activated: Objects are saved automatically.
Not activated: Right-clicking in the white area of the Navigator opens a con-
text-sensitive mouse menu that gives you the option to save.
Sort alphabetically
Objects are sorted alphabetically within the Navigator.
Sort “folder” objects is ascending order
Objects with the “Folder” property are shown at the top in the tree, and only
then those objects without this property are displayed. This form of display is
thus similar to the default form of display in Explorer, which also displays the
folders first.
See SECTION 12.2.6: EDIT GROUP “OBJECT BEHAVIOR” concerning the “Folder” prop-
erty.
Tabs
Here you can set which tabs are to be displayed and whether the detail win-
dow should be visible.
The Navigator is switched over to status display and the objects are displayed
in color. The color symbolizes the status level for the selected type of status.
See SECTION 21: STATUS MANAGEMENT.
If you right-click on the tabs of the Navigator, you are offered a number of
different options to make settings.
If you select Horizontal or Vertical , you are only offered two of the four tabs
and can determine by mouse-clicking again which of the tabs are to be dis-
played.
Select
Objects, documents, attributes, etc., can be selected by marking so that they
can be moved or printed or made the object of other actions. This is possible
both for individual and multiple objects.
In the usual way as elsewhere in Windows, the extent of the marking and the
unmarking (selection and deselection) can be controlled precisely by using
the [Shift] key and the [Ctrl] key.
If a selection has been made, no other object can be moved by drag & drop.
First mouse-click on an object in the Navigator to clear the selection, and then
the selected object can be pulled by drag & drop onto a diagram, for example.
Double-clicking
Double-clicking within the Navigator without opening of the Properties win-
dow: The double-clicking opens the Properties window of the object.
Double-clicking within the Navigator with opening of the Properties window:
The data of the new object is displayed in the Properties window.
Double-clicking on a document opens the document.
Navigation
If you right-click on an object, you are offered the | NAVIGATE... menu. The
commands in the | NAVIGATE... menu vary according to the object that was
marked.
| NAVIGATE...
| ORIGINAL
Jumps from a reference to the object that was referenced.
| INHERITANCE SOURCE
This command jumps to the object from which the information had been
transferred: In the simplest case the hierarchically-superordinate object can
also be a base object that has ben set as a “link”.
In the case of referenced objects it is first necessary to navigate to the original.
| BASE OBJECT
Jumps within the planning project in the Base objects tab to the base object.
| BASE OBJECT IN BASE PROJECT
Jumps within the base project to the base object. The base object can now be
edited.
[Name of a unit or a location]
Jumps to a referenced object.
| DOCUMENTS ->
Jump function to the documents on which the object has been placed. The
document is opened and the object is displayed. The document can now be
edited.
| CONNECTIONS ->
In this case a jump is made to the connected device via the connector. This
function is ideal for moving “along” cables.
Base objects: | TEMPLATE
Jumps to the object that had been entered within the base object on the
System tab in the Reference |Template field.
Planning objects: | BASE OBJECTS WITH TEMPLATE
This command only exists for planning objects that are located in the @Tem-
plate branch.
All objects: | INHERITANCE SOURCE
Currently this command is only relevant in the base data view.
Base objects: | OBJECT IN BASE PROJECT
This command is available when you are working within a planning project
on the Base objects tab. If the command is selected, the base project is opened
and the selected base object is displayed.
Documents: | TEMPLATE or | TEMPLATE IN BASE PROJECT
Displays the template in the Navigator.
Documents: | REPORT OBJECT
Each document possesses a “report object”, this being an object to which all
the interactions of the document relate as a starting point. You can now jump
to this report object via the Navigation menu.
| PASTE LINK
A link produces an additional means of access to an object (in the same way
as a link in Windows Explorer). Links can only be set within a project. You
can create a link as follows:
1. copy object,
2. then right-click on | PASTE LINK
If a link is deleted, the object itself and all the other links are retained. If the
object is deleted, all the links are deleted together with it.
| NAVIGATE...
Already explained above.
| PRINT
This command is only available if one or more documents or document
groups are marked. In the case of marked document groups, only those docu-
ments lying directly underneath are printed. Any sub-document groups are
not printed as well. | PRINT includes the following sub-commands:
...| PRINT prints all marked items at the default printer without prompting
...| PRINT... opens the Windows printer selection box.
| TEAR OFF
This command “tears off” one or more portions of the tree structure into sep-
arate Navigators. The sub-sections include the complete structure from the
marked node downwards. All the mouse commands can be used in the torn-
off structure portion.
Please note: You cannot change the settings of the Navigator in the reduced
Navigator window that is torn off. For example, if connectors are shown in
the Detail window of the Navigator, then you cannot see the connectors in
the “additional Navigator”, since there is no detail area there.
| SEARCH
Opens a dialog window to allow you to search for objects.
| PROPERTIES
Opens the Properties window.
| DELETE CONTENT
Only available for interactive reports and only for the original document (not
for a reference).
Warning: The entire contents of the interactive report are irrevocably deleted!
The document object with its “Name”, “Description”, and “Template” prop-
erties and the revisions are retained. The graphic contents and all information
as to which objects were placed on the report are deleted. The created objects
themselves are retained, but are no longer placed on the report.
| REFRESH
Only available for the project object. Refreshes (updates) the Navigator dis-
play.
| CHANGE RUN CASE
Only available for the project object. Changes the run case for the project.
10.2 Views
10.2.1 Purpose
In the case of the “views”, special object queries are set up and then integrated
into the Navigator. What had been conveyed by the object queries is then dis-
played in the nodes at specific points in the Navigator.
Please note: only that information that had been conveyed via the object que-
ries is displayed. If not all the required object queries had been created in the
views, then the objects will be missing in the Navigator display.
10.2.2 Application
Views can be created for all tabs. All the created views are available in the
Navigator settings: right-click in the white area of the Navigator, | SETTINGS
command, Tabs options field:
All the created views are available for the Units , Locations and Documents
tabs. The administrator must ensure that users correctly allocate the views of
the various tabs. The views of the various tabs are independent and can be
allocated as desired. In particular, a level-independent view on the one tab and
a base object-dependent view on the other tab can be selected.
Only level-independent views are available for the Base objects tab.
If an additional Navigator is opened within the Navigator with the aid of the
| TEAR OFF command, the data is displayed there in the classical way, meaning
that the views there are not evaluated.
Only the “anchor” for views is supported in the Navigation and filter bar of
the main Navigator.
The calculation required can take relatively long, depending on the organiza-
tion of the queries. In that case the tree structure cannot be refreshed quickly
enough in all parts. The sub-sections of the tree structure that are not refreshed
appear against a yellow background. The display is up to date again after col-
lapsing and opening the node again.
10.2.3 Administration
You can also work with gaps in this case. Example: in the view objects there
are items with names “2” and “4”. The result:
- All the objects of the 1st level are displayed in the usual way in the Naviga-
tor.
- The objects of the 2nd level are displayed as in the view.
- The objects of the 3rd level are displayed in the normal way.
- The objects of the 4th level are displayed as in the view.
It is also possible to make the Navigator “break off” beyond a certain point.
For example, an object of the 5th level has been defined, but no object queries
were created. Thus no information is displayed below the 5th level.
Each evaluation object can possess as many object queries as desired.
Groups
You can create an object query in the views with the IsGroup=true (acti-
vated) option.
The result: In the base objects view you can create the actual object queries
underneath this object. An additional folder level is created in the planning
view in the tree structure, underneath which the query results can be seen.
Alternatively, you can create the queries hierarchically yourself, and then they
are displayed in the Navigator as groups as well.
Both options for grouping objects make input for level-related views more
difficult: The grouping levels are not counted as well when counting the lev-
els!
Import
External tables can be imported into Comos
and the data of the tables can be stored in the
form of base objects or planning objects. Cur-
rently Access databases, Excel spreadsheets
and text files are supported. It is recommended
that Access databases are used as the import
source.
See SECTION 33: IMPORT VIA ACTION OBJECTS.
Object query
A query object is a powerful tool to search for
objects, and thus to filter and sort the search
and the results of the search in all kinds of
ways. There are five types of object queries:
object query for planning objects; object query
for base objects; object query for documents;
object query for attributes; object query for
connectors.
Script
A container for a script.
Unit A group of functionally related technical
devices or facilities, or the topmost logical
grouping that appears meaningful to the user
from a technical point of view. Units are set up
hierarchically, meaning that they can possess
superordinate units (sub-units).
Blackbox
Can be set to blank if it is not yet sufficiently
clear which object will be required later. For
that reason the number of connections has not
been determined yet either, but a blackbox can
have any desired number of connections.
Category
With the aid of “categories”, components can
also be sub-divided automatically into these
classes instead of just being allocated globally
to a unit.
Plug
Plugs are elements of plug strips.
Function Synonym: Comos actuating function. The
function the measurement or actuating task and
the processing function(s) at a position. It cor-
responds to a “measuring function” in the
P&ID schematic layout.
A Comos position that has a controlling func-
tion from a process control point of view pos-
sesses at least one function, but can have
multiple functions.
Actuator
A component, such as a valve, that executes an
action in the P&ID planning. By comparison
with an actuator (inline), this is a add-on com-
ponent, the pipe continues to be a single part.
Actuator (inline)
A component that executes a function in the
P&ID planning. By comparison with an actua-
tor, this is a built-in component, the pipe is
interrupted and is split into two parts.
Instrumentation
Components in P&ID diagrams, such as a mea-
suring function.
Function Function modules are used in function dia-
component grams. Example: function logic (AND link,
OR link)
See SECTION 65: LOGICAL DIAGRAMS / FUNCTIONAL
DIAGRAMS.
Action block
Used in function diagrams.
Step
Used in function diagrams.
Transition
Used in function diagrams.
Visualization element
This object represents a graphic / visual ele-
ment of the subsequent unit controller. In the
classic sense, this could be a lamp; in modern
usage this could just as well be an OCX of the
unit controller.
Function element Function elements were formerly used under
the measurement functions.
Instrumentation
Contactor/Relay
This detail class initiates the creation of a con-
tact mirror at an object. A contact mirror is reg-
ularly created for relays or contactors. In
principle, it is also conceivable that you could
force the creation of contact mirrors for other
components by means of this detail class.
Plug strip
Plug strips connect devices by means of plugs
and sockets. Plug strips typically have no
bridges. As opposed to a terminal strip, a plug
strip is supplied as a rule in a fixed size.
Device request Obsolete, has been replaced by the Request
property of base objects.
This class was useful in the planning phase.
Only a request was input for the subsequent
detail planning, for an item such as a pump, and
the engineer could replace the device request
with a manufacturer device in the planning
project.
Costs Any desired unit of cost, such as DM, Euro,
etc.
Mounting As a rule, the time required for or any special
information regarding the mounting of a device
or a unit is entered here.
Location As a rule, the location or place of installation of
a technical device. Frequently, however, the
term is understood to have a wider meaning
and is regarded as a functional allocation.
Room
Represents the physical room in which parts of
a unit controller are to be installed.
Cabinet
Represents a physical switch cabinet.
Rack
A sub-area within a switch cabinet.
Slot
A sub-area within a rack and the smallest logi-
cal sub-area within a switch cabinet. For exam-
ple, to hold I/O cards.
Quality assurance A blank information block that can be used for
any purpose desired.
Revision In Comos the means of checking, and correct-
ing or approving as required, versions of docu-
ments on the basis of defined criteria (the
elements in a revision object). Since the soft-
ware has no way of knowing which revision
criteria are meaningful, there are no predefined
examples; fundamentally, the user has to
define the revision scheme by himself or her-
self.
See SECTION 41: REVISIONS.
Signal A signal designates the information unit that is
processed in function diagrams and signal
flowcharts, for example, “ON” or “OFF”. It
thus represents the input or output respectively
of the C&I item.
A Comos position can possess multiple sig-
nals.
Position A position designates a C&I or process control
task.
Equipment
Equipment in the P&ID planning, for example,
a tank or a pump.
Pipe
A pipe in the P&ID planning.
Cable route A route/cable channel is used to put together
pipes or cables between two location into a
spatial group.
Please note: each object class can be created on the Elements tab,
not only objects of the Element class!
11.1.1.1 Definition
A standard table describes a property and offers values for selection
relating to this property. Normally standard tables are used to either
simplify or force a selection of specific attribute values.
Nonetheless, other information can also be stored in the form of standard
tables, such as diagram types, symbols or the like.
Synonyms used for the term “standard table” include “default table” and base
list.
Standard tables can be created hierarchically. Please note that differing hier-
archical structures in the standard tables in different databases can lead to
inconsistencies when projects are swapped out or imported.
commands are now made available in the context-sensitive mouse menu (see
below). However, the changed values are only available in the particular plan-
ning project in question.
Properties
The | PROPERTIES of the values, which are displayed in the right-hand area, are
likewise called up by right-clicking:
A symbol can be allocated to each entry of the standard table for the P&ID
diagram type. These allocations can be used as graphically-relevant attributes.
This makes it possible to ensure that a object based on this base object in a
P&ID drawing can be displayed by various different symbols (subsymbols),
depending on the attribute value selected.
Open the project with the units systems, which as a rule is the system project
or the base project.
Select the | ADMINISTRATOR | UNIT SYSTEMS menu.
On: Those unit groups that have not been checked in are also dis-
played, e.g., unit groups from the base project or the system
project.
You can mark a unit group and check it into the current project
via the mouse, using the context-sensitive mouse menu. This
makes it possible to input units that deviate from the units in the
base project or system project.
Off: Only unit groups that have been checked into the current
project are displayed.
Properties
Using the right mouse button, you can display and edit the properties of the
table for all unit groups that have been checked into the current project:
Symbol The letters that have been defined as the
physical symbol.This would be l for length.
Reference unit The SI unit, or the international conversion
and standard unit of this unit group. This
would be the meter for “Length”.
Properties
Open the Properties window of the units by right-clicking:
unit has an SI conversion formula allocated to it, and the metric unit likewise.
When both formulas are combined, you can convert the metric unit into Brit-
ish (US) ones and vice versa.
When a metric unit is allocated to a British (US) unit, Comos stores this allo-
cation and transfers the allocation at once to the other unit as well.
Example: If an allocation of mm to inch is made within the properties, then
the corresponding mirror-image allocation is automatically made in the Prop-
erties window for inches as well.
It is also possible to link more than two units, since this does not necessarily
involve a 1-to-1 relation. Thus both mm and km could be allocated to the unit
inch. If a unit conversion is then made (see below), then all units with mm and
also all units with km are suitably converted to inches.
However, the reverse does not apply, as an inch unit can only have one con-
version unit. An inch cannot have both mm and km as a conversion unit. The
conversion unit to be input is always the one that was entered first. If mm and
inch had been linked, then mm is also shown in the properties for the inch unit.
The allocation can of course be changed retrospectively (but it can no longer
be removed completely, see below).
Please note: If more than two units have been mutually allocated and if con-
sequently there is no longer a 1-to-1 relation, then the units will be rounded
off in the conversion.
Example: If both mm and km have been allocated to the inch unit, then both
unit values are converted to inches. However, if the conversion is reversed
later, then all the inch values would be converted into mm, for example. The
information that specific units had earlier been input in the form of km is lost.
Planning object test1 : The unit Minutes is provided for the Time requi-
red field. The value 10 is input in the field.
Planning object test2 : The unit Minutes is provided for the Time requi-
red field. The value 10 is input in the field.
In test1 the unit is converted from minutes to seconds . The value is auto-
matically converted to 600. In test2 there are no changes: the value 10 and
the unit Minutes continue to be used here.
There is the option to create base objects and unit systems in such a way that
all the planning objects that access the same unit group can be converted at
the same time. Two steps are required to do this:
1. Create attributes that do not access a unit but instead a unit group.
2. Check the corresponding units group into the planning project.
Re step 1.
Create an attribute within the base object that does not access a unit but
instead a unit group:
The entry field in the planning object appears to be unchanged. Probably what
will appear is an entry field for the value and a drop-down list for the unit. The
unit is checked in if a unit has been selected from the drop-down list within
the planning object. However, the conversion mechanism only functions as
long as the unit has not been checked in. The unit should be set to static in
the Control properties of the attribute to prevent the user from switching over
the unit in the planning object and thus checking it in.
Re step 2.
Switch to the planning project and open the unit systems. Activate the All
groups option so that all the unit systems are displayed.
Mouse-click on the corresponding units group and select the Check into the
current project context-sensitive mouse menu.
Deactivate the All groups option again if you wish to switch over a unit
across projects. Only the units systems that had been checked in are displayed.
The Properties window can be opened by right-clicking. The default value can
be switched over in the Edit properties dialog window. The unit is switched
over and the value is recalculated for all planning objects that access this unit
group (and for which the unit has not been checked in, see above).
11.3.1 Interface
11.3.2 Properties
You will see the following dialog window if you open the properties of an
entry or create a new document type:
The entry fields have exactly the same meanings as those in the column head-
ings that were described in Interface, P. 11-9.
[Owner]
Top left: Switches to the hierarchical owner.
[Keep ... visible]
Top right: If this switch is pressed, then the contents of the Properties
window are not changed if you double-click on another object, but instead a
second Properties window is opened.
12.2.1 Inheritance
• Folder (IsFolder)
• Virtual group(Virtual)
Only available for elements.
• Inheritance mode
Only available for elements.
• Visible for all users (Visible)
• Creation option (CreateOption) (inheritance only via the base object)
All further information can be found in the above-mentioned section on inher-
itance.
Class
This dropdown list contains all the classes of base objects. This list can be
extended. Depending on which class was selected, different subclasses are
available in the right-hand field.
Subclass
This dropdown list contains all the subclasses that are available for the
selected base object class.
[Delete]
If the subclass of the base object had been changed by the user, this but-
ton restores the inherited initial value.
[Object icon]
Here you can assign a user-defined icon of your own to the base object
to distinguish it more clearly from the other objects. A small dialog window
opens when you click on the icon button.
Icon library
A sample library is offered here.
File
You can specify an ico or bmp file of your own with this option.
Your inputs are accepted when you click on the [OK] button at the bottom of
the dialog window.
If you click on the button with the cross, you delete the icon that was specified
for this base object. The base object then once again inherits the icon from its
parent object (letters in italic). If this is icon is deleted as well, then the code
character “_” is used. This tells Comos that inheritance is broken here and
thus there is “nothing”.
Deleting a user-defined icon: open the above dialog window again and click
on the button with the cross:
Edit fields
Name
Unique name.
Label
Enter the label of a base object if you are working with labeling systems. Spe-
cial cases in which a label is also used outside a labeling system (for example,
in the case of document groups), are documented in the corresponding sec-
tions.
Description
Long text, this is displayed in the Navigator. The Description field is inter-
nally managed as a “Memo field”. The reason for this is that you can work
with several languages within Comos. Translations into other languages are
saved invisibly in the same field. Although the translations are invisible (until
you switch languages), they do of course still take up part of the field length.
Even very large texts can be translated into various languages by using the
Memo type without reaching the maximum field length permitted. See also
SECTION 42: LANGUAGES (LOCALIZATION) for more details.
The checkboxes under the key determine whether the fields for Name ,
Label or Description are locked.
If the option has been checked, these fields cannot be changed for a
planning object that is based on this base object.
The two checkboxes underneath this icon determine whether the entries
for Name or Label are checked for validity by the mask generator.
In Comos the “checkboxes” have properties that go beyond the typical
Windows functionalities and thus they also have special display forms:
Text italicized, checked or not checked: The associated property
has been inherited.
Text normal, checked or not checked: The associated property is
the object’s own (not inherited).
Checkbox grey, checked or not checked: the checkbox has been
locked.
A text mask defines a pattern that is used to automatically generate texts when
a planning object is created. The text mask consists of two edit fields:
The pattern of the mask is specified in the front edit area, and in the rear area
the starting value. Both fields must be filled out.
Character Meaning
. (Period) Any desired character.
9 Numbers, [0-9]
a Alphanumeric, only lower case letters [0-9a-z]
A Alphanumeric, only upper case letters (capitals) [0-9A-Z]
x Alphanumeric, [0-9A-Za-z]
Table 12-1: Wildcards when creating text masks
Character Meaning
c Lower case letters, [a-z]
C Upper case letters, [A-Z]
z Any letter [A-Za-z]
* Zero or several of the previous characters or expressions, e.g.
9*
+ At least one of the previous characters or expressions.
? Zero or one of the previous characters or expressions.
<> Open for calculation, i.e. the part that is to be calculated
\ Always placed in front of the literal
*+? – If not used as a literal: Cannot be used on their own.
– Can occur either inside or outside the calculation part
<> Is only allowed to occur once
Table 12-1: Wildcards when creating text masks
Examples:
Check validity
Compares the starting value in the right-hand field with
the text mask in the left-hand field.
• Select the “i” button in the mask line of the base object
• Enter the mask and the default value
• Press “i” again and click on the Write to standard table ... command that
is right at the bottom
(This option is only visible if entries have been made in the Mask field and
in the Default value field.)
• Open the planning project, select the | BASE DATA| STANDARD TABLES menu
item from the from the ADMINISTRATOR menu (or the [STANDARD TABLES]
icon).
• Check in the standard table |@SYSTEM|@MASK.
To be able to open the standard tables you must be logged in as
administrator; otherwise the Administrator menu is not available.
• Modify the entries.
Base object Here you can set a link to another base object:
either by using drag & drop or by pressing the [...]
button. The properties of the base object that is ref-
erenced are taken over.
Dereference This option only appears if a reference has been set
to a base object. The option changes the inheritance
structures:
When a planning object is created, it only takes
over the Name , Label , and Description fields of
this base object. All other properties are inherited
from the base object that had been entered in the
Reference field.
Visible for all users If this option is deactivated, then the object and all
objects underneath it are invisible for normal users.
The option can be used to filter the base data struc-
ture for normal users, to whom many of the base
data branches are of no interest and can be omitted
from view.
This property is not inherited downwards.
Count This option only appears in the Properties window
of an object that is located on the Elements tab.
The option is not evaluated by Comos but is freely
available. The option can be addressed with CDe-
vice.Number by means of a script.
Define run cases Run cases are variations of a project. They are used
to be able to simulate different load states, for
example. With this option the planning object
influences which run case is to be used.
The Creation option specifies what the base object is to be used for.
Normal
A normal base object that serves as the basis for planning objects.
Block
A block is used to be able to create several elements in one step. See
SECTION 12.5: “ELEMENTS” TAB.
A base object with the Block option cannot itself be created as a planning
object but represents only the individual elements.
Group
Similar to the Folder option in the case of planning objects, a Group is used
to sort base objects. A Group is ignored when names are computed automat-
ically, for example by calling FullLabel.
A base object with the Group option cannot be created as a planning object.
Structure
A structure object is not used to become a planning object in itself but instead
its function is purely related to organize the base data:
A structure object is used to make base objects accessible that are located
underneath it.
Implementation: Create a base object with the Structure option. Create
additional base objects underneath this structure object in the usual way.
(Do not confuse this with the creation of elements).
The structure object is now entered as an element at another base object (i.e.
is added on the Elements tab) – for example, a unit.
If the base object of the element does not have any “child base objects”, then
the Base object link is evaluated in addition, and the “child base objects”
of that referenced base object are used.
Effect: After creating the unit in the planning project, the structure object is
offered in the | NEW mouse menu for this unit. However, if you select the
structure object from the mouse menu, it is not created but instead a
submenu appears in which the objects located underneath the structure
object are offered.
This option is primarily helpful for defining labeling systems.
[DELETE] button
This button undoes the setting made by the user and activates the inher-
ited setting.
In Comos, there is always a Delete button of this type if only one of a group
of selector buttons can be activated.
Not selectable
Option “Not selectable ”: All exisiting planning objects derived from this
base object can continue to be used, but no further new use of the base object
is possible. This has the following effects, for example:
• The derived planning objects can still be edited. The derived planning
objects can also still be copied and pasted in again.
• But it is no longer possible to create a planning object by using drag & drop
on the base object (neither in the Navigator nor on a report).
• The base object likewise no longer appears on the | NEW menu.
• The base object also appears no longer in the selection of real devices.
Creation mode controls which objects can be created in the planning view. A
particular mode is activated in the base data view and the base data is set up
accordingly. But you only see the effect of this mode once you are in the plan-
ning view.
Effect of links
Hence objects may also be created that do not themselves belong to the ele-
ments but which only end up in this group because of base object pointers.
Example 1:
An already existing base object CDevice2 is dragged onto the Elements tab
by means of drag & drop. As a result of this, an element is created that has a
base object link to CDevice2. CDevice2 is of course permitted, but so are all
objects located underneath it.
Example 2:
CDevice1 has an element Element1 with the property Virtual N-times .
Element1 has a base object link to a CDevice2 that is located in another base
object branch. CDevice3 in another base object branch possesses a base object
link to CDevice2. CDevice3 is permitted.
Free
All
Elements
If the base object has virtual elements, then only objects can be created in the
planning that have been permitted virtually. When creating a planning object,
the ELEMENT FROM LIST menu entry is offered in the menu by right-clicking.
That way elements that are to be created can be selected directly from the base
object.
Subelements
Additional elements that exist in the element tree of the base object can also
be created underneath the planning object.
Inheritance mode
This property only appears in the case of objects that had been created on the
Elements tab (Elements-Collection; not to be confused with objects of class
Element). See SECTION 12.5: “ELEMENTS” TAB.
Inheritance mode is also used in:
• Attributes, see SECTION 16.2.8: INHERITANCE MODE.
• Connectors, see SECTION 12.6: “CONNECTORS” TAB.
The Virtual group only appears in the case of objects that had been created on
the Elements tab. Do not confuse them with objects of class Element.
For documents
When setting the base object pointer for a planning object (this also means
when creating it), the default documents are created both for elements with
the Off property (as before) and for elements with the Default property.
Status management is done here at the object level, see SECTION 21: STATUS
MANAGEMENT.
This group allows you to specify for a base object if the request object is to be
replaced or retained when it is implemented. This option overwrites the
project setting from the Properties window of the project, Module options
|Detail tab, property “Implement request” replaces object .
Request
This option declares an object to be a request object. In the planning view,
request objects are later on replaced by real devices.
Do not use objects with class Request anymore. Use this option instead.
Replace objects
The request object is fully replaced by its implentation (a real device), i.e.
it is deleted.
Don’t replace objects
The request object is retained. Beneath the request object a reference to
the implementation object is created and vice versa.
Project settings
Takes over the setting that from the project properties, Module options
|Detail tab, “Implement request” replaces object .
Compare also SECTION 60: REQUEST AND IMPLEMENTATION.
The Allowed links group determines which links an object can have in the
planning view. If one type of link offered in this group had not been selected
in the base object, a link of this type may not be set in the planning object, nei-
ther over the interface by drag & drop nor by a script or an import operation.
Planning objects can have links to:
– a unit / position / function / signal
– a location
– an implementation / target / cable route.
If a type of link is deactivated in the base object, the corresponding links of
already existing planning objects are still valid.
Sometimes, simply activating or deactivating the use of a pointer is not
enough. If you want to explicitly control the use of a pointer, then you should
use script blocks IsUnitValid (Device), P. 22-5, IsLocationValid (Device), P. 22-4 and
IsImplementationValid (Device), P. 22-4.
If a type of link has been deactivated here, then the corresponding entry can-
not be selected any longer on the Configuration tab. If it had already been
selected and moved into the “Current components ” area, then this compo-
nent is automatically moved back into the “Default components ” area.
If the Recursive option has been activated, then the same function also oper-
ates recursively for elements (CDevice.RealElements) of the object.
• Active
If activated, the element is inherited both by the planning objects and, in the
base data view, by the child-objects.
• Inactive
Inheritance is completely deactivated. The element is neither inherited by
derived planning objects nor child-objects in the base data view.
With this option you can, for example, neutralize an element that was
inherited from the parent-object but is not needed at the object. This allows
you to prepare numerous elements at a higher level of the structure tree and
then to deactivate the elements that are not required in the lower levels.
• Inactive for base objects
Inheritance within the base data is deactivated. However, planning objects
still inherit the element.
Virtual
This option controls how often and when the element is created in the
planning project. Elements prepared in the base data but not yet created in
the planning project are called “virtual”.
The virtual and Off options do not take effect in the base data view. They
only have an effect when a planning object is created.
• [ ] times
Enter here how many times the element may be created manually.
• N times
The element can be created manually in the planning project as many times
as desired.
• Off
(Not virtual) The element is created automatically when the planning object
is created. The element cannot be deleted afterwards.
• Default
The element is created automatically when the planning object is created,
but it can also be deleted afterwards. It can be created again manually after
deletion.
Miscellaneous - Count
The field is not evaluated by Comos. In this field you can freely input a num-
ber that can be processed later as you wish.
See SECTION 12.2: “SYSTEM” TAB for all further details.
Effect: If you use the | CREATE function in a planning object, it is not the block
element itself but instead the elements contained within it that are created.
Single line connec- Only displayed if the Type is EE/MCR. Shows the
tor single line connector with which the EE/I&C con-
nector is joined.
ET/IC connectors Displays connectors of type ET/IC with which the
single line connector is joined. Only displayed if
the Type is single line.
Wire Shows by which wire a connector is joined with
another connector.
Feed through A feed through connector is used to pass on signal
and potential information via the connectors of a
device.
In the Feed through field, enter the name of the
connector to which the information is to be passed
on to.
Example: A switch possesses the two connectors
CP1 and CP2. CP2 is entered as the feed through
connector for CP1. If the information is to be able
to flow in both possible directions, then CP1 must
be entered as feed through connector for CP2.
Currently, only one entry can be taken into consid-
eration for a feed through connector.
Inheritance mode
• Active
Both the planning objects and the “child-objects” in the base data view
inherit the connector.
• Inactive
Inheritance is completely deactivated. The connector is neither inherited by
the “child-objects” in the base data nor by the planning object.
Use this mode in order to neutralize a connector that had been inherited from
the parent-object but which is not required here in this object.
• Inactive for base objects
Inheritance within the base data is deactivated. However, planning objects
still inherit the connector.
Signal of owner
The Signal of owner option joins a connector with the signal of its
owner-object.
There is the Subtype field in the Properties window of connectors. This field
contains the entries defined in in the relevant @Connection table of the sys-
tem project.
Subtypes control the display of the connection at this connector, see
SECTION 47.1.2.5.1: CONNECTOR-SPECIFIC LINE TYPES.
Default subtype
A subtype @DEFAULT can also be created in standard table @Connec-
tionType [type]. This entry is then used if no special subtype had been
defined.
The mouse menu onthe Connectors tab is context-sensitive. Only the | NEW
command is available if there is no connector.
Multiple selection is also available for the connectors.
New connector
Call: right mouse button, | NEW
In order to create a new connector, select the Connectors tab and press the
right-mouse button. You can now enter the name, label and description, input
/ output and specify the attributes for the new connector in the New connec-
tor below... dialog window.
Copy connector
Call: right mouse button, | COPY
The connector and all its data is copied to the Clipboard and can be pasted in
at another location (another object, another project).
Cut connector
Call: right mouse button, | CUT
The connector is deleted with | CUT but it still exists in memory (the Clip-
board). The connector that has been cut can be pasted in at another location.
Paste connector
Call: right mouse button, | PASTE
A connector that has been copied or cut can be pasted in at any desired loca-
tion. The connector remains on the Clipboard after that and can be pasted
again until you copy or cut another connector. When pasting copied connec-
tors, the name is incremented automatically.
If the implementation pointer has been set at a planning object, the connectors
not only get the information on the potential, signal, wire and counterpart con-
nector, but also information on the cross section, color and number in addi-
tion. If the implementation is undone later on, the connectors are reset to their
original values.
(1) (2)
(3)
(8) (9)
(10)
Symbols display objects in a diagram type-specific way (e.g. symbols for cir-
cuit diagrams, P&ID schemes, etc.). On this tab you specify which symbols
are used to display the current object in the various types of diagrams. Apart
from assigning symbol drawings, you can also specify a corresponding text
symbol for each type of diagram.
“Symbol” (6)
If a symbol had already been created, this column contains a simplified depic-
tion of the symbol. If the column also contains the word „SCRIPT“, this sig-
nals that the symbol was defined in a VB script. If the symbol is not defined
through script, the path and name to the original drawing are displayed.
“Text” (7)
Similar to the Symbol column, but without the simplified symbol display.
Additional symbols can be stored here.
12.8.1 General
This tab contains a predefined set of functions, but also offers the opportunity
to write script functions of your own.
The basic structure of each function has already been prepared in advance and
cannot be changed. When selecting a function, the user can only enter com-
mands that will be executed when the corresponding event occurs.
If you wish to change s script, click on the [...] button at the far right.
If you only want to read the scripts, you can pull up the lines (drag the lines
higher) by moving the mouse on the column at the far left side of the lines.
The mouse must be positioned in the gap between two lines and then dragged
downwards while holding down the mouse button.
the usual way and Comos automatically calls up the corresponding script
block if any script is stored there. Thus, if two connectors are to be joined in
a UserScript, Comos automatically checks whether the Connectt script
block has been implemented (whether any script is stored there).
• The script block for parameters
Parameters that are to be made available in all other script blocks are defined
here.
Advantages
The use of script blocks has the advantage that scripts can be inherited and
modified at lower levels in a systematic and controlled way. If only one large
script had been inherited, you could, of course, still edit the script at lower lev-
els of the object hierarchy. However, in that case the entire script would be
checked in and thus the inheritance chain would be broken. If you then edited
the script in a base object higher up in the hierarchy, these modification would
be lost to the objects lower down the hierarchy.
With script blocks, you can insert additional script blocks at lower levels, or
edit some of the script blocks, and all the script blocks that had not been mod-
ified are still inherited.
In addition, the use of individual script blocks is considerably faster. Many
functions involve a call to the base object. If there is only one single large
script, it is necessary to load the entire script in order to check whether there
is information in the script for this specific call.
On the other hand, if individual script blocks are used, the program recognizes
at once whether a specific call is of any importance for this base object. The
overall result is that significantly fewer scripts are loaded.
See also SECTION 22.2: SCRIPTS AT THE CDEVICE (ALPHABETICALLY).
The Script Editor is used in many of the dialog windows in Comos, and not
only in the Properties windows of base objects. This section will give a
detailed description of the Script Editor, and other sections of this manual will
refer back to this section.
The Script Editor offers the tools a user needs to write small scripts quickly
and without complications. When the Script Editor is opened, you will nor-
mally see a predefined text that cannot be changed. Whether a text is seen, and
which one, depends on within which dialog window the Script Editor was
called. You will see something like the following:
Options
[OPTIONS]
Font
The Truetype fonts of the operating system are offered here. The font size can
either be selected from the dropdown list or entered freely by typing directly
in the field.
Color
• Keyword
(Default setting: RGB(0, 0, 128) = blue)
All lines beginning with a keywords cannot be changed at all. The list of
keywords is defined by Comos, for example, “Function” and “End
Function”.
• User-defined keyword
(Default setting: RGB(128, 128, 64) = brown)
User-defined keywords must have been passed beforehand in a TextArray
by calling the UserKeywords method. Example:
RtfScript.UserKeywords = Array("DrawArc", "DrawCircle",
"DrawLine", "DrawText")
• Comment
(Default setting: RGB(0, 128, 64) = green)
Comments are indented by a single quotation mark and are not evaluated
as script commands.
You can change the color by mouse-clicking on the Color field.
Tabulator length : Specifies by how many characters a tab is shifted. This
setting also affects tabs that have already been set.
Background image : Sets the background image of the Script Editor.
Shortcut : Here you can allocate a keyboard shortcut to a text. The stored text
is inserted when you press the shortcut. Please note that the shortcut must be
activated explicitly. It is not sufficient to simply enter a text.
All options are saved as follows:
<Windows profile of the user>\RText.xml
Default buttons
[OPEN FILE]
Opens a txt or rtf file.
[SAVE FILE]
Saves the script as a txt or rtf file. All the formatting is lost if the script
is saved as a txt file.
If the script is opened again in Comos, the keywords are recognized automat-
ically and the formatting is reassigned.
However, if the script is opened in a different program, then a txt file appears
to be unformatted while the formatting is retained with a rtf file.
[PRINT]
Opens the default printer dialog.
[CUT]
Cuts the selected text. Nothing is cut if the selection contains lines with
keywords, since it is not permitted to change such lines. (This does not apply
to user-defined keywords.)
[COPY]
Copies the selected text.
[PASTE]
Copies the text from the clipboard. Also see Cut as regards treatment of
keywords.
[DELETE]
Deletes the text. Also see Cut.
[SEARCH], [SEARCH FORWARDS / BACKWARDS]
[COMMENT] / [UNCOMMENT]
A single quotation mark is written at the beginning of the text and the
text is marked in the color that you had chosen in the options. To uncomment:
Remove the single quotation mark at the beginning of the line.
[INCREASE INDENT / DECREASE INDENT]
A tab is inserted before the text. To reduce the tab: Remove a tab at
the beginning of the line.
[HELP]
This button starts the programming help. The programming help con-
sists of at least two tabs:
Script components
Sample scripts. The sample text can be copied into your script either by dou-
ble-clicking or by using drag & drop.
Declarations
A “COM Object viewer ” that lists all the properties and commands that are
available in a component. Generally, by default the Comos.dll and vbs-
cript.dll.
Components can also be dragged manually from the Windows Explorer onto
this tab, and then all the properties and commands are likewise listed.
If you click on a node in the structure tree, the exact definition then appears
at the bottom in the information area. This definition can be brought in by
marking the text, pressing the <Ctrl> button and dragging the text into the
Script window by means of drag & drop.
In earlier versions of Comos each base object only had one large script, not
several script blocks.
Please note that old data that had been produced by earlier Comos
versions must be converted manually to the new technology of using
script blocks. The advantages of the new technology cannot be uti-
lized without a conversion. In addition, the new technology makes the exist-
ing data run more slowly than it did with earlier versions of Comos. In other
words: If a new Comos version is used with an existing database without
switching over to the new technology, performance will decrease. (It will
remain roughly the same if no scripts are used.)
The [DISPLAY] button appears on the Script tab at the bottom right if there is
old data in a base object – meaning a script without the new block technology.
This opens the Script functions without block technique dialog window.
All the script functions that are recognized by the program can be distributed
automatically with the aid of the [SEPARATE FUNCTIONS INTO BLOCKS] button.
Do this by cutting the corresponding portion of the script, inserting it into the
corresponding script block and activating (= implementing) this script block.
The remaining script code that is still left in the old script must be distributed
by hand over the UserScript blocks. In the end, the dialog window should
be completely empty, because only then is the old script deleted and the speed
advantages of the new block technology take effect.
Determines where the base object is used. The fields are as follows:
• Direct, Indirect
This option switch specifies whether the planning objects that are being
searched for are directly dependent or whether a concatenation of base
objects is also permitted.
Base objects can be derived from one another. Do this by creating a base
object “Test1”, for example, and then drag another base object “Test2” into
the Reference field of “Test1”. There are the following dependencies if a
planning object is derived from base object “Test1”:
Test2 -> Test1 -> Planning object1
If a search is made from Test2, suing the direct option, planning object1
will not be found. If you use the indirect option, then both the directly
dependent planning objects and the indirectly dependent planning objects
will be found.
Planning objects, Base objects
Planning objects only searches for planning objects. Base objects only
searches for base objects.
Using the latter you can also find base objects that possess a link to this base
object.
• Current, All
Determines whether to search the database only in the project that is open
or in all projects.
Tab, Specification
The dropdown menus are active if the marked object possesses attributes. The
Specification tab is selected from the upper dropdown menu and the attribute
from the lower menu.
The left-hand window area contains a list of objects. The current object is at
the top of that list. Then all the sources, i.e. all the objects from which the cur-
rent object inherits information, are listed in logical order.
First of all, mark two objects in the left-hand list. The object marked first
appears in the Primary object edit field of the right-hand window area, and
the object marked second appears in the Secondary object field.
The difference in the information between these objects is shown at the right.
The following information is taken into consideration when doing this:
• Properties (text edit fields on the General tab, options of the System ,
Script ) tab
When properties are compared, the field remains blank if no value had been
entered for one of the objects that are investigated. Please note that if a
property is inherited, then this property is empty at the object!
When properties are compared that exist at both the objects, then both
values are listed.
• Assigned objects (specifications, connectors, elements, symbols)
When objects are compared and the object exists at the one object but not at
the other one, this is symbolized through three lines. Example: If a
connector had initially been added “lower” in the tree structure, then the
connector does not exist at the owners of the CDevice.
When specifications are compared that exist at both the objects being
compared, a black arrow symbolizes that the object was inherited. A white
arrow symbolized that the objects have been checked in.
Configure display
You can configure the display of the planning object by moving the desired
components from the list of default components into the list of current com-
ponents.
Please note that as soon as one component is moved to the Current compon-
ents list , only the tabs and edit fields contained in this list will be displayed
for the planning objects. This also applies to the dynamic edit fields of the
pointers:
– In the default state, the edit fields for location, unit, etc., are created
automatically when the user drags a corresponding pointer onto the
planning object.
– This automatic mechanism is deactivated as soon as a manual configuration
is undertaken. The base data administrator must then explicitly provide the
fields for the pointers.
Default components
This list contains all the tabs and properties that are offered in Comos. Please
note that components are blocked if they have been deactivated on the
System settings tab , see SECTION 12.3: “SYSTEM SETTINGS” TAB.
The Separator component is used to structure the tab and inserts a line. It can
be used as many times as desired for the General tab.
Current component
Initially blank; corresponds to the display from Comos 7.0.
Prog-ID for user-defined components
Here you can enter some code that is to be used to load a customer-specific
tab.
then the corresponding edit fields are also displayed for this object (and only
for this one and not for all of them), even if they had not been intended to be
used on the Configuration tab. In this case the fields are also usable if nothing
else has been restricted.
Group “Navigator”
Extended display
Specifies whether the backpointers are to be displayed in the Navigator (both
for the object itself and for all subordinated objects). Performance is improved
by turning off display of the backpointers.
In that case you can no longer tell within the Navigator if another object has
been linked to this object.
In particular, it is worth switching off the extended display if you do not use
the Comos “implementation” technique. The “implementation” technique
also functions entirely correctly without the extended display, but in day to
day work it is more practical to activate the extended display.
See also Comos Kernel: SetBackpointerBehaviour.
• If you open another device that has registered a ProgID, a refresh is done but
the Material stream list and Components tabs disappear and the Steel
construction grid tab is blank.
If you remove the CDevice from its 3D structure and paste it in at another
point in the Navigator, the following happens when you create a device:
• Not only the Steel construction grid tab is displayed but also the Material
stream list and Components tabs. All the tabs are blank.
13.1 Iconbar
Navigate “:
The first icon serves as a “menu”: a menu with Navigation com-
mands opens up when you click on it. The effect is the same as with
the Navigation commands in the context-sensitive mouse menu within the
Navigator.
Owner
The contents of the opened Properties window change: the properties
of the superordinate object in the tree are displayed. The icon is deac-
tivated for the topmost level, or in other words, the objects directly underneath
the globe.
New ...
A new object is created on the template of the active object at the same
level in the tree. The name is incremented automatically at the same
time.
Released / Locked
An object cannot be modified any more if it is locked. Whether or not
you are permitted to lock an object depends on the individual rights.
Locking or unlocking objects is handled via the Lock object function right.
A locked object can be unlocked again at any time if you have the appropriate
rights. The administrator can also edit locked objects, regardless.
Please note: there is also the option to lock only the input fields for Name ,
Label and Description via the base data.
Additional icons:
The iconbar changes according to the circumstances and then has additional
icons. Example: When the tabs are opened (the tabs are explained further
below), extra icon buttons appear as well. The most important of them are the
icon buttons for filtering:
If, for example, objects of various types are displayed on the Connectors tab,
an icon button appears for each type. When you click on the icon (the icon is
pressed in), all the connectors of this type are displayed as well. If the icon is
deselected, then all the connectors of this type are grayed out.
Drop...
Here you can link your data. For example, if you wish to allocate a
component to a specific location, you can drag the location object onto
this position of the Properties window. A “reference field” appears, in which
the location is input.
“Keep current window visible” :
If a Properties window has already been opened and if you now dou-
ble-click on another planning object, then normally the contents of the
window are only changed.
If the Properties window that had been opened before is to be kept, then you
must press the “Keep current window visible“ symbol. Now a second Prop-
erties window is opened when you double-click.
Alias pointer
If an alias branch was defined in the unit or location world (i.e., if there is a
unit with the name @ALIAS on the first level), the Properties window gets
the Alias drag & drop input field.
For detailed information on the Alias functionality see SECTION 49.7: ALIAS FOR
LABELS.
Implementation pointer
If a planning object is based on a base object with the Request property, then
the planning object possesses an Implementation field. If the implementa-
tion pointer has been made active in this way, a new planning object can be
set as the implementation in the usual way by drag & drop.
Label
There is an interaction between the Name and the Label :
If a Label is input, then it covers the Name (in the Navigator, for example).
As a rule, you can sort either by Name or by Label in the list windows; at
some points either the Name or the Label can be input again as new so to
make the order of the Name and Label items consistent with each other.
The Name is the more important property from the point of view of the data
system: it is the mandatory field and, moreover, it is always unique. However,
in practice the Label is often more important, since the stock of data is clas-
sified with the aid of the “labelling systems”.
Description
The entry is italicized if the description was taken from the base object. If the
entry was made manually, the entry now becomes the “own description” of
this object and is no longer italicized.
Folder
The new planning object to be created can also be declared as a folder. A
folder only has an organizational function, e.g., to sub-divide further planning
objects. Folders are not taken into consideration in the overall labelling of an
object. This applies in particular if a labelling system exists. It is possible to
search for folders in a targeted way within list windows. The Folder option
can already be activated in the base object. If the Folder option has already
been set there, it cannot be deactivated on the planning view.
13.4 Tabs
The Base data tab is only required if new, free planning objects are created.
In this case a base object can be set here with drag & drop.
Click on the Base objects tab and search for the required template from the
data. Then use drag & drop to pull the base object from the Navigator onto the
Base object field in the opened Properties window.
Apart from the drag & drop field for the base object, this also finds the Pro-
duct data: search for base object button. See SECTION 61: PRODUCT DATA AND
MANUFACTURER DEVICE.
This command is only seldom required, since as a rule the tab is updated auto-
matically. There are only a few cases in which automatic updating is not done.
In the case of dynamically linked attributes, the value of an attribute is linked
with the value of another attribute. In the simplest case, this technique is used
to reduce the amount of inputting: if you enter a value for a planning object
and wish to see this in another planning object as well, you simply need to cre-
ate a “dynamically linked attribute” at the other object.
These dynamically linked attributes are also updated automatically as a rule –
unless you have simultaneously opened the Properties windows of two
objects.
You do not need the REFRESH VALUES command apart from in these special
cases.
In the above screenshot element “e1” is an object of class Element , while ele-
ment “e2” is an object of class Unit .
To edit the connectors, open the Properties window for the element in the
usual way and select the Connectors tab.
Then select the second object in the Project Explorer and open the structure
tree in the Navigator until the connectors can be seen.
Now one or more connectors can be pulled from the Navigator onto the tab by
drag & drop.
If you selected multiple connectors, then there are two options:
1. A multiple selection was only made in the tree. In the Properties window
the free connectors are placed in order, this being the order in which they
are sorted on the Connectors tab.
2. A multiple selection was made both in the tree and also in the Properties
window. In this case Comos attempts to place the selected connectors in
order.
You get a warning message if the number of connectors thus selected does not
match up. If you decide to carry out the action nonetheless, the connectors are
processed in order until the smaller of the two groups selected no longer has
any free connectors.
...| CUT
Cuts the opposing connector, and including the information on the wires.
The opposing connector can now be linked to another connector by using
the | PASTE mouse menu.
...| PASTE
Pastes the connector that is in the Clipboard, meaning that the marked
connector is linked with the connector in the Clipboard.
| WIRES
The | WIRES mouse menu is only available in the via column and has the fol-
lowing sub-menus:
...| BREAK
Deletes the information on the wires at the connector.
...| CUT
Cuts the wires. The wires can now be allocated to another connector by
using the | PASTE mouse menu.
...| PASTE
Pastes the wires that are in the Clipboard.
| CREATE AUXILIARY CONNECTORS
A Comos connector element (Connector) can only be linked to precisely one
other connector element; in the same way that a plug can only go into one
socket. If you wish to depict the situation within Comos in which, for exam-
ple, multiple wires are connected to a terminal, you must create auxiliary con-
nectors for them; you can then envisage this case as being like a socket strip.
| CROSS-SECTION, | COLOUR, | TYPINFO
The corresponding details are allocated to a connection. However, you can
only see the allocated information once the corresponding columns have been
made visible, see below.
| COLUMNS
This entry has the following sub-menus:
...| RESET
Removes all filters and other modifications from the list window.
...| <...> MAKE VISIBLE
There are a series of commands to make additional columns visible. All
the columns that have been made visible are shown with a tick in the
mouse menu. The column is grayed out again if you click on the entry
again.
| NAVIGATE
Navigates within the Project Explorer to the object of the column.
Please note: Depending on the column, there can be different objects within
the line. In other words: The effect of the | NAVIGATE command depends on
which column it is used in.
| UPDATE
Updates the tab.
| PROPERTIES
Displays the Properties window for the object in the column.
Please note: Depending on the column, there can be different objects within
the line.
This tab is only required for objects of type Cable (transmission routes).
13.4.5.1 General
The Wires tab gives a quick overview of all connectors (devices) linked with
this cable. This tab is only available
• if the planning object is based on a base object, class: GDevice, detail type:
Cable , or
• for type Element , detail class Wire
Document scheme
The | DOCUMENT SCHEME command also saves the scheme of the current form
of display. But the purpose is different: this scheme is to be used as output as
a list within a report. The scheme is transferred to DLL ComosWiresListIR
for this purpose and the scheme can be retrieved again from there within an
Interactive Report.
In an Interactive Report you insert a list frame and use the following com-
mands:
Set InfoDll =
CreateObject("ComosWiresListIR.ClassWiresListIR")
Set Cables = ReportObject.ScanDevices("D*")
Please bear in mind that each user can overwrite a scheme! In particular, if
you have adapted the layout of the report to a specific scheme, no users may
be allowed to save a document scheme, to thus prevent the matching of the
layout and the scheme from being lost.
The use of document schemes in reports is described in the manual.
This tab is only required for objects of types Terminal strip or Plug strip .
The Strip tab displays the terminal and plug objects lying underneath as well
as the connectors of these objects.
Background
Terminals strips and plug strips are set up in two stages:
1. There is one object that represents the strip. As a rule the strip itself
possesses no connectors.
Only two levels can be used together: there is no sense in creating a terminal
strip without terminal objects, nor in using a terminal object without a termi-
nal strip.
In other words: The Connectors tab is often blank in the case of a terminal
strip. The connectors of the strip are “one level deeper”, with the objects of
the terminals and plugs, and these are displayed on the Strip tab.
The Strip tab is set up as follows:
1. There is at least one entry (a line) for each terminal (or each plug)
2. Two connectors are displayed for each line: a I-connector (IN) and a O-
connector (OUT).
3. If a terminal has more than two connectors, the extra lines are added as
required.
4. Each of these lines again contains one I-connector and one O-connector,
but it is not necessary to create both of them. In such a case an icon shows
which of the two possible connectors is missing:
The I-connectors are always shown on the left, and the O-con-
nectors are always shown on the right. Here the I-connector is
missing.
Load / save scheme
A scheme can also be saved for the Strip tab. Operation is the
same as on the Wires tab, see SECTION 13.4.5.2: SAVE SCHEME FOR THE
WIRES TAB.
EE/I&C
Displays the EE/I&C connectors of the terminal objects or plug
objects.
In future more icons will be used for connectors, for example, for SingleLine
or for ANSI.
The current object and all the objects of its hierarchical sub-structure are
checked recursively for their status values. If the object or an object from
its hierarchical sub-structure supply a lower value, the lower value is
accepted and used for the current object.
In other words: It is checker whether a status value is valid, and if not, a
valid status value is determined. However, no data is changed.
Confirm your input with [ACCEPT] or [OK].
Lock/Release
Prevents any changes from being made within the Properties window.
Administrators can makes changes nonetheless.
Please note: If you terminate in the properties of a report, not only can the
properties themselves not be changed, but also the report itself can no longer
be changed.
Name , Label , Description
The Name field is 256 characters long. With it you can also address external
files (Word documents, report templates) in folders lower down by means of
the document object.
Folder
This switch controls whether the name or the label respectively of the docu-
ment appear during the various functions for the output of structure informa-
tion. If the option has been activated, the name is filtered out.
Base object
Self-explanatory.
Type
The basic detail as to what kind of document is involved (Word, Excel,
Report, Conval, etc.)
A number of document types possess a template document with which you
work at once (for example, Excel, Word or Text). In that case you can ignore
the other tabs for the time being.
With many document types you also need to input further details on the mid-
dle tab (the “Change tab”) before the document is functional.
The document object gets a different icon, depending on the Type . Bear in
mind that the corresponding program must be installed. For example, you can-
not use a Word document if Word is not installed.
First page
Page number of the first page.
Report template
A report template is searched for here. The report template also determines the
type of plan. The Select report template window opens when you mouse-
click in the dialog field or on the [...] button.
The base project is offered first of all in the dialog window. If the
@REPORTS document group exists on the Documents tab, then this is
offered as the default. If there is no @REPORTS document group , then the
project window is initialized with the project root.
Please note: Unlike most of the other forms of Navigator display, here all the
tabs of the project are displayed simultaneously under the project root. This
also holds true if you switch to the project yourself within the drop-down
field: You can now see all the objects of all the tabs under the blue globe.
You can switch over to the planning project that had just been opened by
using the “Current ” button. The same applies here as well: If the
@REPORTS document group exists on the Documents tab, then this is
offered as the default, otherwise the project root is offered. You can switch
back to the base project with the “Base ” button.
Select the desired report template from within the AWR branch. Confirm with
[OK]. The window is closed.
Object
The “object of a report” is the basis from which all the active and automatic
functions of a report are executed. There cannot be a document that does not
possess an “object”, therefore the entry also cannot be deleted with the [X]
button. Ask your administrator if you require any other setting here @@
[OPEN]
Opens the report. The effect is the same as if you had double-clicked on the
report within the Navigator.
[PRINT]
Prints out the report at the Windows default printer. The effect is the same as
if you had selected the | PRINT | PRINT mouse command within the Navigator.
[DXF]
Exports the report as a dxf file (“write to file”).
Report template
A report template is searched for here. The report template also determines the
type of plan. The Select report template window opens when you mouse-
click in the dialog field or on the [...] button.
The dialog window works in exactly the same way as described above. Select
the desired report template from within the IAR branch. Confirm with [OK].
The window is closed.
Object
The “object of a report” is the basis from which all the active and automatic
functions of a report are executed. There cannot be a document that does not
possess an “object”, therefore the entry also cannot be deleted with the [X]
button. Ask your administrator if you require any other setting here.
File storage
See also SECTION 30.1.1: DOCUMENTS.
Three instances of the document are saved in the case of Interactive Reports:
crp file
This is the “normal” working file.
bak file
The relevant last saved version before the current change. In other words:
each time you save the report, the bak file is overwritten with the last version.
tmp file
This file is open during the working session. If the document is closed cor-
rectly, the tmp file is deleted as well.
If a technical defect arises for any reason and the crp file becomes defective,
then either the last tmp file or the last correct version saved (bak) are available
to you.
[OPEN]
Opens the crp file, bak file or tmp file that was clicked on.
[PRINT]
Prints the report to the default printer. Only available for crp files.
[DXF]
Writes the reports to an AutoCAD file. Only available for crp files.
This document type is used if “foreign” documents are brought into Comos
by means of drag & drop.
This document type can only be used in connection with the Logicad program.
File name The original filename of the LogiCAD document (i.e.,
not the name of the Comos documents object).
Folder
15 Properties: Tabs
15.1 General
• Specification-tab 2
- Attributes of the tab 2
• Specification-tab 3
- Attributes of the tab 3
• etc.
The user must possess the “Base data” function right in order to create or edit
attributes, see SECTION 6.3.1: BASE DATA FUNCTION RIGHT. This also applies to local
base objects that are only located in the current planning project! Administra-
tors automatically possess this right.
The only actions that may be carried out without this function right are to
input a value (DisplayValue) and a unit (Label), and also the mouse menu
command | REFRESH VALUES.
Depending on your personal working environment, the blank area can also be
stippled. Whether or not the area is shown with a grid of dots depends on
whether the tab had already been switched over to “Design mode”. See also
SECTION 15.2.1: MOUSE MENUS OF THE TAB.
The Layout check box is located at the top right. This check box should
always be switched on. If it is switched off, you are switched over to list view.
This form of display is very old-fashioned but is still supported, see also
SECTION 15.4: SPECIFICATIONS TAB: LIST VIEW.
If you right-click on the stippled surface you will get the mouse menu of the
tab.
| New ...
| New | Specification
A new attribute (specification) is created and the blank properties window is
opened, see also SECTION 16: PROPERTIES: SPECIFICATIONS. The attribute that has
just been created appears on the grid of dots at the position at which the right
mouse button was pressed.
– New attributes can also be created by creating a copy of an existing
attribute. In addition to the Copy/Paste commands that we have already
seen, it is also very convenient to make use of the properties window of
an attribute, see SECTION 16.1: CREATE COPY OF A SPECIFICATION.
– New attributes can also be created by dragging an existing attribute
from the Navigator onto the tab, see SECTION 15.2.3: ATTRIBUTE DISPLAY:
SCALING, SHIFTING, GROUPING.
| NEW | Tab
A new tab is created and the empty properties window is opened, see
SECTION 15.3: PROPERTIES OF A SPECIFICATION-TAB.
Please note: First create the tab, and then the specification! If no specifications
have been created by then, i.e., if the very first object to be created is a tab, the
virtual General tab disappears after creating that first tab.
| PROPERTIES
The properties window of the current tab is opened, see SECTION 15.3: PROPER-
TIES OF A SPECIFICATION-TAB
| PROPERTIES | SPECIFICATION
See also SECTION 16: PROPERTIES: SPECIFICATIONS.
Scaling
You can mark an attribute with a mouse-click. All four corners and the mid-
points of the sides then appear as points at which you can change the size:
If you wish to change the size, the mouse must hover exactly above one of the
grab points (the mouse pointer changes). Hold down the left mouse button and
drag the attribute into the new shape.
Description
Optional; any desired text.
Name
The name must be unique for each base object.
Sort text
If any text is entered here, the tabs are sorted by this text, otherwise by name.
If some of the tabs have sorting text and others none, all the tabs are shown
with sorting text.
Catalog Specification
A link to another specification-tab can be placed in this field. All the informa-
tion in the linked tab is then accepted (general data, attributes, scripts). The
link can either be placed with the [...] button or by dragging from the base
data. A text reference to the catalog attributes is displayed in the Navigator.
Catalog specifications can only be used within a project. Thus a catalog spec-
ification of the base project cannot be used in the case of a local base object.
Inheritance mode
Active
In this option the planning object as well as in the base data “child objects”
inherit this tab.
Inactive
Inheritance is switched off completely. The tab is not inherited in the base
data to “child objects” and the tab does not appear in the planning object.
Inactive for base objects
Inheritance within the base data is switched off. However, a planning object
inherits the tab.
Working area
The working area allocates the tab to an organizational area (process technol-
ogy, mounting, administration, etc.). Only users who are permitted to see this
working area can also see the tab. Working areas are controlled via the user
administration; see SECTION 6.4: WORKING AREAS.
A specification-tab has a script attached to it, within which the user can call
up his own program code.
The use of script blocks has the advantage that scripts can be inherited in a
targeted way and extend to deeper levels. If only a single large script were to
be inherited, then it would of course be possible to edit this in deeper levels.
Nonetheless, in this case the entire script would be transfered and thus the
inheritance would be broken off. If the script were then to be edited for a
higher base object, this change would no longer have any effect on the
lower-lying objects.
With different script blocks it is possible to insert additional script blocks at
deeper levels or to edit some of them and thus inherit all the other script blocks
that had not been modified.
If you wish to edit an existing script, you have to click on the far right of the
screen on the button with the three dots.
Details on operation of the script editor are given in SECTION 12.8.2: THE SCRIPT
EDITOR. You can find a reference to script functions in SECTION 22: SCRIPT
FUNCTIONS OF COMOS OBJECTS.
Determines where the specifications tab is used. The meanings of the fields
are as follows:
• Evaluation of:
– Base objects - Objects of system type “CDevice” are evaluated.
Please note that documents are not included in this, but constitute a
system type of their own.
– Planning objects - Objects of system type “Device” are evaluated.
Please note that documents are not included in this, but constitute a
system type of their own.
– All - Objects of system type “CDevice” and “Device” are evaluated.
– None - Neither “CDevice” nor “Device” are evaluated. Only the results
from option group “Considered documents ” are displayed.
• Considered documents
– Templates - All objects that can be used as document templates are
evaluated. On the one hand these are “report templates” and “interactive
report templates,” on the other hand these are MS Office documents that
can be used as templates for other documents.
– Planning - All planning documents, or in other words, objects of
system type “Documents” are evaluated.
– None - Neither “templates” nor “planning documents” are evaluated.
Only results from option group “Evaluation of” are displayed.
• Project
The selected projects are evaluated.
• Display and evaluation including inherited objects
Inherited tabs are also evaluated.
The comparison
The lower area makes a comparison possible:
Column: Status
In this column the display shows whether the attribute belongs to the object
or whether it had been created in an element of a higher hierarchical level.
The checking-in is done at the level of the properties. For example, the prop-
erty Value can be checked in, while the property Control properties contin-
ues to be inherited.
Only properties that have been changed are released from the higher hierar-
chical level.
Please note that the name of the attribute is changed in the higher hierarchical
level, and thus a property that had been checked in previously could have
become unusable. Avoid changing the name of an attribute that has already
been checked in somewhere.
16 Properties: Specifications
Mark a specification on the Specifications tab, right-click and choose
| PROPERTIES, or else create a new specification.
Note:
For the definition of the terms “specification” and “attribute” as used in the
Comos graphical user interface and in this documentation, see section
Definition of the terms “specification” and “attribute”, P. 15-1.
• The script blocks that are available change, see SECTION 16.4: SCRIPT TAB.
• The options on the Link tab change as well with certain types of display, see
SECTION 16.3: LINK TAB.
Frames
All the attributes within a frame can be moved or dragged together. See
SECTION 15.2.3: ATTRIBUTE DISPLAY: SCALING, SHIFTING, GROUPING.
Button
A text can be input in the Description field of a Button , all other inputs are
ignored. The OnClick script block must be used to make use of the button in
a meaningful way.
Checkbox
This creates a box that can be checked with a cross. A text can be input in the
Description field, all other inputs are ignored. The OnClick script block
must be used to make use of the button in a meaningful way, and if applicable,
the GetSpecification and GetDisplayValue script blocks are used as well.
Edit field
Creates a field or a standard table for user inputs.
Excel interface
An interface to open an Excel spreadsheet. This technique is obsolete. Today
an Excel spreadsheet can be created directly within the Navigator.
File selection
An interface to make a file accessible. Technically speaking, the name, and if
applicable, the path of a file are stored, but the file itself is not opened.
The selection is stored in Value . The path is always stored relative to the cur-
rent documents directory. Thus, if a file is selected from the current docu-
ments directory, then only the filename is saved but not the path.
If you require an absolute path instead of the relative path within a script, this
can be set up with the aid of a small script:
st = a.Value
If InStr(st, ":") < 1 and InStr(st, "\\") < 1 Then
st = a.Project.GetDocumentDirectory + "\" + st
End If
output st
Whereby “a” is the specification object.
You can use the object debugger if you wish to try out the script. Open the tree
structure in the Navigator until the file selection attributes can be seen. Drag
the attributes themselves into field A of the debugger, copy the script to the
script field, and click on the execute button [!].
If the value of the attributes only includes the filename, the absolute path is
produced again. If the attributes already include the filename plus path, then
this information is taken for use without any changes.
Image selection
The following graphics formats may be used:
• Bitmap files (.BMP)
• Symbol files (.ICO)
• Cursor files (.CUR)
• Files in RLE format (.RLE = Run length encoded)
• Files in Metafile format (.WMF)
• Files in extended Metafile format (.EMF)
• GIF files (.GIF)
• JPEG files (.JPG)
Since graphics are often intended to be used as background images, the | NEW
mouse command is also made available (unlike with many other attributes) if
you click on an image specification.
Description
Creates a text that cannot be changed, which is taken from the input in the
Description field. This type of display is solely used for text.
Link
Links can also be set up to other objects for attributes, i.e., a LinkObject
pointer is set by which you can make use of another attribute with the aid of
a string that is made up of the section name and the attribute name.
The way that these attributes is used can be set on the Link tab. A more
detailed explanation of links is given in SECTION 16.3: LINK TAB.
List
Lists can quite simply be used in the same way as Excel lists, from the point
of view of the user. But to be technical, the lists attribute is a complex nesting
of attributes.
Among other things, the Description is used from the Properties of the Lists
attribute to provide text for the field in the first row and column. Most of the
inputs in the properties window are not taken into consideration. All the other
inputs and settings are taken from Design of specification, accessed via the
mouse context menu of the specification.
See SECTION 18: PROPERTIES: LIST ATTRIBUTES.
Memo field
The Memo field attribute allows texts to extend over several lines. Attributes
of this type can also be queried by means of a text field script and output in a
report.
match the type, the attribute cannot be saved. Please note that many types of
display have fixed templates in the Type field. Thus the Edit attribute
automatically always uses type number .
Standard table
A standard table that contains permissible values for the selected unit can be
allocated to the attribute under the [...] button.
In that case only the values included in the standard table can be selected in
the Value field.
Editable - normal
No limitations on access rights, no further effects on input.
Not editable
The field is only displayed, no input is possible.
Instance building
If a value is entered that had not been there before, then a new “instance” is
set up. See also SECTION 20: INSTANCES (REDUCING THE NUMBER OF OBJECTS) regard-
ing the setting up of instances for objects and attributes.
Hidden
For normal users an attribute of this type is not visible both with planning
objects and with base objects, and it is likewise not visible in either the prop-
erties window or within the Navigator.
In the case of users with the base data function right, the attribute is visible
within the base object and can be edited, while in the planning object the
attribute is visible but cannot be edited (the value is also blocked). (Adminis-
trators automatically possess this function right.)
The advantage of this editing mode is that it simplifies the work, since you can
create an attribute at a relatively “high” level. The attribute is inherited, and
you only need to switch to Hidden for objects in which the attribute is not
required.
Please note that each type of display can possess this editing mode. In other
words, an attribute of this type cannot be distinguished externally from the
point of view of a user. An Edit attribute with editing mode Graphical user
interface with scripts will possess an input field, text, and so on.
Please note that as a rule you will require both script commands.
Example: The text for the attribute is to be reset on the basis of the input: The
input is passed to Comos with SetScriptValue, and the input is fetched
back again from Comos and reset as a description with GetScriptValue.
Advantage:
The specification is not checked into the project; this accelerates the import
of objects.
Note:
• Working layer context:
Changes to the specification are saved in the XML string of the owner of the
specification, i.e. at the Device. The Device is checked-in, not the
specification. The entire XML string is released.
If several users are working in the same working layer, and with the same
Device: Since the entire XML string is set, it may happen that the
modifications added by one user are overwritten by another user.
• If several users are working with the same Device: same as in the working
layer context.
• The specification does not have a timestamp.
Consequence:
• No timestamp-based revisioning possible.
• The status of the specification is not changed.
This mode cannot be used for link specifcations (Display type : Link).
Recommendation: use with statical data.
A link to another attribute can be set in this field. All the information in the
linked attribute is then transferred. The link can be set by using the [...] button
or with drag & drop from the base data. A text reference to the catalog
attributes is displayed in the Navigator.
Catalog attributes can only be used within a project. Thus a catalog attribute
of the base project cannot be used for a local base object.
Catalog attributes have been prepared in the standard database under:
@Y Catalog attributes
Active
With this option the attribute is inherited to both the planning object and also
in the base data to the “child objects.”
Inactive
Inheritance is switched off completely. The attribute is not inherited in the
base data to the “child objects,” nor does the attribute appear in the planning
object.
For example, with this option it is possible to neutralize an attribute that had
been inherited from the parent object but which is not required here in this
object.
If this concerns an inherited specification, then this appears on the General tab
of properties window of the inherited specification under the “Base specifica-
tion” row that states from which base object this specification was inherited
from. Please note: if the specification in question is not an inherited specifi-
cation, the “Base specification” row will not appear in the properties window.
To the right of the Base specification row is a button that you can use to
open the properties window of the “original specification.”
16.3.1 Overview
16.3.2.1 No link
No link is used. If an attribute has already been entered in the Specification
field, then it will be deleted again (after quitting the Specification proper-
ties dialog window) .
16.3.2.3 By owner
Navigation is done “upwards” by means of Spec1.GetSpecOwner from the
attribute that is currently being edited. In this way the owner is found whose
object type is not equal to the attribute (Owner.SystemTypeName <> “speci-
fication”).
If the object that has been found is a device (Owner.SystemTypeName =
“Device”), then a search is made directly in the corresponding Specificati-
ons-Collection for the name of the specification-tab.
16.3.2.6 By connector
This type of link is very similar to “By linked object.” However, in this case
a connector is used to locate an object (planning object). The Connector-
name chosen from drop-down button to the right of the field Connector
name :
SpecName = String
SpecOwner = Device
Set V = SpecOwner.Connectors.Item(“ConnectorName")
.ConnectedWith.
Owner.Specifications.Item(KapitelSpecName).
Specifications.Item(SpecName)
Cell index
Only for link type Via Navigation assistant
A specific cell within a list can be addressed within the Cell index field. Thus
this field fulfils exactly the same function as when with other types of links
an attribute is addressed with the syntax Testkap.Spec1#1.
16.3.3 Value
Value/range: Operator
The operator controls the orange background, or in other words, when a value
is marked as deviating from the template in the link.
Comparison only
The linked value is not accepted automatically in the case of a static link, but
the user controls when the value is to be accepted. If the Comparison only
option has been switched on in addition, then the linked value cannot be
accepted at all, but is only used for comparison with the current value.
All the commands that are used to accept linked values are correspondingly
deactivated, such as the | UPDATE STATIC LINK command in the mouse menu.
Apply unit
If the Static option is selected, an option appears so that the unit can be
accepted as well.
Link Min/Value/Max
Only for display type Edit (Min Value Max):
If the Static or Dynamic option was selected in the Value field, an additional
dropdown field appears from which you can select whether you wish to only
link the Value or you wish to link Min, Value, Max .
For display type Edit (Min Max):
For technical reasons, the dropdown field also appears when it concerns
attributes with display type Edit (Min, Max) . However, only the entry Link
Min/Max is meaningful at this point.
Effect (option switched on): If nothing had been entered for the source of the
link (in other words, not “0” but no value at all) and a value had been entered
in the target attributes, then the two entries are treated as being different and
the orange background is shown.
Please note that all the other mechanisms that bring up the orange background
also work in the same way:
- you can accept the linked value by right-clicking (and thus the value will
also be deleted in this case)
- the attributes are marked as inconsistent in the status administration.
By contrast, things are handled differently in Value options Static and Dyna-
mic. There the linked value is displayed as well, but if the displayed value is
overwritten manually, the change is only made to the linked attribute, while
the original remains unchanged.
The interactive editing option is only visible on the planning side. This effect
cannot be checked during editing of the base data and objects. Please note as
well that you could edit all the other properties of the view attribute on the
base data side, but as a rule such editing would have no effect, since the infor-
mation of the original attribute is accepted on the planning side.
16.3.4 Specification
16.3.4.1 Overview
Available for display types:
Own object, By owner, By linked object, By connector
Within this field it is determined from which specification (attribute) the value
is to be fetched:
The text shown in the Specification field is made up of the name of the spec-
ification-tab and the specification (attribute) name, separated by a period (full
stop).
Special case for display type By own object :
For technical reasons the base object selection is offered in the same way as
for other types of display. Of course, an attribute of one’s own base object
must be selected for this type of display, otherwise there is a danger of incon-
sistency.
Please note that there is no option to ensure at this point that the selected
attribute also exists within the object that had been found via the link. An
example: If the By owner type of link was selected during editing of the base
data, it is not known definitively at that point which object is to be the owner.
For that reason you must ensure that the selected attribute actually genuinely
exists in the most recently found planning object.
16.3.5.2 “3D“
Attributes are marked as 3D attributes by means of this option.
Use: The attribute must be located on the GD Geometry specification-tab. If
that is the case, the 3D option is offered in the properties window of the
attribute on the Link tab. If the tab is still missing, it can be created with the
aid of database adjustments.
The use of script blocks has the advantage that scripts can be inherited in a
targeted way and expanded at lower levels. If only a single, large script was
inherited, you could still of course edit it at the lower levels as well. Nonethe-
less, the entire script would have to be checked in and thus the inheritance
would be interrupted. If the script were to be edited for a higher base object,
then this change would no longer have any effect on lower-lying objects.
With various different script blocks you can add extra script blocks at lower
levels or edit some of them and inherit all the other script blocks that had not
been changed.
The basic framework has thus already been entered as unchangeable when
selecting a function. It can now be filled out with instructions that are to be
executed when the relevant trigger event occurs.
See also SECTION 22.3: SCRIPT AT THE ATTRIBUTE to refer to script blocks in more
detail.
16.4.2 Operation
If you wish to change an existing script, you have to click on the far right of
the screen on the button with the three dots.
Details on the use of the script editor can be found in SECTION 12.8: “SCRIPT” TAB.
Here you can input a tooltip and a help text for the F1 key. The help texts can
be in different languages, see also SECTION 42: LANGUAGES (LOCALIZATION).
If a Webpage is entered into the Hyperlink field in accordance with the syntax
www.innotec.de, the help text is ignored and this Webpage is displayed
when [F1] is pressed.
16.5.2 Own Information window in the event of invalid input for the
attributes
17.1 Frames
Option “Title visible” and “Title” field
If the Title visible option is switched on, input in the Title field is visible.
Frame type
Changes the appearance of the frame.
17.2 Button
No settings concerning display.
17.3 Checkbox
Text alignment
Self-explanatory.
The Unit area is only displayed if a Unit had also been selected in the proper-
ties on the General tab.
Unit
Determines how the Unit field functions:
• Fix
If the option is marked, the unit cannot be changed in the display. The unit
can be changed internally (an automatic conversion is done if everything has
been configured correctly). But the same unit is still to be seen on the tab.
A fold-out menu appears if this option is not marked. There all the units that
belong to the same group of units, such as the unit that was input in the
properties of the attribute, are offered for selection.
• Length
The attribute has a special total length that can be changed as a whole by
dragging.
The Length option determines the absolute length of the Units field. The
amount of space available for the input field is thus made correspondingly
smaller. The length of the title of the attribute is not affected as long as there
is meaningful input. (An input is not meaningful if no space is available any
longer for the input field.)
• Product, request combination
If an attribute is relevant for product data, an additional information field
pops up, within which the product template is visible (see SECTION 61.3.2:
PREPARING ATTRIBUTES). This option determines the proportional length of the
field.
• Length
The Length option determines the absolute length of the attribute title. The
amount of space available for the input field thus becomes correspondingly
less. The length of the units field is not affected as long as there is
meaningful input. (An input is not meaningful if no space is available any
longer for the input field.)
17.8 Description
No settings for display.
17.9 Link
Description length
• Determines the absolute size of the area for the text to be input. The
remaining area is used for the file selection field and the buttons.
• Option Name/Description
Pops up an input field for the length of the name field and displays in
addition the name on the tab.
17.10 Liste
The technical creation of a list specification is complex and as such will be
explained in a separate chapter. See SECTION 18: PROPERTIES: LIST ATTRIBUTES.
If the condition Min < Value < Max does not apply, then the attribute is
given an orange background. The Min and Max fields may also remain blank.
The test of its own area is an input aid and “depends” on the attribute. For that
reason this test is independent of the type of link. In other words, this test is
done both with a dynamic link and with a static link.
18.1 Overview
The technical structure of list attributes (i.e. of objects with SystemType
Specification, type of display: List) is complex.
All remaining entries and settings are taken from the Design of specifica-
tion dialog, especially the created columns and rows.
Columns
The columns of the table (or the rows, if the list was rotated on creation) will
then be added via the Design of specification dialog as additional attributes.
In other words: A list consists of an attribute that serves as a “bracket” and of
a user-defined number of sub-attributes, one for each column:
Rows
The rows within a column are stored as values of the column attribute. In
doing so, you benefit from the fact that, even though an attribute may only
have a single “normal” value (the Value field in the properties window), it
can have as many “Extension values” as necessary.
Please note: The extension values of an attribute are invisible both in the Nav-
igator and in properties window of an attribute!
18.2.1 1.: Creating and editing columns (on the “Specifications” tab)
• Standard table
If a standard table is set, the cell changes into a fold-out menu. However, the
fold-out menu only becomes visible once the cell has been clicked on.
• Catalog specification
This field behaves in precisely the same way as in the properties window of
an attribute.
[Link]
In this dialog window you can link a columns attribute to another columns
attribute. The dialog window basically functions in the same way as in the
properties window of an attribute. However, there is no option to make inputs
that are relevant for products or to set up requirements.
If you have already created some rows, see also SECTION 18.2.2: 2.: CREATING AND
EDITING ROWS (“INDEX” TAB); individual cells will be available in the Linkage for
dropdown menu. See also SECTION 18.2.4: 4.: EDITING INDIVIDUAL CELLS (“SPECIFICA-
TIONS” TAB).
[Script]
Script block IsValueValid
Script block GetDisplayXValue
Script block GetLinkedSpecification
Press [ADD] to create a row (in other words, an “expanded value” for each col-
umns attribute).
• Index
Each row has a sequential index. Click on the arrow-shaped buttons [<] [>]
to run through the rows.
• Description
A text can be defined in the Description field for each row that will
displayed in the row header.
• Description inactive
This greys out the row headers (in which there is the row text) in the table.
Please note that the table text that is the uppermost field in the row headers
is also greyed-out automatically.
Rows can be deleted again with the [REMOVE] button.
• Column
Here you can run through the columns that have been created. A width can
be entered for each column.
• Specifications vertical
As was explained above, in normal cases the columns are created by
creating additional attributes and the rows (in other words, the rows within
the columns) are covered by expanded values.
If this option is activated, then this behavior is reversed. The rows are
created by means of additional columns and the columns are created by
means of expanded values.
Please note that this changes the command scheme by which the cell values
are accessed.
The inverted display only works correctly once at least one column and one
row have been created.
[Link]
You can select in the Linkage for dropdown menu whether you wish to link
the entire column or just certain cells.
Proceed as follows to link a cell:
• Select the desired cell from the fold-out menu.
• In the Specification field you can select a columns attribute by means of
the [...] button.
• Click on the Specification field and append an index to the existing text:
This is a hash sign (pound sign, or #) followed by a number starting from
“0”. Thus #0 reads the first row of the column; #1 reads the second row of
the column, and so on.
The procedure must be repeated and the next index must be input for each cell
that you wish to link.
18.3 Limitations
List attributes can handle a maximum of 200 rows.
This is a new functionality with its own interface that allows attributes to be
linked in the planning view. All objects that are located hierarchically under-
neath the owner of the Mapping table are permitted as links.
19.1.2.2 Preparation
1. Database adjustment:
Select Generate system structure
Execute the first item for Mapping tables: create the node
@O|@Mappingtable.
See SECTION 49.3: DATABASE ADJUSTMENT.
Result:
@System |@O Interface |@Mappingtable Mapping table
19.1.2.3 Interface
Dialog window of a Mapping table:
Icons
At the top of the Mapping table there are three icons.
Navigate ...
The usual navigation menu for the Mapping table itself.
If you have set attributes in the Mapping table, these then have their own nav-
igation menu in the context-sensitive mouse menu. Bring that up by
right-clicking in the Specification column.
Properties
Opens the basic properties of the planning object of the Mapping table, these
being the name, label, etc.
Save as ...
Saves the Mapping table as an XML file.
General
Call: Select a cell from the Function column of the upper dialog area. Then
right-click, | Script editor command. The mouse cursor should not be inside
the cell when you do this, to avoid double-clicking.
See SECTION 12.8.2: THE SCRIPT EDITOR regarding the Script editor.
'-------------------------------------------------------
'The following ScriptVarCol collection yields the
'row entries for the lower table
For i = 1 To SpecNavDefcol.count
Set Item = SpecNavDefcol.item(i)
For i = 1 To ScriptVarCol.count
Set Item = ScriptVarCol.item(i)
Output "Sourceobj:"+
item.ObjectNavigator.NavDescriptionOneLine
Output "Property : " + Cstr(Item.PropQueryConst)
Output "Index : " + cstr(item.ScriptSpecValIndex)
Output "Unit : " + item.ScriptUnit
Output "Variable name : " + item.ScriptVarName
Next
Please note: If a property has been set by means of a script, then the SetChan-
ged method must be called up subsequently at MappingTableOwner so that
the archive is updated accordingly. This is done as follows in the Object
Debugger:
a.SetChanged
You must know the following as well if you now undertake to make any
changes to the Mapping table by means of a script:
Set index
Either the index that had been input in the script is used or else -1 is used for
the simple edit fields (SUIEdit).
Change object
If you wish to change either the source object or the target object, you must
work with ObjectNavigator.dll in which you set the individual steps cor-
respondingly.
Set unit
Unit.Name is always used.
PropertyConst
Corresponds to the Property-Query constants.
The function and variable name are strings that you also enter in the columns
when editing.
Linked attributes
A “linked attribute” is an attributes that can automatically or manually take
over or compare the contents of another attribute. Attributes with a link are
also called “target attributes”.
Please note that this involves two attributes in which only the contents are
matched / compared.
19.3.1 TValue
Appends the values of various attributes.
Toggle the tab into working mode and then enter the calculation formula
directly into the attribute. The formula is only evaluated at the planning
object.
Calculation example
=TValue("VDS.VS009") & "-" & TValue("VDS.VS040")
TValue
Returns the DisplayValue of a neighboring attribute (same CDevice).
Optionally, the function can have a unit inserted as text so as to always retain
the same unit if so required.
The index of an attribute value can be entered as the third parameter if the
attribute has “XValues”.
Example attribute: @3D|@PPC|@CTS|1|60|61|1|02|A|1010
19.3.2 CatStd
Standard catalog
Here a base object is selected that must fulfil the following conditions:
• Class: Data set
• StdVal dimensions specifications tab
On this tab there is a list attribute that corresponds to the requirements of the
nominal width-dependent tables.
The position of the selected base object is entered relative to the standard cat-
alog set in the project options.
Column
Selects the column in the list attribute.
Nominal width ... , 2. Nominal width
Selects the row in the list attribute. The rows correspond to the nominal
widths.
Result
A string is created automatically from the above settings.
1. Param1
Param1 stands for the standard catalog, or in other words, the base object that
had been set in the Standard catalog field. In this case it is not the System-
FullName of this base object that is entered but instead a special syntax.
Norm VSTD
Nominal VC<connector number>2
pressure
Connector VC<connector number>3
form
--- Name of the base object
For example: If the entry “1. connector ” has been selected in the “Nominal
width from connector ” field, you would then get the following
= CatStd("PP.30.%VSTD%.%VC13%.%VC12%", "d", 1 )
Exactly the same case, but this time the entry “2. connector ” has been
selected:
= CatStd("PP.30.%VSTD%.%VC33%.%VC32%", "d", 3 )
You can see the differences between VC13 and VC33 and between VC12 and
VC32. Only connectors 1 to 4 are permitted.
2. Param2
The name of the column in the list attribute
3. Param3
Connector number of Nominal width .
4. Param4
No data is lost in such a case. The user is informed of the collision and can
decide whether the duplicate attribute is to be deleted.
Example
A Test attribute with the values Yes and No is provided within the base
object. This attribute is set to Yes or No for each planning object, and thus it
is checked in. If there is a large amount of data – to take an example, 10,000
data records – the Test attribute is checked in, or created, 10,000 times. It
would be more efficient if the attributes only had to be created twice – once
for Yes and once for No – and all that was needed was a reference to one of
those two characteristics in the planning objects.
This procedure is called “Instance building” within Comos.
A new base object is created locally for this setting up of instances, under
which a tree is created, within which the instances are managed. Since this
tree takes up memory, the additional overhead for the storage of the tree be
set off against the saving from the reduced number of attributes to be checked
in. It is not worthwhile to change over a whole project to setting up instances
at one go. Setting up instances is useful in the case of attributes that can only
take a small number of values – from a closed list, for example – and which
are used frequently.
Color marking when setting up instances: attributes that have been declared
in this way are highlighted in pale yellow in the input field.
If values are input for the first time here and confirmed with [OK] (and if
there is no corresponding base data branch yet), then a @LocalInstance
branch is created within the planning project.
The following levels are created within this structure branch:
• @LocalInstance
Base object for all instances
• For each base object: the tree structure is set up as in the base project so that
there is exactly one base object in @LocalInstance for each base object that
can set up instances. This base object in @LocalInstance is also called
“OwnerInstance.”
The OwnerInstance is a unique link between the planning objects, the
instances, and the associated base object:.
• Instances
An instance base object: is created for each input that differs. Identical
inputs access the same instance base object.
21 Status Management
Status management is a control instrument in Comos. It is used to classify
objects (and thus data). For example, you can stipulate which data is still to
be processed and which data is already finished.
All the templates for status management are controlled via base objects and
collected under the following common root:
@System |@D Daten |@Status
Up to 13 base objects can be created under this root object, each one of which
represents a special status:
• The description later becomes the status text that is visible to the user.
The status values display the the progress of the data monitoring within each
monitoring sequence - for each status. These status values are created as ele-
ments within the status base objects on the Elements tab:
The Status input group is on the System tab of each base object at the very
bottom:
The number and position of the visible input fields depend on which status
objects had been created under @Status.
A value from 0 to 3 can be entered in the fields. This thus determines which
values appear for planning objects that are created on the basis of this base
object.
The input fields for the status are jointly checked in or inherited. Also, if only
local input is made, all fields are checked in and thus are no longer displayed
recursively. And also vice versa: If you press the [X] button, all the local
inputs are deleted and all fields are inherited again.
• A range attribute Edit [Min Value Max] infringes the checking of its own
range.
• The value of the attribute does not correspond to that of the static link.
If multiple status-related attributes exist in the object, then ultimately the low-
est status value takes effect and is set for the object.
Status display
First of all the display of a status is switched on in the Navigator. Right-click
in the white area of the Navigator and select | STATUS DISPLAY
All the objects in the Navigator are colored once you have switched on one of
the status types. The colors symbolize the relevant status level. The status
level describes the progress of the data monitoring within a monitoring
sequence (meaning: within a status).
The relevant color of an object in the Navigator is the same as the color of the
status value on the Status tab in the Properties window.
Effect of checking and setting: see SECTION 21.2.4: STATUS CALCULATION LOG.
End If
mPPStatusSet.Add Popup1, m_CurObject
. . .
End Sub
. . .
Public Sub Shutdown()
. . .
If Not mPPStatusCheck Is Nothing Then mPPStatusCheck.Shutdown
Set mPPStatusCheck = Nothing
Another status value can also be the result in other objects as well due to a sta-
tus that had been increased (manually). The Min-Max rule is applied here:
1. If the status was set manually for an object, all the objects lying
unterneath it are given this status as a maximum. Lower status levels are
retained.
2. If the status was set manually for an object, all the objects lying above it
are automatically checked to determine whether they can also be raised to
this status. The check is positive if all the objects lying underneath the
relevant object possess at least the new status per object that had been
checked.
If a status value cannot be set, the Status calculation protocol dialog win-
dow opens up with the appropriate information:
Column Object
This shows in which planning object a problem had been found. If you right-
click on a cell in this column, you are then offered the Navigation menu.
Column Description
The description of the object.
Column Type
The reasons stated in the Inconsistency column are divided into three types.
The following texts can appear here:
• Status value at the object
As was explained above in SECTION 21.2.3: AUTOMATIC STATUS CHANGE rule 1, if
a new status is set, then all the objects lying unterneath the object in question
are given this status as a maximum, while lower status values are kept
unchanged. This type of message occurs if that is the case. You then see
“Lower value at object ” in the Inconsistency column.
• Attribute value
Attributes can be relevant to the status, see SECTION 21.1.3: CONTROLLING THE
STATUS THROUGH ATTRIBUTES.
• Script
There is the option to influence the status management by means of a script,
see SECTION 21.1.4: CONTROLLING THE STATUS THROUGH A BASE OBJECT SCRIPT.
Column Value , Linked value , Value min , Value max
Corrections can be made here at once if this involves information type Attri-
bute value .
“| UPDATE STATIC LINKS” (via the mouse menu)
As was explained in SECTION 21.1.3: CONTROLLING THE STATUS THROUGH ATTRIBUTES,
a static link can also cause an attribute to be marked as inconsistent. The static
link can be subsequently evaluated again by means of this command to deter-
mine if the inconsistency still exists.
22.1 General
The following states explicitly when each script function is triggered. This
means:
Interface: This function is only triggered when the user manipulates the data
via the interface. Example: when an attribute is changed via the Specification
tab. On the other hand, these script blocks are not executed if the data is edited
in another way, such as by a script or an import, etc.
Comos: This function is always triggered, regardless of the way in which the
data is manipulated.
22.2.1 CalcNextName ()
Trigger: Interface
The script block is called when you click the Generate Name / Label auto-
matically icon switch on the device. The script block is called only here.
A new name is computed for the planning object.
Trigger: Interface
Returns the error text and prevents the deletion of an object.
22.2.3 CheckStatus[1-13]
Triggertrigger: interface
The function is triggered when you click on the [CHECK] or [SET] button on the
Status tab of a planning object.
A function has also been prepared for each of the prepared status types:
CheckStatus1 reacts to Status 1, etc.
22.2.4 Connect(Connector)
Trigger: Comos
Is called up when connecting two connectors.
Trigger: Interface
Returns a warning message if an object is to be deleted.
22.2.7 DisConnect(Connector)
Trigger: Comos
Is called when disconnecting two connectors.
The script block is also executed when linking already linked connectors.
Reason: During this action, the connectors are first separated, then connected.
Trigger: Script
Returns the label of the Connector object. Also supports a prefix, e.g. Q?1.
The question mark is replaced by the owner’s label.
Trigger: Script
Verfies whether a pointer is valid.
Validity range: Document system type and Device system type
Please note: Limitations on the Comos-side are fully disabled. If you need
limitations, then these must be programmed independently. Example: If the
IsLocationValid script function is available, then plausibility checks for the
unit pointer are disabled.
Background: Plausibility checks are conducted when a unit or location pointer
is set in the in the Properties window of planning object. Example: When you
set the unit pointer, then it is checked whether the unit comes from the same
branch. If yes, then the unit may not be set as pointer.
Trigger: Interface
Reacts to the attempt to lock or unlock.
Input: Parameter “lock”:
If the user activates the “Block ” icon, True is passed to the script function in
the lock parameter.
If the user clicks the “Released ” icon, False is passed to the script function
in the lock parameter.
Output: String (Warning message)
Please note: Locking or unlocking is not explicitly prevented in the script.
Rather, when the script returns a string, this is interpreted as prohibition or
permission by the script.
Example:
If Lock = True Then
IsLockAllowed = “Locking not allowed”
...
Only due to the fact that a string is returned as a result of Lock = True, Comos
detects that locking is not allowed.
22.2.13 IsReleaseAllowed
Only available at the base object of working layers, see IsReleaseAllowed, S. 5-15.
Trigger: Script
Verifies whether a pointer is valid.
Validity range: Document system type and Device system type
Please note: Limitations on the Comos-side are fully disabled. If you need
limitations, then these must be programmed independently. Example: If the
IsUnitValid script function is available, then the plausibility checks for the
unit pointer are disabled.
Background: When the unit or location pointer is set in the properties window
of a planning object, plausibility checks are conducted. Example: When you
set a unit pointer, it is checked whether the unit comes from the same branch.
If yes, then the unit must not be set as pointer.
Trigger: Interface
Allows you to script the text displayed in the Navigator; returns a string that
replaces the standard Navigator text. As long as not provided explicitly in
NavigatorText, all references are filtered. Example: For base object point-
ers, there double arrow >> and FullName will be filtered.
Also allows you to generate new texts for the existing entries of the | NEW
mouse menu command.
Trigger: Comos
Is called when an object is saved within Comos; e.g. when you click [OK] in
the Properties window (and the object was changed and thus needs to be
saved) or when a new object has been created by a script.
Input: Device
The script is written at the base object, but is executed for a planning object.
Device is used to determine for which planning object the script block should
take effect.
Input: Mode
The mode determines whether the object is only to be checked or whether it
should be repaired as well. 0 = check; 1 = repair.
Purpose: Checks an object when it is saved.
1. Standard checks within Comos:
1.1 Name (unique)
1.2 Label (unique)
1.3 Creation mode
2. All checks that the user has created himself or herself in the script block.
A failed check is triggered by a return message and made known:
If Parameter < Condition Then
OnCheck = “The parameter is invalid”“
If all the checks were successful, then no message is sent. In other words: if
you wish to have positive acknowledgments, you need to use the msgbox,
since each text allocation to OnCheck is interpreted as a failure by Comos. The
allocation:
...OnCheck = “Check successful“
is thus meaningless, since it will also be interpreted as an error by Comos.
Similar functions:
OnEditOK
OnEditOK is only triggered via the interface (via the [OK] button). OnCheck
is always triggered when an object is saved.
22.2.17 OnCreateReferenceDocument()
Trigger: Comos
Event is triggered on automatically referencing a document in a document
group.
For that, in the project options, the Automatic referencing option must be
enabled and a specific name syntax must be complied with.
Trigger: Comos
Event when setting the Reference-Pointer to DocObject. (This function is
only meaningful for base objects of “objects-managing documents”, namely,
interactive reports).
Examples:
- Is triggered when an object is placed,
- Is triggered for an import.
22.2.20 OnEditOk()
Trigger: interface
Event after pressing the [OK] button of the device or document properties
screen.
Output:
Integer value = 0: no error text is output
Integer value <> 0: error text from standard table ('SCRIPT_ERRORS')
PdfStamper.SubstituteValue “BenutzerdefinierterPlatzhalter“,
“BenutzerdefinierterWert: “ & RevisionElm.Name
When the document is converted into a PDF file, the placeholder is replaced
by the value assigned in the script. The value is then displayed in the docu-
ment.
Trigger: interface
Event before creating the context-sensitive popup menu.
Input:
Popup: the popup menu object
Context: Context object from which the call is made.
Example: Context.ComosObject returns the current object.
Examples that can be used in OnMenuCreate:
PopUp.OutputDebugString
Sends the entries (IDs) from the context menu to DBMon.
Popup.Delete „PASTE“
Deletes the “PASTE” menu item.
Popup.Disable „PASTE“
Deactivates the “PASTE” menu item.
While writing the script at the base object, you can consider define whether
multiple selection will apply withing the the planning view or not:
MenuContext.ComosObjects
Trigger: interface
Event after selection of an entry in the context-sensitive popup menu
Input:
ID: [String] ID of the entry from the entry from the popup menu
22.2.28 OnNotLongerReferencedByDevice(Device)
Trigger: Comos
Event when deleting the CDevice pointer to the device.
22.2.29 OnProjectOpen(Project)
Trigger: interface
Is called when opening a project.
22.2.30 OnReferencedByDevice(Device)
Trigger: Comos
Is called on setting the CDevice pointer to the device (allocation of a base
object) and on copying the Device.
22.2.31 OnReferencedByDocument(Document)
Trigger: Comos
Is callen when setting the CObject pointer to the document (allocation of a
base object) and on copying the Document object.
22.2.32 OnRelease
Only available at the base object of working layers, see OnRelease, S. 5-15.
22.2.33 OnReleaseDone
Only available at the base object of working layers, see OnReleaseDone, S. 5-15.
22.2.34 OnRevision()
Trigger: interface
The event is fired when a new revision is created for documents. (Properties
window of a document, Revisions tab: [NEW REVISION])
There is a further option for writing a script for this event.
The script OnReferencedByDevice is used at the base object of the revision
or at the objects lying underneath the revision levels.
Reason:
An object is created internally when a new revision is created in the docu-
ment; however, this object is not visible within the Navigator. The CDevice
pointer is set to the prepared revision base objects in the case of this object.
Trigger: Interface
Allows you to create your own entries in the submenu of the mouse context
menu. See OnMenuCreate.
Trigger:
• On setting the implementation pointer for the first time
Nothing is passed as input parameter
• On setting the implementation pointer for the second time
The “old” implementation pointer is passed as input parameter.
• Restore request
The implementation pointer is passed as input parameter.
22.2.38 UserScript[1-9]
Please note that use of the script engine is relatively time-consuming. Use the
predefined script blocks if at all possible.
Purpose:
Blank for user-specific scripts.
These script functions are used in specifications, see SECTION 16.4: SCRIPT TAB. If
you wish to modify an existing script block, you have to click on the button
on the far right with the three dots. Not all the script blocks are available, since
this depends on what Type the attribute possesses.
Trigger: Comos
This is called if the value (including “expansion values”) or the unit of an
attribute is changed. Special case: in the case of an attribute of type Link ,
OnChange is also fired if the link is changed.
Purpose: This script function is used to make changes at other points (other
attributes) if this attribute has changed.
Similar functions:
OnEdit
OnEdit is only called up if the change is to be made within the interface, or in
other words, via the tab. OnChange is always called up.
• IsValueValid (ValueStr)
The function IsValueValid is called up automatically after setting an
attribute value (LostFocus ). If the value that had been set is invalid, a
message is output and the old attribute value is set. The range of validity of
the attribute values can be controlled by a script.
This script block can also be used to control your own help windows, see
SECTION 16.5: HELP TAB.
Trigger: Comos
This is called up if an input is made for a change in the value of the attribute.
Please note that the input does not necessarily lead to a change, since the input
could always be rejected.
Input: Value or XValue
Output: Boolean
Purpose: The input is not accepted at once, but is checked first. The input is
only accepted into Value/XValue and the attribute changed if the check is suc-
cessful. Only then is the time stamp changed. The time stamp remains
unchanged if the input was rejected.
Please note that in the case of attributes that have multiple fields of types
Value and XValue (range attributes) that this script is executed for each of the
edit fields. It is not known from which of the edit fields the information
comes.
Similar functions:
OnChange
By contrast with OnChange, in the case of IsValueValid the input is not
accepted at once but is checked first. (The time stamp remains unchanged).
OnEdit
OnEdit is only called up if the change is made in the interface, or in other
words, via the tab. IsValueValid is always called up.
22.3.1.2 Description
Script block OnShow SECTION 22.3.2.17: ONSHOW ()
22.3.1.4 Checkbox
Script block OnClick SECTION 22.3.2.14: ONCLICK ()
Script block GetSpecification SECTION 22.3.2.7: GETLINKEDSPECIFICATION ()
Script block GetDisplayValue SECTION 22.3.2.5: GETDISPLAYVALUE ()
22.3.1.6 Date
No script blocks of its own.
22.3.1.10List
No script blocks of its own.
22.3.1.11Memo field(ASII)
Script block GetLinkedSpecification SECTION 22.3.2.7: GETLINKEDSPECIFICA-
TION ()
22.3.1.13Query
Script block OnEdit SECTION 22.2.20: ONEDITOK()
22.3.1.14Frame
No script blocks of its own.
22.3.1.15Repeater
No script blocks of its own.
22.3.1.16Button
Script block OnClick SECTION 22.3.2.14: ONCLICK ()
22.3.1.17Signature
Script block OnClick SECTION 22.3.2.14: ONCLICK ()
Script block IsSignatureAllowed SECTION 22.3.2.12: ISSIGNATUREALLOWED
(STRING)
22.3.1.18Link
Script block OnEdit SECTION 22.3.2.15: ONEDIT ()
Script block GetLinkObject SECTION 22.3.2.8: GETLINKOBJECT (TXT)
Script block GetRoot SECTION 22.3.2.9: GETROOT ()
Script block CustomizeTree SECTION 22.3.2.2: CUSTOMIZETREE (TREE)
Scriptblock IsLinkObjectValid SECTION 22.3.2.11: ISLINKOBJECTVALID (SPECIFI-
CATION)
22.3.1.19Tip
If you wish to test the triggering of a script block, all you have to do is to write
msgbox “OK” in the script.
22.3.2.1 CustomizeFileOpenDialog
Available for display type:
File selection SECTION 22.3.1.5: FILE SELECTION
This concerns FileOpenBox.
Trigger: interface
If the icon button to open the file dialog was pressed (MouseUp).
Input: MS object FileOpenDialog.
Purpose: Makes available the properties of MS object FileOpenDialog. See
the relevant help from Microsoft.
Trigger: interface
If the attribute is displayed on the tab.
Input: StdTabItem (Entry of the pick list that was determined for this
attribute.)
Output: True -> Entry is displayed in the Combobox.
Output: False -> Entry is not displayed.
Purpose: An attribute can be specified as a Combobox in the control proper-
ties. In addition, a pick list can be created for an attribute so that the entries of
the pick list appear in the Combobox.
This script block can also additionally filter the entries of the pick list so that
only a portion is actually available within the Combobox.
22.3.2.5 GetDisplayValue ()
Available for display types:
Edit field SECTION 22.3.1.9: EDIT FIELD
Checkbox SECTION 22.3.1.4: CHECKBOX
Edit (Min Value Max) SECTION 22.3.1.8: EDIT: (MIN, VALUE, MAX)
Edit (Min Max) SECTION 22.3.1.7: EDIT: (MIN, MAX)
Trigger: Comos
If the attribute is displayed. (If the DisplayValue method is used.)
Output: String
Purpose: The following must be set for the Link type on the Link tab: “via
script: <GetDisplayValue>”. A value must be determined and transferred
in the script block.
Purpose: The controls are called up from the list and from there a switch is
made to the Specifications tab. Links can be selected for the cells via the
[LINK] button. The following must be set for the Link type: “via script:
<GetDisplayValue>”. (However, the XValue is processed internally.)
The [SCRIPT] button is on the same tab: An XValue must be determined and
transferred within script block GetDisplayXValue.
22.3.2.7 GetLinkedSpecification ()
Available for display types:
Edit field SECTION 22.3.1.9: EDIT FIELD
Memo field SECTION 22.3.1.11: MEMO FIELD(ASII)
Edit (Min Value Max) SECTION 22.3.1.8: EDIT: (MIN, VALUE, MAX)
Edit (Min Max) SECTION 22.3.1.7: EDIT: (MIN, MAX)
Trigger: Comos
If the attribute is displayed. (If the DisplayValue method is used.)
Output: Attribute object
Purpose: The following must be set for the Link type on the Link tab: “via
script: <GetLinkedSpecification>”. An attribute must be determined
and transferred in the script block.
22.3.2.9 GetRoot ()
Available for display type:
Link SECTION 22.3.1.18: LINK
Trigger: interface
If the icon button to open the additional Navigator was pressed (MouseUp).
Output: Object
Purpose: Sets the root object (the object that is currently marked and dis-
played) within the additional Navigator that was opened by pressing the icon
button. The root object must be transferred with Set GetRoot = Object.
Example:
Function GetRoot()
Set GetRoot =
Project.Devices.Item("<Name>")
End Function
22.3.2.11IsLinkobjectValid (Specification)
Available for display type: Reference
See SECTION 22.3.1.18: LINK
Allows you to determine whether a pointer is valid.
22.3.2.12IsSignatureAllowed (String)
Available for display type: Signature
See SECTION 22.3.1.17: SIGNATURE
Returns a feedback message (String as error text of the Note window) if the
user tries to sign, but a signature is not allowed.
22.3.2.13OnChangeOther ()
Available for display types:
Edit field SECTION 22.3.1.9: EDIT FIELD
Edit (Min Value Max) SECTION 22.3.1.8: EDIT: (MIN, VALUE, MAX)
Edit (Min Max) SECTION 22.3.1.7: EDIT: (MIN, MAX)
Trigger: interface
The script function OnChangeOther is only triggered for the tab that is cur-
rently visible.
It is triggered when working in the Properties window of the object on the
Specifications tab or if working in bulk processing with the tab and one of the
following actions has been executed:
If the value (Value) or the unit were changed for another attribute on this tab
and the field was quit (LostFocus).
Special case: If you also wish to trigger OnChangeOther for a tab that is other
than the one that is visible, this can be done by means of a script call. Within
OnChange you make the call in script Workset.lib.OnChangeOther. Syn-
tax: Sub OnChangeOther (ByVal Spec As IComosDSpecification,
ByVal NestedName As String)
First parameter: the owner of the attribute, namely, the CDevice/Device. The
simplest way is to input the key command “.me”.
Second parameter: unique name of the attribute that is being searched for.
The two attributes that interact with each other must be located on the same
object but can be on different tabs.
Purpose: All areas of application.
22.3.2.14OnClick ()
Available for display types:
Button SECTION 22.3.1.16: BUTTON
Checkbox SECTION 22.3.1.4: CHECKBOX
Trigger: interface
This is called up when a attribute of type button is pressed (MouseUp).
Purpose: All areas of application.
22.3.2.15OnEdit ()
Available for display types:
Edit field SECTION 22.3.1.9: EDIT FIELD
Link SECTION 22.3.1.18: LINK
Edit (Min Value Max) SECTION 22.3.1.8: EDIT: (MIN, VALUE, MAX)
Edit (Min Max) SECTION 22.3.1.7: EDIT: (MIN, MAX)
Trigger: interface
This is called up when a field of type Value or XValue is edited and quit again
(LostFocus). In the case of a link this is the point in time when the object was
selected and the path and name of the selected object are displayed in the
value of the link.
Purpose: The user guidance ought to be improved. For that reason the function
only takes effect when the change has been made in the interface, or in other
words, via the tab. If the attribute is changed in some other way, if it is
changed by a script, for example, then this script block is not activated.
Similar functions:
IsValueValid
IsValueValid is used to control the input while OnEdit reacts to inputs.
OnChange:
OnChange is always called up, even when the change had been made by a
script, for example.
22.3.2.16OnLinkobjectSet (Specification)
Available for display type: Reference
See SECTION 22.3.1.18: LINK
Trigger: After setting the pointer
The OldValue parameter is available. If a pointer already exists, it is saved
in this parameter. OldValue is available while the script function is running.
Afterwards, information on the former value of the pointer is lost.
22.3.2.17OnShow ()
Available for display type:
Description SECTION 22.3.1.2: DESCRIPTION
Trigger: interface
This is called up if the description (label) is displayed on the tab. In other
words: the script is not activated if, for example, the description is displayed
via the Navigator or in a report.
The following four script blocks can only be used in connection with edit
mode “Graphical user interface with scripts ”. The attribute must be a
form of display that has a value available.
22.3.3.1 GetScriptUnit ()
Trigger: Comos
For read access to the actual unit. (It is thus used, for example, for display or
evaluation.)
Output: Unit
Purpose: The attribute thus fetches the unit from the script.
22.3.3.2 GetScriptValue ()
Trigger: Comos
For read access to the actual value. (It is thus used, for example, for display
or evaluation.)
Output: Value
Purpose: The attribute thus fetches the value from the script.
Input: User input value; thus the value is only processed in the script and is
not written to the attribute. In other words: after the processing in the script,
the attribute has the value returned from GetScriptValue.
Purpose: The attribute thus transfers the user input to the script.
22.3.4 Examples
For I = 1 to Elms.Count
Set Elm = Elms.item(I)
If Elm.InheritStatus = "E" Then
Elm.InheritCheckIn
End If
GetControlProperty, SetControlProperty
SetControlProperty (PropertyConst, vNewValue-String)
• Write:
workset.lib.sui.CtrlProperty(PropertyConst, Spec) = xy
• Read:
from = workset.lib.sui.CtrlProperty(PropertyConst, Spec)
The units of all attributes of ComosObj are converted (not only the OwnSpeci-
fications), for ToBritish=True from metric to British, otherwise vice-
versa.
– The results of the query are written into a virtual table, a so-called “data
matrix”.
In other words: The number of rows is the same as the number of queried
Eingangsobjekte (basic quantity). The number and type of the columns is
the same as the number and type of information items queried.
– The calculation of the table cell takes place at the earliest when the cell
is read. This reading can have the following reasons, for example:
this row appears in the Object Browser (see the following),
this row appears in an Evaluation Report,
the row is checked while the data is sorted or filtered,
etc.
In other words: If you display a query, for example, in an Object Browser,
then initially only the visible part is calculated. This speeds up display.
– The Comos query is initially “virtual”. The calculation of the query is
completely independent of the screen display and can run in the
“background”. Advantages: If required, the results of this query can be
processed further in EDP without the need to use a time-consuming
display.
– The query as such can work with any type of object and theoretically
could also work with any type of object outside of Comos.
– The rules by which the query and the calculation are carried out can be
saved and read as archives.
3. Optional: Visual display
– The form of display can whatever you wish. As a rule a query is
displayed with the Object Browser that is supplied as well.
Object Browser
The Object Browser displays the information from a query. The Object
Browser resembles an Access table in its form of display:
Normal users will as a rule only come into contact with object queries via the
Object Browser. For that reason you can easily get the impression that the
Object Browser IS the query. But this is not the case. As described above, this
involves only one of the possible forms of display of the query.
It is just as easy and safe to display object queries in the form of an Evaluation
Report as well, for example. In this case a query can no longer be recognized
as such among many others.
In principle you can also work within the Object Browser. Depend on the set-
tings in the Object Browser, you can input text and select values, etc., in the
table.
The Object Browser is used almost everywhere throughout Comos. It is the
usual way of displaying information in Comos. The fact that in reality a table
is a query and is displayed by means of the object browser can be seen from
the fact that one of the following symbols is visible at the bottom left:
Standard queries
Standard queries are used to:
• Enable the user input by which the query is formulated. The primary task
here is to determine the quantity of the objects that are evaluated by the
query.
• Execute the query, or in other words, to calculate the results.
• To display the results in the usual way within Comos.
Each standard query is specialized and offers only a portion of the full scope
of all the possibilities for a query. Each standard query has its own interface
to match the special tasks in question.
Since standard queries are restricted to Comos information, they can thus only
be used within Comos. (The query in itself can work with any type of object,
and in theory at least, be able to process information that is outside Comos.)
Standard queries have the following structure:
• A Comos object of system class CDevice/ Device is used as the basis.
• This Comos object contains the Action class and a suitable sub-class.
• The Comos object is given a “special interface”, this being its own separate
interface with its own capabilities. From now on a “normal” user only sees
this special interface and the standard query can only be recognized visually
as a CDevice/ Device.
The table-like display of the Object Browser can be seen clearly in the
middle.
Bulk processing
Almost all the usual inputs can be made within the Object Browser (and thus
of course within a standard query as well). In very special cases the entry
options available within the Object Browser are not sufficient, and bulk pro-
cessing can be used in such cases.
Example: The graphic display of information. For example, that also concerns
the graphic display of attributes on the basis of tabs.
Bulk processing is used to query specific Comos information, to display it in
the usual way within Comos, and to be able to process the data easily and
safely. Each form of bulk processing is specialized.
Each form of bulk processing uses a standard query within its core. A number
of entry fields, menu bars, etc., are arranged “around” the standard query.
If you look closely at this, you can recognize the “planning objects” standard
query man in the left-hand part of the dialog window.
24 Object Browser
24.1 Overview
The Object Browser displays the information of a query. The Object Browser
resembles an Access table in its display:
Each row of the list of objects is based on an evaluated object. You can
derive text information from this evaluated object or also determine
further objects that have a relation to the evaluated object. Example: you
can determine the project from the evaluated object (first column in the
above illustration) or the location owner (second column in the above
illustration).
Information is read from the evaluated object or additional derived
objects and written into the cells. Each item of information written in a
cell is ultimately based on a queried object.
If you right-click on a cell, then you get approximately the same mouse
menu as if you had clicked on the object in the cell within the Navigator.
In particular, you get the Navigation menu and the | Properties command.
You can change the way that the list of objects is displayed, see
SECTION 24.2: DISPLAYING THE LIST OF OBJECTS.
3. Status line
Use drag & drop to move a column to another position. Two red paste trian-
gles appear:
Right-click on any desired column title and select the | OPTIONS command.
You can input the row height directly at the General tab (whole numbers
only):
As a result, gray boxes called Record selectors appear at the left in the list:
Move the mouse cursor to any desired point above the separator line of the
record selectors until the cursor changes into a double arrow:
Hold down the left mouse button and drag the mouse downwards until you
have reached the desired row height. All the other rows are automatically set
to the height that you selected.
Slowly move the mouse cursor in the title bar above the right-hand separator
line of the column that you wish to modify. When the cursor changes into a
double arrow, press the left mouse button and drag the column to the desired
width:
Unlike the case when changing the row height, changing the column width
only affects the column that was selected.
In the case of queries it is possible to input a new value directly into a cell of
the list. Thus queries not only evaluate the Comos data but are also in a posi-
tion to modify Comos data in a simple and efficient way.
To do this, the checkbox Editable must be activated in the Properties window
of a column on the Value calculation tab, see SECTION 24.10.1.3: VALUE CALCU-
LATION TAB. This checkbox is only made available if the contents of the column
can also be edited.
Attributes of the List type can also be modified within the query in the way
described above.
Multiple cells can also be edited simultaneously. Select the desired cells and
then use the [F2] button or the | EDIT mouse command.
Please note: automatic conversion
Old queries are converted in such a way that this checkbox is also activated
for all columns in which the Editable checkbox is available.
If columns have been locked, then no cells can be edited in these columns, and
the locked columns are grayed out.
The result
You can now see a new column, but there is not an entry for each row in the
column. If the cell is blank, then either nothing had been entered in the in
attribute or else the object does not possess this attribute.
You can tell via the mouse menu which of the two cases applies. Right-click
in the blank cell:
• If the attribute exists but is blank, then you get the | NAVIGATE | ATTRIBUTE
mouse command, among others, in the context-sensitive mouse menu for
the cell.
• If the attribute does not exist for this object, you do not get this mouse
command.
24.5 Sort
Interaction with Sort / Filter through the combined dialog window
There is a Sorting/Filter dialog window in which sorting and filtering can be
done simultaneously. This combined dialog window is the main controller for
all filtering and sorting.
The Sortelement dialog window described in this section always relates to
this main controller and offers in addition only a subset of the control options.
In other words: if a form of sorting has been set in the Sortelement dialog,
this form of sorting also appears automatically as a row in the Sorting/Filter
main controller.
You should therefore only use the Sortelement dialog if it involves a very
simple form of sorting, and otherwise you should always use the main con-
troller. See Sorting/Filter, P. 24-10.
In the Sorting/Filter main controller there is also the option to set a lock and
thus prevent changes from being made. If the lock has been set, then the | SORT
command is no longer available either.
Operation
Right-click in the column header and select the | SORT menu.
First of all the quick sort options | ASCENDING and | DESCENDING are offered.
This saves you from having to open the Sorting element dialog window and
making the corresponding decision there.
The Sorting element dialog window is opened with the | EDIT command and
a whole series of further options are made available in addition to “Ascend-
ing” and “Descending”:
Effect
An active sort is displayed by the letters “AZ” and “ZA” respectively in the
column headers:
Rows are always kept together. If a sort has been set in a column, then the
entire table is arranged correspondingly in rows.
Sorting in multiple columns has a sequential effect. If a sort is first set in col-
umn B and then in column A, then the sort is carried out first in accordance
with B and subsequently within this in accordance with A.
If sort B is deleted, then only sort A takes effect and the table is rebuilt corre-
spondingly.
Multiple sorting
It is possible to call up the | SORT command several times one after another in
different columns. The sorting then takes effect the order in which it had been
set up. Different sorting sequences thus of course produce different results.
This method of operation has the disadvantage that you cannot tell in what
order the sorting had been set up for. If you wish to set up multiple sorts, then
you should use the Sorting/Filter main controller, see Sorting/Filter, P. 24-10.
24.6 Filter
Interaction with the combined Sorting/Filter dialog window
There is a Sorting/Filter dialog window in which sorting and filtering can be
handled simultaneously. This combined dialog window is the main controller
for all types of filtering and sorting.
The Filter element dialog window described in this section always relates to
this main controller and in addition only offers a subset of the control options.
In other words: If a filter has been set in the Filter element dialog, then this
filter also appears automatically as an AND row in the Sorting/Filter main
controller.
If there is already a complex input in the Sort/Filter main controller, the
| FILTER command is in fact switched off completely.
Thus you should only use the Filter element dialog if it only involves rela-
tively simple filtering, and otherwise you should always use the main control-
ler. See Sorting/Filter, P. 24-10.
In the Sorting/Filter main controller there is also the option to set a lock and
thus prevent changes from being made. If the lock has been set, then the
| FILTER command is no longer available either.
Operation
Right-click in the column header and select the | EDIT command from the
| FILTER mouse menu.
Case sensitive
Self-explanatory.
Effect
An active filter is shown by bolding the column title in question.
Multiple filtering
It is possible to call up the | FILTER command in succession in various col-
umns.
This method of operation has the disadvantage that you cannot select all the
possible filter links: if multiple filters are set in this way, then of necessity
they can only be AND links. If you wish to set multiple filters, then you
should use the Sorting/Filter main controller, see Sorting/Filter, P. 24-10.
24.7 Sorting/Filter
This command opens a dialog window in which you can input an individual,
combined sorting and filtering process:
The upper and lower window areas are independent of each other, but none-
theless the instructions are carried out in both windows when the dialog win-
dow is confirmed by pressing [OK].
Release/Lock
This toggle switch either permits changes to the settings
(green) or prohibits them (red).
If a lock is set here, then the | SORT command (SECTION 24.5: SORT) can no longer
be used.
Set sorting
The fields can be filled in by means of the drop-down menus. Mouse-click on
the field and select an entry from the list.
Once you have selected an entry in the Column field, the remaining cells in a
row can be changed by means of the buttons above.
Alternative: right-click on a row, | PROPERTIES command. The Sorting ele-
ment dialog window opens up, which works in the same way as described in
SECTION 24.5: SORT.
Set grouping
An integer grouping index can be entered in the column on the far right:
A grouping creates a list that has been set up hierarchically in which you can
expand and close up the next data level in the same way as in the Navigator.
Please note: Even though the techniques look similar to those used for opera-
tion of the Navigator, the contents are different. In the Navigator the objects
are arranged hierarchically as a rule and the next level that has been folded out
displays the hierarchical “children”. The grouping is completely free within
the query and only depends on your decision, so as a rule it only reflects the
hierarchical relationship purely by chance.
The front fields of the sorting must be filled in first to enable the sorting to
take effect:
If the operators cannot be mixed, you can dispense with the brackets:
Changes the order of the rows. This of course also changes the
result of the filtering.
Any filtering that had been input incorrectly can be deleted line by line via the
context-sensitive mouse menu.
Move rows
These two buttons allow the order of individual selected rows for fil-
tering or sorting to be changed.
Release/Lock
This toggle switch either permits changes to the settings
(green) or prohibits them (red).
If a lock is set here, then the | Filter command (SECTION 24.6: FILTER) can no
longer be used.
Set filters
The front fields can be filled in by means of the drop-down menus. Mouse-
click on the field and select an entry from the list.
• Logical operator
This entry determines the interaction of the individual rows (“filter
elements”). Overall, this must produce a logical expression, as described
above.
• Column
This value determines on which column the filter is to take effect.
• Filter operator
These buttons function in the same way as described in SECTION 24.6: FILTER
above. In addition, these commands are also available from the context-
sensitive mouse menu.
• Filter value
Make an entry in the cell in the Filter value column. Editing mode for the
cell is started by pressing F2 or by double-clicking.
24.8 Options
It does not matter which column was selected with this command. This always
affects the entire Object Browser.
Cell style
This option turns on the usual mode of displaying object information in
Comos: inherited texts ate shown in italics, your own inputs are shown in
blue, etc.
This option requires a relatively large amount of computing time and should
only be selected for small numbers of objects or with a fast PC. Otherwise the
response time will be very slow.
If the results from the Object Browser are only to be shown in an Evaluation
Report, then this option can be deactivated, since it only lengthens the calcu-
lation times unnecessarily.
Row height
The numeric input (whole numbers only) determines the factor by which the
row is to be bigger than a default row.
Record selectors
This option brings up grey boxes at the beginning of each row that you can
use to set the row height manually with the mouse, see SECTION 24.2.2: ROW
HEIGHT.
Change monitoring
If monitoring is switched on, most of the changes automatically appear imme-
diately in the Object Browser.
If monitoring is switched off, changed information only appears when you
manually refresh the dialog window.
This option requires a relatively large amount of computing time and should
only be selected for small numbers of objects or with a fast PC. Otherwise the
response time will be very slow.
This option can be deactivated if you only require information from the query
that will not normally be changed later by other persons. An example of such
a case is provided by the object description texts in the event of translation.
Changes
If this setting has been chosen, no further changes can be made in the Object
Browser. This concerns the order of the columns, filtering and sorting, new
columns, etc.
Please note: This change protection also locks the object or the object prop-
erty respectively against changes made by a script or the like!
The only things excepted from change protection are purely visual changes
such as the row height.
Enable save
If this setting has been chosen, changes can still be made in the Object
Browser, but these changes are not saved and are discarded when the Object
Browser is closed.
Please note: This change protection also locks the object or the object prop-
erty respectively against changes made by a script or the like!
Extended administration
If the [EXTENDED] button is selected, you can control the various rights much
more precisely:
You cam also mark several rows and then lock or unlock the cells all together
by right-clicking:
Extension object
You can input here a DLL of your own (and thus, for example, an interface of
your own) that is executed when the query is started. The DLL is input here
via its ProgID from the Windows Registry.
Column edit offers a full overview of and access to the properties of all the
columns. Nonetheless, this dialog window is not sub-divided into tabs:
Instead, you switch between the various editing options by means of the tool-
bar:
Thus the individual areas correspond to the tabs in the properties of a column.
In addition, column editing offers further information that is not visible in the
properties of a column.
If you wish to simultaneously view the editing options of different
areas, you can switch off the “Only display individually ” button. If the but-
ton has been switched off, then multiple areas can be switched on simulta-
neously as well.
24.8.3.1 General
This area corresponds fully to the General tab in the properties of a column.
See SECTION 24.10.1.1: GENERAL TAB.
If you change anything here, this has exactly the same effect as if you had
made a corresponding entry in the Properties window of the column. None-
theless, at this point you have access to the properties of all the columns.
• Name
Mandatory field. A unique name that is used for internal management of the
column.
• Description
Title of the column in the display. (Optional.)
• Reference
Row object
As described above, each row of the object list is based on an evaluated
object, the “row object”.
[Name of the columns]
Each item of information displayed in a cell is ultimately based on a queried
object. This can also be an object that has a specific relationship with the
evaluated object.
If a column is selected as the reference, then precisely that object is used in
the corresponding cell as the starting point for further calculations and
which is located in the neighboring cell to this designated column.
• Display symbol
Displays the associated icon, if there is one.
• Numeric ()
Changes the way that numbers are treated during filtering / sorting: Either
as number or as character.
Examples: In the case of number 2 is less than 10 in the usual way, while
with character a comparison is made on the basis of characters and thus 10
is less than 2 (in exactly the same way that “Aa” is less than “B”).
• Filter
It is permissible to set a filter for this column.
• Sorting
Activates sorting. Sorting must be activated if Grouping is to be switched
on.
• Grouping
This field is only active if sorting had been permitted beforehand. Activates
grouping.
• Add up
Totals the entries within the column, if this is possible.
24.8.3.4 Extras
This area corresponds fully to the Extras tab in the properties of a column.
See SECTION 24.10.1.4: EXTRAS TAB.
If you change anything here, this has exactly the same effect as if you had
made a corresponding entry in the Properties window of the column.
Nonetheless, at this point you have access to the properties of all the columns.
Alignment
Determines the alignment of the cell contents.
Text wrap
Permits a text break at cell boundaries.
Width
Numeric input as the factor with relation to the value of the adjacent button.
Unit for width
mm: The width is entered directly in mm. This unit is often used when a query
is to be output in a report, since you can likewise input the column widths
there in mm. The output of the report is then exactly as stipulated. Please note:
Nonetheless, the effect on the screen can vary according to the resolution set
and the hardware used, since a PC does not know the mm width of a screen
but only the available resolution points.
Twips: A Microsoft-specific width format.
Row height: The width is calculated as a multiple of the row height. This thus
ensures that the relationship of the page length to height remains constant
even when the resolution changes.
Local ID
Each language has a unique ID within Comos so as to identify this language,
see SECTION 42.1: GENERAL. You can check which language belongs to which ID
in the project options, Languages tab.
Please note: The texts in the queries are supplied for the most part from the
database and not from the Comos interface. Hence if you change the Comos
interface you will still see the column captions, etc., in German and the ID is
still given as 1031. The query is only changed over to the new language of
your choice once you have changed the language of the database.
Charset
Almost all Western languages work with charset 0, so in most cases a zero is
shown here. For example, Cyrillic has charset 204.
24.8.3.5 Languages
This area corresponds fully to the Languages tab in the properties of a col-
umn. See SECTION 24.10.1.5: LANGUAGES TAB.
If you change anything here, this has exactly the same effect as if you had
made a corresponding entry in the Properties window of the column. None-
theless, at this point you have access to the properties of all the columns.
A column appears for each language stipulated within the project. Any trans-
lations appear in the edit fields.
Value by
This entry relates to the Value calculation tab (and in column editing respec-
tively to the area).
Picture by
The Display symbol option can be activated in the Object Browser via the
General tab (and in column editing respectively to the area). The functional
scope is greater if an external DLL is used: It is not only possible to determine
that a symbol is to be visible, but also which symbol is to be visible.
Style by
The Cell style option can be activated in the Object Browser via | OPTIONS on
the General tab. The functional scope is greater if an external DLL is used:
It is not only possible to determine that a graphic style is to be used, but also
which graphic style is to be used.
24.9 Export
Important rules concerning reimporting
Comos has a number of options for exporting. However, there are a number
of specific points that must be noted if the data is to be processed externally
and then reimported into Comos:
• It is only possible to reimport with the standard tools after exporting as an
Excel file or as Access file.
• Grouped objects cannot always be reimported correctly. A correct reimport
presupposes that editable columns only occur at the last stage of each
grouping.
• The exported data may only be edited at those points that are also free for
editing within Comos as well.
In Excel that means cells with a white background. You should not remove
spreadsheet protection in Excel, since this only concerns cells that cannot be
edited anyway.
• The exported data may not be sorted or filtered.
• The first row of an exported table contains important information and may
not be edited.
• The last column of a table that is exported to Access contains important
information and may not be edited.
Making an export
Right-click on a column title, | EXPORT
MS Excel
Output as an Excel file.
MS Access
Output as an Access file.
Text file
Output as a text file.
XML file
Output as an XML file.
You can create your own new column with the | General command.
24.10.1.1General tab
required.
Depending on the type of parameter to be input, you will be helped by a user
prompt.
Returns object
The object calculation of necessity always returns an object. Here it states
what system type the object possesses.
Explanation
In the Explanation column there is always a note to explain how the naviga-
tion steps of the navigation library can be translated into the “normal” Comos
object hierarchy.
Step
The navigation steps are not stored as text in the program but instead are man-
aged as unique numeric codes. There are two reasons for this: firstly, it saves
memory and disk space, and secondly, the Microsoft programming environ-
ment that is required only offers support for codes but not for text constants.
Nav. constant
This designation is the alias name for the internal code of the navigation step.
The steps are examined as follows: The system type of the last step is exam-
ined with respect to the system types of the navigation steps. if a hierarchical
combination of system types has already been forbidden by Comos, then the
entry is shown in grey. Example: No documents are permitted underneath
connectors.
In addition, no plausibility checks are made between the steps.
The extended navigation library examines a given stock of data and derives a
navigation rule from it.
In other words: The desired navigation must already have existed as an exam-
ple and can then be completed here. If subsequent planning data deviates even
only minimally from the example structures, the navigation that had been gen-
erated here will no longer function.
This tab has three areas:
• the quick planner, consisting of the Start object and Target object fields,
• the actual Current path definition area, and
• the Go to support area.
Quick planner
Start object
Using drag & drop, a start object can be set here that must match the system
type for the object and which is determined in the Relation field on the Gene-
ral tab.
Target object
Using drag & drop, a target object can be set here that must have one of the
following hierarchical relationships to the start object:
• The target object is within the direct owner structure of the start object.
• The start object and the target object possess a common owner (apart from
the project object).
If all the prerequisites have been met, the route from the start to the target
object is determined automatically and entered in the lower area in the Cur-
rent path .
Use of the quick planner presupposes a good knowledge of the object model
and the database.
Please note: The end effect is that only the Current path definition area is
evaluated. If the inputs of the quick planner are not transferred there into the
definition area, you have to describe a path manually in the definition area.
Current path
The input that is to be evaluated later is made in this area. The evaluation of
these entries generates the path template that are utilized to determine the col-
umn data. Based on the relevant reference object, these pathing instructions
are execured for each cell and the results are likewise in the new column on a
cell by cell basis if they can be displayed.
Step
The individual steps from the start object to the target object. In the following
step only those objects are offered that actually existed beforehand for the
object. The list of commands is sorted alphabetically.
If an object of system class device exists as the current step and if this device
possesses no connectors, then no connectors are offered either in the follow-
ing navigation step.
In addition, no plausibility checks are made between the steps.
Parameters
If this involves objects that actually exist, then they are offered here as well.
Example: if ConnectorByName is selected as a navigation step, then a check
was made beforehand by the navigation help to determine whether any con-
nectors exist at all. These connectors are offered in the Parameters field.
Nonetheless, it is not absolutely necessary to make a selection from the
parameter list offered and you can also make an input of your own. In this case
no plausibility checks are made.
Object
Here the object that has been reached by the current navigation step is dis-
played. Exactly which objects are displayed later in the planning data depends
on the relevant start object.
Go to
If you mouse-click on a row in the left-hand window area, you get a small
selection of possible subsequent steps in the right-hand window area. The
subsequent steps that are offered are selected such that there is a high proba-
bility that a functioning step sequence will follow. To this end the actual data
is examined again and all the objects that are found are offered.
In other words: The owner, all the connectors, all the elements, etc., that actu-
ally exist for the object that had been clicked on are offered under Go to .
Relation
Here it displays which navigation step was suggested.
Object
Supplies on the left-hand-side the result in the event that this subsequent step
would be selected for the example object from the Object field.
You can transfer a navigation step from the right-hand Go to window area to
the left-hand one by double-clicking on it.
24.10.1.2.3Script type
The options available within a script are significantly more comprehensive
than those provided by the navigation library. The evaluation of a script takes
longer than that for a query via the navigation library. However, there is
always no alternative to using a script if the navigation requires decisions or
iterations (loops).
See SECTION 12.8.2: THE SCRIPT EDITOR regarding the script editor.
Help
This button starts the program help. You can also find a short example.
Explanations regarding the script:
Set ColumnObject = Nothing
The variable is typed.
if Not RefColObject is Nothing Then
A check is made to determine whether the query received any valid data at all.
Set ColumnObject = RefColObject.GUnit
The unit underneath which the object is located is determined regarding the
reference (the object that is being evaluated). This unit is stored in the vari-
ables. This also fulfills the condition that an object must always be passed
back as the result of the script.
This tab corresponds to the Value calculation area in column editing. See
SECTION 24.10.1.3: VALUE CALCULATION TAB.
Value calculation uses the object of the Object calculation for subsequent
information processing. This means that the value calculation cannot supply
a result if there is no correct definition on the Object calculation tab.
Calculation mode
You can select from three different types of text calculation: Standard prop-
erty, script and expression.
1. Standard property
Display
When using the Standard property type of calculation, a selection field
with a list of frequently used functions and properties appears. You can
find details on the functions and properties in the Comos Kernel
Reference.
Editable
Activated: You can make an entry directly in the cell with the Object
Browser. This checkbox is only available if the contents of the column
can also be edited.
2. Script
This option opens a script editor, see SECTION 12.8.2: THE SCRIPT EDITOR. the
[SCRIPT TEST] button to check your script, and the result is displayed in a
popup window. You can get a small programming example by clicking in
the Example tab on the button.
Queries possess an interface with which you can create your own
columns: Function ColumnValue. The ColumnValue function can
return texts and numbers (String, Long, Double).
3. Expression
Expression (CallByName) creates an edit field in which a display
instruction can be made with the usual Comos point notation that covers
exactly one row.
You can now enter the usual Comos short notation in this row so as to
calculate the desired text, such as GUnit.Project.Name, for example.
You cannot use the Expression type if you require loops or more than
one row for any reason. In that case you should then use the Script type.
24.10.1.4Extras tab
This tab corresponds to the Extras area in column editing. See SECTION 24.8.3.4:
EXTRAS.
24.10.1.5Languages tab
Self-explanatory.
24.11.1 Print
This menu item makes available the same functions as those found under the
PRINT button in the toolbar.
24.11.2 Delete
Selected columns can be deleted with this command. Deleting one or more
columns does not change any objects or their properties, but only affects the
display. A safety prompt appears to prevent you from deleting anything acci-
dentally.
24.11.3 Properties
This menu item makes it possible to edit and check the column properties. The
forms of display and controls correspond in appearance and function to the
tabs described under SECTION 24.10: NEW (ADDITIONAL COLUMNS).
25 Standard queries
Standard queries are premade tools in which specific data is searched for and
edited by Comos by means of an object browser. There are differences
between the interfaces of the various standard queries. In general, a standard
query looks like the following:
• Action objects should only be created by means of the mouse menu, see the
following below.
Action objects are divided into the following main groups: decision tables,
imports, queries, scripts. This chapter only covers queries.
There are six sub-classes for queries. Five of them involve a concrete standard
query and in addition there is a general sub-class called Other . This division
is made for historical reasons and should be ignored for the following reasons:
• Queries cannot be completely created by means of the | NEW BASE OBJECT
function. Only “older” standard queries are available as a sub-class. “New”
standard queries always possess the sub-class Other and are then specified
further by Comos. It is therefore not possible to create “newer” standard
queries by creating and suitably configuring a base object.
• Queries should always be created by means of the mouse menu:
No matter which of the base objects on the Base objects tab you select, the
mouse menu will offer, among others, the | NEW QUERY | STANDARD
command:
Double-clicking or using the | OPEN mouse menu command always opens the
special query interface and not the Properties window.
• PrintManager
• Translation
• Script conversion
• Navigator views
• etc.
In the form normally supplied as standard, the Comos standard tools with que-
ries are stored in the base data under node @System |.. : .
Navigation
Opens the Navigation menu. The effect is exactly the same as with the
corresponding commands of the Navigation menu in the Navigator.
See SECTION 10.1.4: MOUSE OPERATION WITHIN THE NAVIGATOR.
Update
This button updates the dialog window and starts a complete recalcula-
tion of the query.
Save / Load
The arrow button opens a selection menu for the extended storage or
loading of settings.
Please note: when you save a standard query, you are not in fact saving data
but only the rules as to how the data is to be searched for. Thus a saved stan-
dard query will return different results if the stock of data has changed in the
meantime. This means that you do not actually “save” a results list when you
press the Save button.
| SAVE | SAVE
The default form of saving data.
| SAVE | SAVE AS ...
Saves a copy of the object. An owner must be set in the Save as field.
Comos automatically creates a name if no name is input. A default
description that can be changed is suggested in the Description field:
If you press [NO], the process is cancelled and you return to the dialog
window of the query. If you press [YES], a dialog window opens in which
you can select the path and file.
Please note: for technical reasons the settings of the various “types” of
standard queries cannot be swapped between one other. It is thus not
possible to set columns, filters, etc., as desired within a standard query for
planning objects and then to subsequently load these settings for a standard
query for base objects.
| SAVE | LOADING OF INHERITANCE SOURCE
This menu item loads the archives of the associated base object, depending
on the inheritance route (CDevice pointer). The menu entry Load from base
object appears in the planning object side and has the same effect.
Print
Clicking on the Printer symbol starts standard printing. The list in the
object browser is printed. Clicking on the arrow to the right opens up
a small menu:
| PRINT | PRINT
Default printing.
| PRINT | PAGE SETUP
Self-explanatory.
| PRINT | PREVIEW
Opens a preview of the table to be printed:
Export
This toggle button makes it possible to export the query list that has
been created.
The effect is exactly the same as with the corresponding commands in the
object browser. See SECTION 24.9: EXPORT.
Script
This button brings up the Script window with the Sub Action in the
lower part of the query display:
The ability to gain access to a cell via two different indices (such as i, j) means
that there is a risk that the information will not be received or will be wrong
as a result of layout changes, since the row and column indices change as the
result of a move. At this point it is better to use strings (such as column.name)
for the parameterization, since they do not change if the layout is changed.
The keywords Workset and Project can also be used.
Search
SEARCH AT ONCE: The results are recalculated after each change.
SEARCH: The results are only recalculated when the button is
pressed.
Start object
All standard queries have a Start object field:.
Default
Field Class: D Device
Field Start object : If the standard query was initially created on the Base
data tab of the Navigator, then “***Not set” is shown here. When the stan-
dard query is created on one of the other tabs for the first time, the owner is
automatically set as the start object. This is also true if the standard query is
subsequently moved on the planning side. The start object is only fixed once
the settings of the standard query are saved.
Columns: Label , Description
Search procedure : Not recursive; Start object : Include start object; Fol-
der : Without folders; Placing : All.
Search procedure
Not recursive
In many standard queries there is the option to set the search proce-
dure. Generally the first option is “Only first level ”. Only in “standard query
planning objects” it is “Not recursive ”.
This difference in name is due to the fact that the options do the same thing
but function differently in technical terms.
The option “Only first level ” stops the search after the first hierarchical level.
The option „Not recursive“ does not inevitably stop after the first hierarchical
level: Comos searches an object of the first level and all objects beneath it,
until one object of the desired class is found. This object can be on the first
level, but also on the third or fourth one. The object is added to the results list
and Comos continues its search at the next object from the first hierarchical
level. If an object from a higher level is of that you are searching for, than
none of the objects from lower levels that also match this class are not
included into the list.
Recursive
Objects from all the subordinated hierarchy levels are displayed.
Back-pointers procedure
This procedure is used to ensure that CDevice and Device are uniquely
and clearly linked in Comos and not only in relative terms. In other
words: Each device is based on a very specific CDevice and each CDevice
knows the devices that have been derived from it. The “BackPointers proce-
dure” does not investigate the planning objects, but their base objects - in
order to determine which planning objects have been derived from the same
base objects as they do.
This option therefore only becomes available once an entry has been made in
the Base object field.
Comparison of Recursive and Back-Pointers : the structure of the data and
the start object determines which of the two options will be faster. Generally
speaking, it takes longer to compute the results if there are more hierarchical
levels to be evaluated.
Thus if it is necessary to search through four or five levels of the tree on the
planning side until the relevant data is found but there is a clear allocation of
the base data (going directly to the branch of the base data pointer), then it is
faster to start from the base data.
Usages
This option is only available if there is an object in the Start object
field that possesses usages. “Usages” are objects that were derived
from a template.
Used twins
This option is only available if there is an object in the Start object
field that is a usage, meaning that it is derived from a template (see
SECTION 49.5: TEMPLATES. All objects of the current project that were derived
from the same template can be found with the aid of this option.
Note on templates
Please note: You must drag the template itself into the start object field. It is
not sufficient to set a branch underneath which there are templates as the start
object.
Special point: If you use a template as the Start object that has been created
in the base project, then all the projects are searched for usages of this tem-
plate. If you use a template that has been created in the planning project, then
only this planning project is searched for.
Start object
Folders
Without folders
Objects with the Folders option are not taken into consideration.
Only folders
Only objects with the Folders option are taken into consideration.
All
All objects are taken into consideration.
Placing
Options
This button opens the dialog to set the search options:
base object has in turn a base object entered for it in the Reference field, then
a jump is made to this base object and so forth until no further references can
be found. The base object found at the end is used.
Default
Field Class: D Device
Field Start object : ***Not set .
Columns Relative name , Description and SystemFullName
Search procedure : Only first level; Start object : Include start object; Inhe-
ritance : All; Hierarchy : All.
Search procedure
Start object
All
Display all base data.
Own (checked in)
Only the object’s own (checked in) base data is displayed.
Inherited (not checked in)
Only inherited (not checked in) base data is displayed.
Hierarchy
CDevices
Display CDevices.
Elements
Only display elements. This does not refer to the Class “Element”
but to objects of the Collection “Elements”. These are objects that are
located on the Elements tab.
Show all.
25.5.1 General
Default
Field Start object : ***Not set .
Columns Document , Description and Type
Start object
Options
Stop
Stops the use of extended functions. In this way you can stop a printing or an
export operation or the printing of a revision file, etc.
Please note that the order of the documents in the query changes according to
the settings, sorting, filtering, etc.
On the other hand, the data has a fixed position in the Navigator and thus the
documents are also in a fixed order. If you begin with the default setting of the
Navigator, then the documents always appear in the same position in the tree,
in the same document group and in the same order.
If the documents are printed out via the “default query documents”, the order
can differ from that which you are “used” to from the Navigator. For that rea-
son the “default query documents” offer the option to change the order of the
printing during printout so that it matches the order in the Navigator. This
avoids the need to sort the documents by hand after they have been printed
out.
Extended functions
See SECTION 41: REVISIONS.
Evaluate documents
You can select a revision step here. If a step that is “further down” in the list
is selected, the steps before it are executed automatically as well.
The window is enlarged with the double arrow and descriptive texts can be
input as well.
Please note: the selected revision steps are only executed for the documents if
this is meaningful. You can better assess the effect of your choice if you first
bring up the | NEW | REVISION column. The current revision step of a document
is input in this column. If the current step does not suit your choice, your
choice will have no effect.
Save as DWG/DXF
Opens a small dialog window:
Operation is the same as the one already explained for “Save as DWG/DXF”.
Report to Word
The selected report is exported to Microsoft Word and its contents are shown
in Word.
Report to Excel
The selected report is exported to Microsoft Excel and its contents are shown
in Excel.
Print current revision file
A TIFF or a PDF file is created when a revision has been concluded. This
option prints out the last available revision file.
The PrintManager can handle reports with different formats (such as A4, A3,
landscape, portrait, etc.) within a print job.
Non-Comos documents (such as Excel, Word, text files, etc.) are likewise
handled in a separate print job.
Print jobs have a name:
• If a single Comos document is to be printed, the print job is given the
FullLabel of the selected document.
• If several documents are to be printed, the job is given the name “Comos
prn_ ” + a sequential number. (Please note: multiple reports coming one
after another are combined into one print job.)
• If a non-Comos document is to be printed (such as a Word document that
has been dragged into the Navigator by drag & drop), the job is given the
name that the relevant application gave it. For example, in the case of Word
and Excel this is the file name of the relevant document.
Default
Field Start object : ***Not set .
Columns Name , Description
Search procedure : Only first level; Inheritance : All; Hierarchy : All.
Search procedure
Inheritance
All
Display (checked in)
Only the object’s own (checked in) attributes are displayed.
Inherited (not checked in)
Only inherited (not checked in) attributes are displayed.
Hierarchy
CDevices
Investigate CDevices to see whether any relevant attributes exist.
Elements
Only investigate elements. This does not refer to the Class Element
but instead to objects of the Collection element. These are objects that are
located on the Elements tab.
Investigate all.
Attributes
Specifications
Only “real” attributes are taken into consideration.
Tabs
Specification tabs are very similar to attributes from a technical point
of view and hence are also covered by the “standard query attributes”.
Specification columns
Lists are set up in two levels in Comos, whereby the first attribute
serves as a container for the entire list. Under it there is a further attribute for
each column that has been created.
All
All of the above options.
Default
Field Start object : ***Not set .
Columns Owner , Name and Label
Search procedure : Only first level; Inheritance : All; Hierarchy : Ele-
ments; Connectors All; From connected... : Off.
Search procedure
Inheritance
All
Display all connectors.
Own (checked in)
Only display the object’s own (checked in) connectors.
Inherited (not checked in)
Only display inherited (not checked in) connectors.
Hierarchy
CDevices
Investigate CDevices.
Elements
Only investigate elements. This does not refer to the Class Element
but instead to objects of the Collection element. These are objects that are
located on the Elements tab
Investigate all.
Hierarchy
All
Used
Free
Please note: This standard query only makes the properties of the list itself
available (Name, Description, Input value). The actual list values are edited
with the following standard query.
Default
Field Start object : Project .
Columns Name, Description and Input value
Search procedure : Only first level; Inheritance : All.
Also, only certain branches of the standard tables can be selected in the Start
object field:
Search procedure
Inheritance
All
A different collection of standard tables is displayed, depending on
which type of project the query was executed in:
System project: system project standard tables
Base project: system project and base project standard tables
Planning project: system project, base project and planning project standard
tables
Own (checked in)
Only standard tables that have been created in the current project are
displayed.
Default
Field Start object : Project . object
Columns Name, Description and Value
Search procedure : Only first level; Inheritance : All.
Also, only certain branches of the standard tables can be selected in the Start
object field:
Search procedure
Inheritance
All
If one value of a standard table is checked in, then the entire standard
table is checked in as well, and hence all values of the standard table.
If this option has been activated, the following standard tables are taken into
consideration in the standard query:
In the system project: only standard tables of the system project
In the base project: standard tables of the base project and the system project
In a planning project: the standard tables of the planning project, the base
project and the system project.
Own (checked in)
Only those values of standard tables are shown that are in the current
project (in other words, either they hav been created here or have been
checked in here).
25.9.1 Translation
25.9.2 Reimport
25.9.4 User-defined
This query shows the most general form of all queries. It is completely freely
configurable.
New columns can be created by clicking on the white area and selecting
| NEW.
The icon bar can be extended with the aid of the DLL extension.
Queries possess interfaces with which you can develop your own queries.
This applies in particular to IExtended.
Example: IExtended: CellValue (Variant)
The variant is managed in the cells, limited to string / numeric.
26 Bulk processing
@System|@O|@Bulkprocessing|@Device
@System|@O|@Bulkprocessing|@Specification
@System|@O|@Bulkprocessing|@Document
@System|@O|@Bulkprocessing|@Connector
Using these tools, documents and connectors can also be changed completely
by means of bulk processing.
If there are deeply nested hierarchical structures in the base data, these are
then made available in the Comos menu bar in the form of submenus.
The old bulk processing option Edit documents is the exception to this,
since it continues to be used.
The old form of bulk processing is offered again in the Comos menu if the
user switches to a project with the old data structure or if he or she deletes the
above-mentioned base data.
26.2.1 Purpose
Bulk processing makes allows the user to rapidly enter and change the general
data and attribute values for large amounts of planning data.
Open the | EXTRA | BULK PROCESSING| BULK PROCESSING FOR PLANNING
OBJECTS| BULK PROCESSING: PLANNING OBJECTS menu.
The left-hand area of the bulk processing window consists of a standard query
for planning objects. See SECTION 25.3: STANDARD QUERY PLANNING OBJECTS.
All the standard dialog fields (Name , Label , Description , Folder ) can be
used in the usual way. The pointers (here: Unit , Implementation , Base
object ) are set in the usual way by using drag & drop.
At the bottom edge of the right-hand window area you initially see a single
blank tab that is labeled General . This bottom area is used to collect, display
and edit the attributes. Specification tabs can be dragged onto this tab by using
drag & drop, see the following.
Changes to attributes only take effect for objects that have a specification tab
and an attribute of the same name as the changed attribute and which have the
same object class.
Thus the root object is specified. In other words: as a maximum, all the plan-
ning objects located underneath the root object are displayed and processed.
Start object(s) : clipboard
It is also possible to set a quantity of base objects as start objects. This is done
by marking and copying a quantity of base objects and then selecting the Clip-
board entry in the Start object(s) field of the query.
Effect: a search is made for all planning objects that possess one of the base
objects or a base object that is located underneath it hierarchically (logical OR
combination).
Often you wish to further restrict the quantity of objects that are displayed
(and hence also processed). This is done by using all the settings that had
already been introduced in SECTION 25.3: STANDARD QUERY PLANNING OBJECTS. It is
the combination of the Start object(s) field and the defined filters that ulti-
mately determines what is displayed – and hence also processed – in the bulk
processing.
• Right-click on an object in the results list of the bulk processing and select
| NAVIGATE | OBJECT.
This drag & drop operation functions both as illustrated above in the case of
attributes in the Navigator, and with attributes that are in the Properties win-
dow of an object. They can also take over complete tabs.
An attribute is only displayed on the working area of the bulk processing if
the last object to be marked in the list also possesses this attribute!
As a reminder: You can also display and edit the attribute to be edited in the
left-hand window area. Do this by dragging the attribute into the column
header of the results list. Whether or not an attribute is also displayed in the
list window does not effect the functionality of the bulk processing. The cell
in the results list remains blank if an object does not possess the attribute.
26.2.4.5 Step 5: Change the general data and change the attributes
General data
In the upper area of the right hand side of the bulk processing are the edit
fields of the general data:
You can change any of the properties with the aid of the edit fields, including
the name of the object. The multiple selection function is available for this
purpose.
If a group of objects has been marked, the Name , Description , Label , Base
object fields, etc., are shown partly in grey and partly in white. The white
background color is used when all the marked objects for this field have the
same value, for example, a common label. Otherwise the field is displayed in
grey. Both grey and white fields can be edited in the normal way.
The color changes to white if a field that had formerly been displayed in grey
is edited and the inputs are accepted: all the marked objects for this field now
possess the same value.
Attributes
The attributes in the working area can be edited in the usual way. The way in
which the attributes are arranged in this scheme can be changed and improved
via the | DESIGN MODE command. (The position and size of the original
attributes are not changed as a result.) In the Design mode, you cannot create
new attributes or delete existing ones. The | DELETE TAB SPECIFICATIONS con-
text-sensitive mouse menu only deletes the tab from the bulk processing
scheme.
Some of the intermediate results are shown in the main Navigator during the
work. But this information has not been written to the database yet, so if you
were to close the dialog window by pressing [CANCEL] the inputs that had been
made so far would be discarded and the display in the main Navigator would
revert to its initial state.
An input is only saved to the database if [Accept] or [OK] are pressed.
27.1.1 General
CDevice / Device
Comos Kernel
XObj
XML Archive
Application Layer
TopQueryBrowser TopQuery
Display Calculation
QueryBrowser Query
CDevice / Device
Comos Kernel
XObj
XML Archive
Application Layer
Display Calculation
Pic. 27-2: XObj between the Comos Kernel and the Application Layer
The XML archive of XObj contains all the necessary information on the mode
of display and the calculation requirements of a particular query. In the case
of an OnLoad operation this information is passed on to the display and calcu-
lation component of the Application Layer for processing. In the case of OnS-
ave the information of the XML archives of the individual components is
collected and written back to the archives of XObj. XObj is a sort of container
for information of all kinds, which is managed within Comos like an object,
and for which typical Comos operations can be executed without actually
affecting the contents.
In the following, we will take a closer look at queries in the Application
Layer. Broadly speaking, queries in the Application Layer can be divided into
a display component and a calculation component, and these can exist inde-
pendently of one another.
XObj
TopQueryBrowser
Display
QueryBrowser
XObj
TopQuery
TopQueryBrowser
XML Archive
Calculation
Query
QueryBrowser Base query
XML Archive
TopQuery
OrigCollection
- VB-Collection
- ComosCollection
- KDictionary
Query
QueryBrowser
Base query
XML Archive
Filter ColumnDefs
FilterItem ColumnDef
FilterItem
ColumnDef
XML Archive
XML Archive
Sort
XML Archive
Cell
SortItem
XML Archive
SortItem
XML Archive
Archives
Almost all the objects of the Query-Tool have their own archives. The
archives are written in XML format and can be processed as files, Strings, etc.
The above-mentioned TopQueries are processed as archives in XObj by
default within Comos. The creation of archives can start at any desired level.
For example, ColumnDefs contains the archives of its items (ColumnDef), or
Query contains the archives of ColumnDef, Filter, Sort. This characteristic
is used in copy methods of the objects. In such cases a (completely) new
object of the same type is created and the archive of the source object is
assigned to it.
28 Decision tables
• Lists
Attributes of type “List” are made up as follows from a technical point of
view (by default): The columns are created as attributes. The rows are
written as extended values into the attributes. Thus if there are four rows,
each of the column attributes contains four extended values. Extended
values are visible in the Navigator, but not in the Properties window of the
columns attribute (the Value field remains blank.) If you wish to edit the
cells of a Comos list, you must therefore read the individual extended values
of the columns attributes.
• Range attributes (Min/Max attributes)
Attributes of type Edit (Min,Value,Max) and Edit (Min,Max) are made up
as follows from a technical point of view: An attribute is created, the Value
is written as a value into the attribute, and Min and Max are written to the
attribute as extended values. All three values are visible in the Navigator,
but only the Value (in the Value field) can be seen in the Properties window
of the attribute.
First of all, the columns attribute or the range attribute respectively are
dragged into the object query on the Design mode tab, optionally either as a
Condition column or as an Action column .
Then single-click twice on the Navigation description field. The cursor is
now in the cell. An index is now appended to the text: a hash sign (#) followed
by a number, starting with “0”:
#0 reads the first row of the column or the Min
#1 reads the second row of the column or the Max
etc.
The procedure must be repeated and the next index must be input for each
extended value that you wish to read or edit.
The index that was input is also displayed in the column title on the Working
mode tab.
All the attributes that are to trigger a reaction are collected in the upper win-
dow area. Pull the attributes into the upper window by using drag & drop.
Here the planning objects or attributes that are to be changed are input:
• attributes
• planning objects
• Interactive Reports
28.4.1 Conditions
In the left-hand window area you can find as many columns as had been cre-
ated earlier on the Design mode tab as condition columns. All the rows are
linked with AND.
In other words: All the values in connection with the operator must be fulfilled
within a row if the action that had been input on the right is to be executed.
Please note: The order of the rows determines the result!
The first row in which all the AND links are valid is then executed.
All the subsequent rows are then ignored.
Entering values
In the starting situation you see a row in which an asterisk has been entered
for each condition column. Mark the relevant asterisk and input a value of
your own.
The input line is inserted automatically at the end after your input.
28.4.2 Actions
In the right-hand window area you can find as many columns as had been cre-
ated earlier on the Design mode tab as action columns. All the rows are
linked with AND.
Please note: If all the conditions given in the left-hand window area
have been fulfilled, then all the actions given in this row are exe-
cuted! Thus all three objects will always be changed if you have entered three
action objects.
Execute
The decision table is started by pressing the [EXECUTE] button. The conditions
are tested and the relevant actions are carried out.
28.6 Applications
Templates can also be created from decision tables.
A @Template path is set up in the planning data and a decision table is created
underneath this branch. If this decision table is copied and inserted into other
planning data, the Application tab shows where the derived decision tables
are located. See the details given in SECTION 49.5: TEMPLATES.
Running applications
If actions also exist for a copy template, then a [RUN APPLICATION] button
appears to the bottom right on this tab. This executes all the decision tables
that had been derived from this copy template. The conditions are tested and
the relevant actions are carried out.
30.1.1 Documents
Application area
Project-specific comparison between the Comos documents in the database
and the files in the file directories.
Application
First open the project to be investigated and then the dialog window.
bak file from being lost, a third file - the new file - is generated as well
during the save operation and this is deleted at the very end once the save
operation has been completed.
Technical sequence: First of all the new file is created. If that was
successful, the crp file is read and written to the bak file. Then the new file
is read and written to the crp file. The new file is deleted at the very end.
• lck files: These are created when reports are opened. Comos marks opened
files in this way so that other persons cannot open the document again with
write access.
[MOVE FILES]
Each project has on the drive its own directory and a Deleted directory within
a project directory. When the button is pressed, all the files of the project with
the file extensions that had been clicked on are moved to the Deleted direc-
tory.
Please note: It is not possible to make a selection in the upper left-hand list
and then to edit only the corresponding administration files. The [MOVE FILES]
command always affects all the files of a project (if the type has been acti-
vated).
Mouse-click in the PlugIn toolbar on the Units conversion icon. The follow-
ing dialog window appears:
30.3.1 Concept
The object test is the central point within Comos in which information
relating to the objects of the Comos database is collected.
• By save
You saved within Comos (the Save icon at the top left or via the | FILE
| SAVE) menu, or you confirmed the input of a dialog window.
• By check
You carried out a object test manually.
• By sync
Database synchronization was run.
• External
The base object pointer of a planning object was changed or a project was
imported.
There are a number of very different actions that can lead to entries being
written to the test list. The object tester is not always visible here; to some
extent the entries in the test list are given in the background. When the object
test is opened the next time, then the user can see all the entries – in other
words, also those entries that had been written in the background into the test
list.
The start of the object test is also reflected in the source that was input in the
test list, see above.
• Manual testing by the user
Open the object test via the | EXTRA | TEST | OBJECT TEST menu. Drag an
object into the Test object edit line by means of drag & drop.
As a rule, this is a special branch of the structure. The object test now tests
all the objects that are hierarchically located underneath the starting node.
The test quantity should also be the entire project.
The result is that all objects with inconsistencies are transferred to the test
list.
• Semi-automatic testing in the case of Properties windows
Comos constantly checks in the background to see whether the details of the
user are correct, or whether incorrect inputs or other errors have been made.
As soon as Comos detects inconsistencies, a lightning flash is shown in the
Status line in the Objects to be checked field. The rule here is as follows:
The lightning flash is displayed if the ErrorObjects number has been
incremented by pressing OK in a Properties window.
Now mouse-click on the Test field in the Status line and select the OBJECT
TEST mouse menu:
The lightning flash in the Status line disappears again after calling up the
program. Do not confuse the lightning flash in the Status line with the
lightning flash within the test list! Even if the lightning flash is no longer
displayed in the Status line, there can still be critical entries (“lightning flash
entries”) in the test list!
• Synchronize databases
Collisions can occur during the synchronization as a result of
inconsistencies in the course of planning: the same objects were modified in
both of the databases to be synchronized. Since Comos cannot know which
modification is correct, these objects cannot be synchronized.
These collisions are documented in the test list. It is not possible to save as
long as there are any collisions present. Please note: You should not simply
cancel or undo an action, especially if it is a long and complicated one, since
the whole work step has to be undone and a great deal of working time is
lost. It is better to correct the inconsistent objects and then save.
• Import project
When a planning project is imported, this project is connected with the
applicable base project. However, the applicable base project can still be
distinguished from the base project with which the project being imported
was formerly connected.
Any inconsistencies arising as a result are displayed in the test list.
• The base project is changed in the case of a planning project
See the justification under the “import project” item.
• Changing the base object pointer in the case of planning objects
The applicable base object can be distinguished from the base object with
which the planning object had been linked previously. The inconsistencies
found as a result appear in the test list.
Example: The planning object has inherited from the former base object an
attribute that was also processed in the planning object (and thus checked
in). The new base object does not possess this attribute.
The result is that the attribute in the planning object is not automatically
deleted, but appears in the test list.
Similar cases can also occur with elements or connectors that have been
checked in.
• Support: project utility programs - [global test]
Checks the entire project.
This test resembles the process in which you drag within the object tester the
project node – the blue globe – and thus check the entire hierarchical stock
of data.
However, a global test will also find objects that no longer have an owner.
These can be objects that are left over as “junk” after unusual user actions.
But there is still a possibility that such objects might still be of importance;
please check for yourself in each individual case here as well.
Open the object test via the | EXTRA | TEST | OBJECT TEST menu.
The following dialog window already includes entries if you had already
made an object test earlier. The information that had been determined in this
way is saved and displayed each time when the object test is opened.
The individual lines of the dialog window are multi-line.
If only one line is visible, use the mouse to drag any
desired line to the desired line height.
Error Each cell of this column has two lines under one another
in which the two information items Error mode and
Error code are given.
30.5.1 ComosReg.exe
30.5.2 DBSync.exe
30.5.3 DBExtras.exe
A database utility program that repairs and compresses Comos Access data-
bases. Set the path to the database to be processed via the edit field.
For obvious reasons, running this program requires exclusive
access to the database, so you should ensure beforehand that no
applications are accessing this database.
30.5.4 DBMon.exe
30.5.5 Dongle.exe
This program provides you with the current data on your software protection
device (dongle), which you require in connection with the licensing of the
software when looking for a solution for problems. You should have this data
ready at hand if you need to contact our Support section.
30.5.6 ExportDB.exe
30.5.7 ImportDB.exe
30.5.8 KeyCode.exe
This program generates a new release code (keycode) for the database. See
SECTION 1.2: DATABASE TYPES / KEYCODE.EXE.
30.5.9 Konverter.exe
30.5.10 LCODBC32.exe
This file is an administrative tool that allows direct access to data in databases
by means of ODBC.
This tool should only be used by experienced system administrators
with the requisite knowledge of SQL, since it is possible to make
far-reaching changes to the databases with it.
30.5.11 MultiCRP.exe
30.5.12 ptmcast.exe
30.5.13 RegMaid.exe
30.5.14 SetLang.exe
Not used in current versions of Comos, and it no longer has any effect either.
In earlier versions the database language was determined by the interface lan-
guage chosen at the time of installation. It is thus only necessary to run this
program if you link new databases under Comos that the former language set-
tings do not have any information on and if you wish to immediately open the
database in the desired language.
30.5.15 SetLicPath.exe
This tool makes it possible to reassign or change over the license server in a
very simple way if this should be necessary. You then get the appropriate
message once the change has ben made.
30.5.16 Sychange.exe
This tool makes it possible to transfer a system project from one database to
another:
Select the database types and databases from which and into which you wish
to transfer the system project. Stipulate the file in which the error output is to
be made and then start the process by mouse-clicking on the arrow key.
Application
A Type is defined in the window of a connector. A standard table is evaluated
in the system project on the basis of the type: ConnectionType[type]. (The
[type] must be replaced by the relevant type name.) The entries that are found
in the standard table are offered in the Properties window of the connector as
subtype.
EE/MCR connectors can be joined with single line connectors. Standard table
SECTION 31.4: @CONNECTIONTYPEI is responsible for single line connectors. See
also SECTION 59.5.2: ALLOCATING ELO CONNECTORS AND SINGLE LINE CONNECTORS.
31.3 @ConnectionTypeF
Complete name of this standard table:
@ConnectionTypeF / Contact point types (FC)
31.4 @ConnectionTypeI
Complete name of this standard table:
@ConnectionTypeI /Contact point types (Single line)
Value 7 Layer.
Value 8 - Not used.
Value 10
When creating a data line, the graphic properties for the line are read from the
standard table of system project @ConnectionTypeI. Any changes in the
standard table do not affect any data lines that have already been created but
only new ones.
For the case that no matching entry is found in the standard table @Connec-
tionTypeI, the system provides internal default settings for all data lines, for
example, “Dashed connection” for W-connector connections.
See also SECTION 57.7.4: DATA LINES AND ACTION LINES.
31.5 @ConnectionTypeR
Complete name of this standard table:
@ConnectionTypeR / Contact point types (P&ID)
For future applications. Controls the subtypes of P&ID connectors.
31.6 @ConnectionTypeS
Complete name of this standard table:
@ConnectionTypeS / Contact point types (Signals)
31.6.1 @ConnectionPossibleS
Identical subtypes may always be connected to one another, hence also if they
have not been explicitly listed in @ConnectionPossibleS.
These values are offered in the project properties: right-click on the globe,
context-sensitive mouse menu | PROPERTIES, Module options tab, “EE/IC
reference layout ” subtab. See SECTION 5.5.4: THE MODULE OPTIONS TAB.
Evaluation: on EE reports. The values of this standard table define for the
links on the documents which document is the predecessor and which docu-
ment is the successor. In other words: which document is “connected” to the
other end of the link.
This connector sequence of the links does not affect the order of the docu-
ments in the Comos collection and also does not affect the order of the docu-
ments in the PrintManager.
The relevant entry specifies whether this constituent part of the link is evalu-
ated, hence if the link is shown in the report.
Contains the bridge types that are available in the terminal strips. The colors
in which the bridges are displayed are taken from table SECTION 31.8.8:
@SYSTEM | @RGB_COLOUR / RGB COLORS.
This table contains the diagram types, which in Comos are equivalent to the
symbol types. This table cannot be created manually. If this table is deleted or
becomes non-functional for any reason, an undamaged system project must
be copied. However, values can be added or deleted manually.
Name Unique string. The entry is case-sensitive. It is thus
permissible to create a list called “TERMINAL PLAN”
and also one called “Terminal plan”. However, it is not
permissible to use the name “Terminal plan” twice.
This string is used as the “symbol type”. Example:
Interactive Reports, options script: SymbolType =
"..."
Base objects, Symbols tab: Type column.
Description Any. For example, this appears in base objects,
Symbols tab: Diagram type column. If there is no
description, then the contents of Value1 are displayed as
an alternative.
Value 1 As with all standard tables, an entry must be made here;
but currently this entry of @DRW_TYPE is not
evaluated internally within Comos.
For that reason value 1 is currently used for another
purpose: LogoCAD IDs that are required for an import
or export operation are input.
Value 2 The default grid when importing or exporting AutoCAD
files.
Value 3 The value can be input in Value 3. If, for example, the
value is set here to “1” (1 = inch), then scaling factor 25.4
is used when converting AutoCAD drawings. Example:
DETAIL_ANS.
Value 4 - Not used.
Value 10
Area of application: controls the detection of objects with a contact mirror and
supplies the symbol for the contact mirror.
Name Unique string
This table was replaced by base standard table @SYSTEM | LINETYPES and
has only been retained for reasons of compatibility.
Name Unique string
The entries in this table determine whether the attribute values of the request
device are displayed in a planning object or those of the real device or both
together .
Name Unique string
Value 1 This value controls the order in which the entries are
offered. In addition, Comos identifies the entries with
them.
Value 2 - Not used.
Value 10
The key names for the color values are saved in this table.
Name Unique string
The name in the Standard database is set up according to
the international standard for the color coding of wires:
BK = Black, BN = Brown; D = Dark, L = Light, etc.
For example, this name is called up in the Value 2
column of @BridgeType.
Description Any. This text is the visible text.
This table is used, for example, by BridgeType , see SECTION 31.8.1: @SYSTEM
| @BRIDGETYPE / BRIDGE TYPES.
Description Any. This text is the visible text. The entries are set up
according to the international standard for the color
coding of wires: BK = Black, BN = Brown, etc.
Value 1 Unique value. Comos identifies the entries with this
value. This value is written to the object.
Value 2 Explanation of the color codes from the description.
The table offers various forms of wire and cable ends to choose from.
The table offers various types of wires and cables to choose from.
See SECTION 59.7.1.6: CONNECTION INFORMATION FOR CONNECTORS: DIALOG WINDOW
“CHARACTERISTICS FOR CONNECTIONS”.
31.8.14.1CheckInKind / CheckInKind
Application: Module options, “PQM options ” sub-tab, dropdown list
Checkin mechanism.
31.8.14.2CheckOutFolder / CheckOutFolder
Application: Module options, “PQM options ” sub-tab, dropdown list
Checkout mode.
32.2 @System
32.2.1 @D Data
32.2.1.1 @GRAPHICS
Detailed information is given in SECTION 43.4: LAYERS IN REPORTS.
Level definitions for Interactive Reports are underneath this base object.
32.2.1.3 @R Revision
Detailed information is given in SECTION 41: REVISIONS.
A revision is used to identify and make traceable the processing status of an
object.
32.2.1.4 @Status
Detailed information is given in SECTION 21: STATUS MANAGEMENT.
32.2.2 @O Interface
32.2.2.2 @Print
Controls the interface of the Print Manager.
32.2.3 @T Tools
33.1 Tables
In Comos external tables can be imported and the data of the tables can be
stored in the form of base or planning objects. Currently Access databases,
Excel spreadsheets and text files are supported. We recommend using Access
databases as an import source.
The table import function uses ADO (ADODB.Recordset).
An import operation consists of the following steps:
4. Execute
The import operation starts for the marked data records. Only now is it possi-
ble to create or change Comos data.
Create: There is the | NEW | NEW DEFAULT IMPORT | TABLE command in the
mouse menu for base data.
Preview of a table
Tree structure:
database
Script area
You stipulate in the drag & drop field underneath which object the copy is
to be created. Simply drag an object from the Navigator into the field.
Input the name and the description of the new copy to be created in the
Name and Description fields.
Properties (only in the case of the planning object)
In the case of the planning object the usual Properties window cannot be
opened. This button brings up the general data of the properties (Name, Label,
Description, Base object).
Administration
Here you stipulate to what extent the planning object of the import operation
may be changed:
Keyboard commands
If you open the tree structure on the left and double-click on a Table object
or on a Query object, the contents are displayed in the preview (here is an
example for Access):
Preview
The rows in the preview can be selected individually with the mouse. In addi-
tion, the usual selection commands are supported:
Database
This field is filled in automatically and shows the name of the source that had
been selected while in Draft mode.
Table / Query
This field is filled in automatically and shows the name of the table that had
been selected while in Draft mode.
The progress display shows the number of data records already imported on
the left and the total number on the right.
Execute / Stop
Execute : The import process begins. Base and / or planning objects are cre-
ated and saved at regular intervals.
The Stop command cancels the import process that had been started. Any
objects that had been saved up to then cannot be undone.
33.1.3.1 Access
Access is fully supported.
If an Access database is selected, then all the Access tables and all the Access
queries of the selected database are offered for import. All the tables and que-
ries that were found are listed with all the table columns. Information on the
type and size is also given with the table columns.
The table or query that had been selected is then imported. Tables and queries
can only be imported singly one after another.
33.1.3.2 Excel
Excel spreadsheets must use a header row. The field names are entered in the
header row.
If an Excel file is selected, then all the Excel worksheets of this file are offered
for import. The worksheets are described as tables in the import object.
The relevant table (Excel worksheet) that had been selected is then imported.
Tables can only be imported singly one after another.
Please note that data from Excel can only be imported without errors if the
columns of the Excel worksheets have been formatted (number, text), before
the first input is made. Otherwise data can be lost during the import operation.
Reason: Excel uses formats of its own such as “General”. However, this for-
mat is not a format but only a function that reacts to inputs and formats the
cells in various ways according to the situation. Standardized software prod-
ucts (SQL, ADO, TrueDBGrid) cannot work with such undefined constructs.
Retrospective changes to the column definition have no effect. Although
Excel displays on the screen the desired effect, in reality it has not changed
the formats at all. If you wish to retrospectively format an Excel spreadsheet,
each cell has to be formatted individually.
Fortunately this sort of undefined Excel worksheet can be imported into
Access and then you can open the Access database in the import object.
The settings that are valid for a PC for ADO import of a text file are in:
\HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\4.0\Engines\Text
When importing a text file, there is no superordinate file in which there are
separate worksheets or tables, unlike the case with Access or Excel. For that
reason the option to select a sub-directory and to import all the text files from
this sub-directory is offered when importing text files.
The individual text files within a sub-directory are offered as tables in the
import object.
The relevant table (= text file) that has been selected is then imported. Tables
can only be imported singly one after another.
• Pull a module in the script to the desired position with drag & drop:
Module Meaning
<Object> = Any desired variable name;
filled with an object.
Set RootObject = Root object in the form of a planning
<Object> object (device). In other words: The
objects in which the imported data is
stored are created underneath this plan-
ning object.
As a rule, the variable is defined in Global
and can thus also be redefined in one of
the other script constituents.
Set RootCObject = Root object in the form of a base object
<Object> (CDevice). In other words: The objects in
which the imported data is stored are cre-
ated underneath this planning object.
As a rule, the variable is defined in Global
and can thus also be redefined in one of
the other script constituents.
Module Meaning
Please note that it is possible to simulta-
neously stipulate in an import procedure a
root object for planning objects with the
RootObject command and a root object
for base objects with the RootCObject
command.
But only one project can be opened! If
planning and base objects are created
simultaneously with the various Set com-
mands, then of necessity these both land
in the same project, thus, for example,
local base objects are created in a planning
project.
Set <Object> = NewOb- Reference object / reference command:
ject(<RelativeName>, Set RootObject
[<Description>])
<RelativeName> = Name plus the speci-
fied path relative to the root object. The
levels of the path are separated with the
default separator. “X|XY”: In this case a
node “X” would be searched for or created
under the root object and an object with
the name XY would be searched for or
created there.
<Description> Optional: Sets or over-
writes the description of the object (here:
XY).
Note also: CNameForNewObject
Set <Object> = NewCOb- Reference object / reference command:
ject(<RelativeName>, Set RootCObject
[<Description>])
<RelativeName> = Name plus the speci-
fied path relative to the root object. The
levels of the path are separated with the
default separator. “X|XY”: In this case a
node “X” would be searched for or created
under the root object and an object with
the name XY would be searched for or
created there.
Optional: Sets or overwrites the descrip-
tion of the object (here: XY).
Module Meaning
Set <Object> = New- Creates a new attribute and/or a new Spec-
Spec(<CObject>, <Nested- ification tab for a base object.
Name>, [<Description>])
<CObject> = The base object at which the
new attributes are created.
<NestedName> = The NestedName is the
combination of the name of the Specifica-
tion tab and the name of the attribute - sep-
arated by a period (full stop).
Example: Chap1.Spec1 is attribute
“Spec1” on the “Chap1” tab.
<Description> Optional: Sets or over-
writes the description of the object.
Please note: The Control properties (loca-
tion of the attribute on the tab, size of the
attribute, etc.) cannot be set.
SpecValue(<SpecOwnerOb- Sets the value of an attribute or overwrites
ject>, <NestedName)>) = it.
<vNewValue>
<SpecOwnerObject> = The object vari-
able of a device or CDevice. (No string
variable with the name of a device or
CDevice!)
<NestedName> = Combined name of the
tab and the attribute. (String)
<vNewValue> = The new value.
SpecUnit(<SpecOwnerOb- Sets the unit of an attribute or overwrites
ject>, <NestedName)>) = it.
<vNewValue>
<SpecOwnerObject> = The object vari-
able of a device or CDevice. (No string
variable with the name of a device or
CDevice!)
<NestedName> = Combined name of the
tab and the attribute. (String)
<vNewValue> = The new value.
Module Meaning
<Variant> = Field(<Field Alternative command for <Variant> =
Name>) StrField
Fetches information from a special cell of
the current row of the imported table.
<Variant> = Variable of type variant
<FieldName> = Name of the column
(field name) or the index of the field, start-
ing with one.
<String> = Alternative command for <Variant> =
StrField(<FieldName>) Field
Fetches information from a special cell of
the imported table.
<String> = Variable of type string
<FieldName> = Name of the column
(field name) or the index of the field, start-
ing with one.
OutputDebugString <Text> Supplies output to DBMon.
CNameForNewOb- Set ... = NewObject
ject(<Index>) = <FullName> Stipulates a base object for the level (or to
be more precise, the planning object that
makes up this node). The base object must
exist already, the base object could also
have been created already at an earlier
point in time while the script was running.
<Index> = Number of the level starting
from the root object. In example “X|XY”:
The node “X” has index 1 and the object
“XY” has index 2. (The first level is
always given the number 1.)
<FullName> = Name plus the specified
path relative to the project of the base
object, e.g. “@U|Anl1”.
As a rule, the variable is defined in Global
and can thus also be redefined in one of
the other script constituents.
Module Meaning
Select Case <...> A normal VBScript routine: Is activated
... when (Case) occurs.
End Select
• Project
Supplies the current project. The command is the quick alternative to
WorkSet.GetCurrentProject.
33.1.4.3 Declarations
This tab displays the functions and properties of the DLLs. A number of
important DLLs have already been entered in the drop-down list:
• ISGlobalObj.dll
The functions and properties that are made available as script modules are
programmed in this DLL. See SECTION 33.1.4.2: SCRIPT MODULES.
• comos.dll
Displays all the functions and properties of the WorkSet. See the Comos
Core Reference.
The following applies for all DLLs:
The last level (functions and properties) can be transferred as follows to the
script: <Ctrl>+drag & drop
Apart from the DLLs offered in the list, any other meaningful DLL can also
be dragged into the edit field. The corresponding DLL is read in and its func-
tions and properties are offered. Nonetheless, the DLL is not saved perma-
nently and must be dragged manually into the list again next time.
33.1.4.4 Example
The following example can be used to import planning objects.
CNameForNewObject(1) = “MyTest|ABC”
CNameForNewObject(2) = “MyTest|MM”
ImpObjectsCount = 0
Sub Init()
' Let us assume that such an object exists already
Set RootObject = Project.Devices.Item("XX3")
End Sub
Sub ImportRow()
RName = "Imp|" + StrField("CategoryID")
End Sub
Sub Finish()
OutputDebugString CStr(ImpObjectsCount) + " objects impor-
ted"
End Sub
End Sub
External XML data can be imported into Comos and stored in the form of base
or planning objects.
The table import function uses DOM (MSXML.DOMDocument).
The data is first read into the action and displayed on the screen for checking,
but it is not actually imported into the Comos database until the second step.
The import process can be controlled by means of a script. This script and all
the other details on a special import process are stored in an “archive” and can
be reused at any time.
33.2.2 Application
In the upper part of the action (1), the XML file to be imported is allocated
either by drag & drop or via the Open XML file window and the associated
XML code is displayed in the field underneath.
The instructions on how the XML data is to be handled are input in the script
area (2) in the form of a VB script.
These two buttons turn on Draft mode (left) and Runtime mode
(right) respectively:
34 Query Reimport
This query makes it possible to reimport Comos data that was exported to
Access or Excel and edited there:
Please note that it is not possible to reimport text files or XML files. The pre-
requisite for the correct use of the query is the input of the local ID (Lan-
guage.LCID) for Comos languages.
The reimport is done in the following stages:
• Read the data into the query interface.
• The data items to be imported are checked individually and the actual
reimport is planned.
• Transfer the data into the database.
A progress bar can be shown during the reading operation, depending on the
data to be imported and the speed of the computer:
– Status “Red”
Importing is not possible! Example: the Comos object no longer exists.
Comos checks all the objects during the import operation to determine
whether they possess all the necessary rights at the project and/or object level.
If that is not the case, the import is rejected at those points. The individual
error messages can be seen in the import log:
35.1 Export
35.1.1 Preparations
In Comos the import and export of DWG data is controlled by an ini file. This
ini file contains conversion stipulations for the colors, lines, layers, etc.
The DWG Mapping Editor creates and modifies such ini files via a Windows
dialog that is easy to understand. The DWG Mapping Editor can be opened in
the Comos iconbar „Plugins “. Thus a correct dxf.ini file must be created by
the DWG Mapping Editor before the export operation.
The import operation always uses the file comos\ocx\reportdxf.ini.
• General tab
DWG/DXF version : AutoCAD 14, AutoCAD 2000.
Polyline : AutoCAD recognizes two different types of “circles”: on the one
hand there are true circles and on the other hand there are circles made up
of line segments. “True circles” can only be fully controlled externally as of
AutoCAD 2000.
AutoCAD 14 , Polyline ON: Circles are exported as polylines (which are
made up of several lines). The circle attributes (color, line thickness) are
exported as well.
AutoCAD 14 , Polyline OFF: Circles are exported as true circles. The circle
attributes are not exported and the circle is drawn in AutoCAD with the
default parameters.
AutoCAD 2000 , Polyline ON: Circles are exported as polylines (which are
made up of several lines). The circle attributes (color, line thickness) are
exported as well.
AutoCAD 2000 , Polyline OFF: Circles are exported as true circles. The
circle attributes (color, line thickness) are exported as well.
• Line types tab
Is not evaluated during an export operation.
$DWG COMOS
CONTINUOUS 1
ACAD_ISO02W100 2
ACAD_ISO03W100 2
ACAD_ISO04W100 4
ACAD_ISO05W100 5
ACAD_ISO06W100 1
ACAD_ISO07W100 9
ACAD_ISO08W100 2
ACAD_ISO10W100 3
• Colors tab
Is evaluated.
• Layer tab
Is not evaluated, but if this has been defined in the Comos drawing layer that
has not been entered yet into dxf.ini, this is automatically saved there.
• Combination tab
Is not evaluated.
35.1.2 Exporting
Reports can be exported as AutoCAD files. This is done by opening the Prop-
erties window of the report and by selecting the [AUTOCAD EXPORT] button on
the Report tab:
Exclusions
• Deactivated (gray optional) objects are not exported to DXF.
• AutoCAD does not support the “ico” (icon) data format. For that reason
icons are converted into bitmaps when they are exported to AutoCAD.
• Dimensions are broken down and are not exported as such as “dimensions”.
• wmf files are not exported.
35.2 Importing
An import operation is carried out in two stages.
1. Importing an object
In this case the AutoCAD object still exists as a totality. This is called an
“embedded object”.
2. Breaking down the object
The AutoCAD object is broken down into Comos objects.
No Comos objects have been generated yet as of this time and also no conver-
sion file dxf.ini or dxf_inch.ini has been evaluated. The display of the
AutoCAD object is done with the aid of Windows and AutoCAD interpreters.
In other words: The display of the placed AutoCAD object is not yet con-
trolled by Comos at this time.
The AutoCAD object possesses its own properties.
You can only make a selection by mouse-clicking in this box. Only then can
the context-sensitive mouse menu be called up. There are the following com-
mands in the context-sensitive mouse menu:
<Default commands>: These function in the usual way.
| CONVERT DWG/DXF DRAWING TO PDS OBJECTS
A stage 2 import is done, or in other words, the generation of Comos objects.
See SECTION 35.2.2: CONVERT DWG DRAWING TO PDS OBJECTS.
| BREAK DOWN DWG/DXF DRAWING TO PLANNING OBJECTS
A stage 2 import is done, or in other words, the generation of Comos objects.
See SECTION 35.2.3: BREAK DOWN DWG DRAWING INTO PLANNING OBJECTS.
| BREAK DOWN DWG/DXF DRAWING GRAPHICALLY
A stage 2 import is done, or in other words, the generation of Comos objects.
However, in this case only report elements are generated. No planning object
or base object. See SECTION 35.2.4: BREAK DOWN DWG DRAWING GRAPHICALLY.
| ANALYZE DWG/DXF DRAWING
No import, but a form of preparation for an import operation. The DWG draw-
ing is analyzed and the results are written out to a new conversion file. The
file has the name of the dwg file: Thus the file Motorantrieb.ini is gener-
ated from the file Motorantrieb.dwg.
Analysis options: If an analysis of the drawing is started, first of all a small
dialog window Analyze DWG/DXF file with two options appears. These two
options are not evaluated. Fundamentally, only the layers and lines that are
used in the ini file are input.
The dwg values now only need to have Comos values assigned to them within
the DWG Mapping Editor. See SECTION 35.2.3.1: DWG MAPPING EDITOR.
PDS stands for “Plant Design System”. This involves third-party software.
Comos PT can import data from PDS. The import operation is done in two
stages:
1. Importing the database objects via the special PDS import interface.
2. Importing the associated graphics and then breaking down the graphics
into PDS objects. The constituent parts of the graphics are then allocated
to the PDS database object.
In other words: The “Convert DWG drawing to PDS objects” option presup-
poses that PDS database objects had already been imported.
The AutoCAD drawing creates base objects and planning objects. These are
placed on the report.
The following import dialog appears:
File version
Self-explanatory.
ini file : In the ini file are the parameters that control the import operation. The
ini file thus determines how specific objects are to look like after the import-
ing (for, example the line thickness, etc.). The ini files are edited with the
DWG Mapping Editor, see SECTION 35.2.3.1: DWG MAPPING EDITOR.
Create base objects only
Only base objects are created; There are no planning objects and also no
report elements.
Correct point of origin of page automaticaly
ON: The lower left-hand point of the AutoCAD drawing to be broken down
is placed at the lower left-hand point of the report. The origin of the report is
not evaluated.
Unit conversion: Controls how large the generated objects are to be shown.
With 1:2 the report elements are shown at double the original size after being
broken down. With 1:0,5 the result would be displayed at half the original
size.
General
In Comos the import and export of DWG data is controlled by an ini file. This
ini file contains conversion stipulations for the colors, lines, layers, etc.
The DWG Mapping Editor creates and modifies such ini files via a Windows
dialog that is easy to understand. The DWG Mapping Editor can be opened in
the Comos iconbar.
You can find a sample file in Comos directories /ocx/dxf.ini and
/dxf_inch.ini.
If changes are made in the DWG Mapping Editor and a dxf.ini file or a
dxf_inch.ini file is saved at another point, then this file is used in the cur-
rent working session. The template files in the ocx directory are used again
after restarting Comos.
When an AutoCAD object is broken down, you have the option to choose a
specific ini file.
Interface
• General tab
Ignore all hidden layers: Layers that have been grayed-out in AutoCAD
are not imported into Comos.
Drawing type : You must select a type of plan, since layers are defined in
Comos according to the type of plan.
• Line types tab
Self-explanatory.
• Colors tab
Largely self-explanatory. Important additional information:
– You can find a corresponding command in the menu: You can call up a
complete sample matching between DWG colors and Comos colors with
“Create DWG color palette”.
• Layer tab
Largely self-explanatory. Important additional information:
– You can find a corresponding command in the menu | SET COMOS LAYER
AUTOMATICALLY. Application: First select a number of rows at the Layer
tab, then run the | COMOS LAYER... command from the Icon menu.
– You can input a “-” (minus sign) in the cells of the Comos Layer
column. The minus sign is translated into the text @IGNORE. All DWG
elements whose DWG layer has been allocated to Comos layer @IGNORE
are not imported.
– Label column: Here you can input additional information, such as the
Headerclass. Example: You can then write a script in which this label in
the texts is evaluated and so specific text would not be created as text
objects but instead as connector objects.
• Combination tab
Here you can identify special objects with the aid of all the convertible
properties (color, lines, layer) and convert them individually. In other
words: Even if only one of the properties is described inaccurately, then the
individual object in question cannot be found and converted.
• AttDef
Are converted into report texts.
• AttribDef
Are converted into attributes.
• Texts made up of text attributes are also generated if the associated block
does not have any graphic elements or Attdefs.
• Dimensions
Dimensions including texts are imported immediately, but only as a graphic.
This has the advantage that the overall display is consistent.
Texts are not generated if the text is an empty string!
Units supported during importing: “inch”, “mm” and “no unit”, If the import
finds that the AutoCAD drawing has the unit “inch”, the ini file
DXF_inch.ini from the OCX directory is used automatically.
Exclusions
• Ellipses are not imported.
The user gets the same dialog window as that described in SECTION 35.2.3: BREAK
DOWN DWG DRAWING INTO PLANNING OBJECTS. Nonetheless, the Only create base
objects option is deactivated, since no base objects are created.
The DXF import is carried out as described, but after that all the report objects
are broken down into report elements and subsequently all the planning
objects that had been generated are deleted.
At the end of it all, the AutoCAD object that had been broken down exists on
the report in graphic form, but no planning objects or base objects have been
created.
36.1 Excel
The Comos Document Interface (CDI) offers two options for data transfer
with MS Excel:
• a pure export to Excel, and
• an export with a subsequent reimport of the processed data into Comos.
36.1.1 Interface
You can find further information on possible settings on the tabs under
→ADDITIONAL PROPERTIES OF OFFICE DOCUMENTS. Save the settings and close the
document.
Now open CDI. If the focus in the Navigator is still on your Excel document,
CDI automatically transfers the document:
This button opens a help screen. You can find further information in the
section →SCRIPT HELP.
For this case there is a ready-made example that you can call up in Comos. In
this example all the attributes and values of an object that is located hierarchi-
cally directly above the document are output in an Excel worksheet.
• Create an Excel document underneath an object (a unit, a device, etc.) as
described:
When you run the script by pressing the button, an overview of the
exported information appears in the right-hand window.
You can open the Excel document in the Navigator for checking and /or fur-
ther editing by double-clicking on it. The data is transferred and is now avail-
able to you under Excel with all the usual functionalities:
When you input a unit (in the example: “µm”), the relevant value is displayed
within Excel as a number (the cell contains the format “Numeric”) and con-
verted. The unit stated within Content therefore does not need to match the
current unit in the Comos attribute. If a unit that does not exist in the units
group is used, then the current unit of the Comos attribute is used automati-
cally.
Data transfer
Data is transferred between Comos and Excel by means of the OnOpen and
OnClose events, i.e., the data is transferred from Comos to Excel when the
Excel document is opened and entered into the Excel worksheet. Data is trans-
ported back when the document is closed.
Safety valve @U1.1.X001 with its Specifications tabs is to serve as a demon-
stration object here:
The procedure is largely the same as before. Create an Excel document at the
desired point and start CDI. The basic layout of the script is the same, the col-
umn headers of the table are stipulated at the beginning, then there is the nav-
igation to the attributes to be output. In this example all the attributes of the
“Technical Data” section are to be output.
The Technical data tab of safety valve
@U1.1.X001 includes a series of attributes,
but no values have yet been allocated to them
apart from “BT0001 Pipe size = 20”. The stan-
dard tables within Comos that lie behind
attributes L05-L07 and L09 and L10, which
can subsequently be made visible, can like-
wise be edited from within Excel.
The following script is a simple example to
show how a detailed interactive transfer of
data between Comos and Excel is possible
with just a few lines of script code:
Sub DoCDI()
'Find Object
Set DocOwner = Document.Owner
'Find tab
Set testab = DocOwner.Specifications.Item(TD)
Here you get the tab with the name “TD“.
The complexity of the navigation depends on the relative position of the Excel
document with respect to the object information to be processed. In the
present example the document is located in the hierarchical substructure of the
safety valve by which the Owner function can directly access the owner of the
attributes to be output.
But since in principle the document in Comos can be located at any desired
place within the object structure, navigation becomes somewhat more com-
plicated as a rule. We therefore recommend using the Set function to define
variables that contain objects that can be reached in partial steps within the
navigation. This procedure reduces on the one hand the amount of inputting
and the risk of exceeding the maximum permissible number of characters per
line and thus the likelihood of errors, while on the other hand this gives a
clearer overall picture and in addition makes reuse much simpler. A good
knowledge of the object structures and of VB and Comos commands makes
it considerably easier to create correct script instructions.
The next thing to do is to specify the headers for the table columns. The Con-
tentFix command is used for this. ContentFix has two parameters, a document
pointer DocPointer and a parameter of type Variant , which can include both
objects and strings, etc. ContentFix is used in all cases where it is not neces-
sary to transport the information back:
’Column header of Excel sheet
ContentFix „sheet1!A1“, „Comos Object“
ContentFix „sheet1!B1“, „Tab“
ContentFix „sheet1!C1“, „Specification“
ContentFix „sheet1!D1“, „Value“
h=2 ’New row
ContentFix „sheet1!A“+CStr(h), DocOwner.Name+“ „
+DocOwner.Description
ContentFix „sheet1!B“+CStr(h), testab.Description
In the next step the individual attributes are collected by a For..Next loop and
their description and value (Description, DisplayValue) placed in the
“Attribute” and “Value” columns of sheet1. The Content command is used
because values are to be taken from the Excel document at this point. It is
important to input all the parameters, even if they are “blank”.
For i = 1 to testtab.Specifications.Count
set SpecEx = testtab.Specifications.Item(i)
ContentFix „sheet1!C“+Cstr(h), SpecEx.Description
Content „sheet1!D“+Cstr(h), SpecEx, DisplayValue, „“, „“
h=h+1
Next
End Sub
After that the line index is incremented and the loop and the subroutine are
concluded.
Start the XML converter with . The following display shows a number of
special points:
• XML display of ContentFix output (1)
• XML display of Content output (2)
• XML display of selection fields under an attribute (3, 4)
1
2
You should now see the following display when you open the Excel docu-
ment:
The standard tables holding the attribute within Comos are transferred to
Excel and can likewise be edited there:
geändert
The changes shown above were made in the Excel document. If the document
is closed now, these changes take effect in the attributes in Comos, as the fol-
lowing illustration makes clear:
36.2 Word
Example task: A series of data items from several objects are to be collected
together and output in tabular form in a Word document.
Create a new document for this purpose, if you have not done so already, at
the desired location. Set the Type to Word document :
You can find further information on possible settings on the tabs under
→ADDITIONAL PROPERTIES OF OFFICE DOCUMENTS.
Open the Word document and create a table with the required number of rows
and columns:
Mouse-click on the desired table cell and select menu item Field from the
| INSERT menu:
If you create field variables in a document to which variables and data had
already been allocated, then an “error message” can appear. Do not worry
about this, Word attempts to generate references to old variables at this point.
Right-click on the message and toggle the field functions within the mouse
menu. In the right-hand part you can then see the complete and functional
entry for the field function.
In order to keep the amount of programming required to a minimum, we have
found that it is good practice to use ColumnTitle + LineIndex as DocVariable
names in tables, as you can seen below:
Now input the field functions into all the desired fields, as shown in the above
example, save the Word document and then close it.
Tip: You can make the work easier if you create a table line complete with
field functions, copying it several times, and then editing the copied field
functions (line index) individually!
A unit was created in the unit branch of the Navigator as a demonstration
object and a number of valves and fittings were allocated to it. The Word doc-
ument was created under one of the valves and fittings:
The aim is to output into the table of the Word document the number, name,
description and the value of attribute VC12 on Specifications tab GD of all the
valves and fittings underneath our object.
In the first step it is necessary to navigate to the unit object by using a script.
This is done by means of the following instruction
Set unit = Document.Owner.Owner
and the associated attribute VC12 from the Specifications tab GD with
Set GDSpec = Element.Specifications.Item(„GD“).Specificati-
ons.Item („VC12“)
Dim rowcount,count,i
rowcount = 5
count = 1
Set Unit = Document.Owner.Owner
For i = 1 to rowcount
Set Element = Unit.Elememts.Item(i)
Set GDSpec =
Element.Specifications.Item("GD").Specifications.Item("VC12")
ContentFix "Pos" + Cstr(i), i
ContentFix "Count" + Cstr(i), count
ContentFix "Name" + Cstr(i), Element.Name
ContentFix "Descr" + Cstr(i), Element.Description
ContentFix "Spec" + Cstr(i), "pressure" +" "+
GDSpec.DisplayValue + " "+"bar"
Next
End Sub
As has already been stated above, handling CDI correctly requires a corre-
sponding understanding of the Comos object model, its classes and its pecu-
liarities as well as a good knowledge of VB Script. You can find more detailed
information on the Comos object model, the Comos classes, functions and
constants, etc., in the Comos Reference Core.
You can store further information as required in the Description 2 and Des-
cription 3 fields on the General tab. The number of pages and the first page
are generated automatically.
The Specifications tab is not already filled, here there is the option for the user
to create his own attributes.
The labelling of this tab is linked to the selection of the document Type from
the “General” tab. The basic functionalities of this section do not differ in
terms of the selected document type.
The owner of the document is entered automatically under the object head-
ing, but another owner can be set and deleted again at this point by using drag
& drop.
36.6 Document
36.6.1 Property
36.6.1.1 Pointer
Example / Syntax:Pointer ( ) as string
Pointer in string form.
36.7 SCGlobal
36.7.1 Function
36.7.1.1 ExcelABC
Example / Syntax:ExcelABC ( ByVal Index as Long ) as string
Calculates the corresponding Excel field designation from a numeric value.
For example, “341” produces “MC” in Excel.
36.7.2 Property
36.7.2.1 Document
Example / Syntax:Document ( ) as IComosDDocument
Read only. Supplies the current document as a Comos object for further use.
Thus, for example, the hierarchically superordinate object can be determined
with Document.Owner .
36.7.2.2 Project
Example / Syntax:Project ( ) as IComosDProject
36.7.2.3 ReportObject
Example / Syntax:ReportObject ( ) as IComosBaseObject
Read only. Supplies the document owner as a Comos object for further use
and thus the option for navigating within the Comos environment by means
of the usual script notation.
36.7.2.4 WorkSet
Example / Syntax:WorkSet ( ) as IComosDWorkset
Read only. Supplies the current Workset as a Comos object for further use.
This makes possible further navigation in the Comos environment with the
usual script notation.
36.7.3 Sub
36.7.3.1 Content
Example / Syntax:Content ( ByVal DocPointer as string, ByVal ComosOb-
ject as IComosBaseObject, ByVal PropName as string, ByVal PropParame-
ter as variant, ByVal PhysUnitLabel as string )
The use of this output command makes possible the transferring back of data
from the MS Office world into the Comos environment.
DOCPOINTER inputs the MS Office target variable,
COMOSOBJECT the associated Comos object,
PROPNAME the name of the object property,
PROPPARAMETER the value of the property, and
PHYSUNITLABEL the physical unit.
36.7.3.2 ContentFix
Example / Syntax:ContentFix ( ByVal DocPointer as String, ByVal
vNewValue as variant )
The output command for Comos data into the Microsoft Office world. The
first parameter gives the corresponding MS Office target variable in string
form, the second the information to be transferred.
Scope of export
Following report elements can be exported:
Lines, circles, text boxes, checkboxes, SubReports, lists, checkboxes, picture
boxes and WMF images.
ExcelMergeAll (bool)
If the variable is not used in the options script, False is used.
If the variable has been set to True, blank text fields are also exported to
Excel. Bank text fields are not exported if it was set to False (this gives better
performance).
Hairline, ThinLine, MediumLine, ThickLine (numeric in mm)
In Excel, there are four line types with different line thickness. VVariables
with identical names as in Excel have been created in Comos. Example:
Hairline=0.2, ThinLine=0.5, MediumLine=0.75, ThickLine=1.0
In this case all Comos lines with a line thickness of between 0 mm and
0.2 mm are regarded as type Hairline, and lines between 0.2 mm and
0.5 mm in thickness are regarded as type ThinLine, etc.
All four variables must be set, otherwise this technique cannot be used. If
none or not all of the variables have been set, then the default setting Thin-
line is used for all cell borders.
37.5 Reimport
It is possible to reimport such exported Evaluation reports.
• The report options script must have the following commands:
Keepscriptrunning = True
ExcelMergeAll = True
ExcelReimportModus= True
38 XML / MotionX
38.1 Overview
No particular XML format is supported within Comos, but in principle any
XML format can be handled.
• SECTION 38.2: NAVIGATOR DISPLAY FOR XML DOCUMENTS
Please note: Since the XML file can contain a great deal of data, it sometiemes
may take several seconds until the nodes underneath an XML Connector doc-
ument can be displayed. The computer appears to have frozen during that
time.
The nodes that are displayed in the Navigator are not objects, since the XML
file has not actually been imported into the Comos data. The XML file is only
displayed in terms of its structure.
Definitions
Comos recognizes XML elements and XML attributes and displays these
XML modules in the Navigator. However, the display in the Navigator has
been simplified and does not correspond to the formally correct definition.
This is how an XML element is displayed:
XPath
XPath stands for “XML Path Language”. This is a query language that has
been developed by the W3C consortium to address portions of an XML doc-
ument. Using a special notation, you can go through the document tree step-
wise, in any direction and from any point. The notation is similar to the well-
known file paths already used in file systems and URLs. Example:
/doc/chapter[5] selects the 5th chapter in doc.
| OPEN
The XML document has no interface of its own and hence cannot be opened
like normal documents. If you select | OPEN command for the XML document,
the XML structure is displayed in a browser window.
The elements in the XML tree structure cannot be edited by using
Drag&Drop. Only the XML document as a whole can be copied in the usual
way by using Drag&Drop.
The term “XML Connector” describes not only a single object or a single
interface. An XML connector consists of several constituent parts: the XML
document, XML document template, object queries. The term “XML Con-
nector” is to be regarded rather as the collective term for a particular technol-
ogy. If we talk of a specific XML Connector, then what is meant is a specific
XML interface that consists of all the required objects.
XML Connectors import and export data that has been structured in accor-
dance with a valid XML format. The XML format need not necessarily cor-
respond to Comos’s own XML format. Hence an important task for an XML
Connector is to handle the mapping between the data model in Comos and the
third-party XML format.
This mapping can be bidirectional, because, as a matter of principle, an XML
Connector in Comos can be used both to read and to write XML data.
About the first task: mapping of a query to specific modules in the XML file.
You can see in the following example that a query is always responsible if
node /Drive/Object exists in the in the XML file:
The same picture also illustrates the implementation of the second task: the
mapping of the cells of a query to a particular XML attribute. It is clear that a
particular column of the query is always responsible if the attribute
“CDevice” is found underneath /Drive/Object:
On the same principle, you can also process data if there are various “collec-
tions” on a level of the XML file. In an ideal case you would then create a
query for each of the collections that is only responsible for this one collec-
tion:
The following two screenshots illustrate the principle. In the first picture you
can see the query that is responsible for the “HSD” modules:
In the second picture you can see the query that is responsible for “SYS”:
Both queries are “responsible” for the same level of the XML file, as you can
see from the identical information in the Start-XML-Node field. But each of
the queries handles a different collection of information on this level.
The queries are called as often as they are needed:
• While query “Q1 Drive” is creating element “Object (Label=F1)”, then the
two queries “OA1 Spec, HSD” and “OA2 Spec, SYS” are called to create
the next level.
• And while query “Q1 Drive” is creating the next element “Object
(Label=F2)”, then the two queries “OA1 Spec, HSD” and “OA2 Spec, SYS”
are called again to create the next level.
The process continues in this way until all the data has been processed.
Please note: the above example has only been provided for clarification and
would not occur exactly like that in actual practice. For example, it is by no
means necessary to identifiy the specifications “HSD...” and “SYS...” with
two different queries. The specifications could be identified just as well or
even better with just one query.
The Comos data that has been identified or created is displayed on the Comos
tab. The counterpart to this tab is the XML tab: the data that has been identi-
fied from the XML file is displayed here.
The Mapping tab is used to create a specific data level in such a way that the
results are the same on both the Comos tab and the XML tab:
The “rows” in the XML document are mapped to the rows of the query. What
is meant by “XML row” here, is actually a level of the XML structure. The
columns of the query are mapped to the following XML nodes (XML ele-
ments or XML attributes):
If you have several nested queries, then in an ideal case the row objects of the
previous query will be the repsective start objects for the following queries.
Reset the start fields (fields Query , XML Collection , Comos Collection )
and edit the next level. The XML Collection and Comos Collection fields
are also to be regarded as counterparts:
If the queries are nested, all subordinate queries are always executed per row.
For more information see SECTION 38.4.6: CONFIGURE XML CONNECTOR.
The template is created as usual in the base project on the Documents tab:
The XML template is the template for the XML document. However, XML
documents need not necessarily have an XML template. For example, an
XML document is created without an XML template if you drag an XML file
into the Navigator by using Drag&Drop. See also Technical effect of using
Drag&Drop on the XML file, P. 38-1.
Attribute “XMLEnvelope”
Tab XML , attribute XMLEnvelope |”Envelope ”
You can enter fixed strings that are built around the imported XML content
with the aid of this specification. Hence this surrounding information is not
mapped either.
For example, that can be the definition of the XML format. An example:
<?xml version="1.0" encoding="UTF-8" ?>
<CAETest xmlns:xsi=„http://www.w3.org/2001/XML-Schema-
instance“>
<Content/>
</CAETest>
Here, you enter the information as to which XML definition is used. However,
this detail is not the basis for the mapping but instead is only used for infor-
mation. The mapping is done by manual configuration of the queries, see the
following.
The Comos data is inserted later at the location of placeholder <Content/>.
Key column
Each query can have multiple key columns. The key columns as a whole serve
to uniquely identify an object within Comos. As an example: in Comos the
total of the name of the object, the unit and the position is always unique. If
you were to create three columns in the query and fill them with the name,
unit, and position respectively, and if all three columns were key columns,
then in that case you could assign any object.
The user thus enters a string in this field, describing precisely when used later
together with other similar link strings which element (or attribute) of the
XML file is being referred to.
In order to be able to enter a meaningful string at this point, you need to know
the structure of the XML file fully, and also what hierarchical structure of
queries is used to make up the XML file.
Text “Description”. If you enter this text as key, then the “Description ”
column of the standard table is used.
A number between 0 and 9. The number stands for the corresponding value
column, hence, for example, “0” for column “Value 1”.
A row is displayed on the MotionX tab for each column in the query.
On the MotionX tab the various default properties of the query are displayed
in the form of columns, these being, for example, the name, description, mas-
ter column, etc. You can find details in SECTION 24: OBJECT BROWSER on the
meaning and use of these properties.
The following sections only cover those columns that come from the XML
Connector technology.
Link
This field has a similar function to the “Link” field described above, see Link
/ XML mapping, P. 38-13.
The only difference is that this “Link” field applies for the XML file as a
whole. To put it more simply: this field identifies the position of the XML file
as such, while the “Link” fields in the column properties serve to find ele-
ments within the XML file.
Show link
Displays in the column header of the query the text from the “Link ” field.
“Master” column
The master column tells the query which cell contains the object that is being
searched for or is to be created in the OrgCollection. There can only be one
master column. The master column is a general function of queries, but can
also be useful for an import operation.
Key column
The key column had already been introduced in the properties of a column,
see Key column, P. 38-13. As was described there, key columns are used to
uniquely identify an object within Comos. Each query can have multiple key
columns.
The key column is required in an import operation so that you can identify the
Comos objects that are to be changed, create new Comos objects or even
delete Comos objects. The key columns do not play a role in an export oper-
ation.
Link (import/export)
Here is the link from the properties of the column, see SECTION 38.4.4.2: PROPER-
TIES OF A COLUMN, EXTRAS. A change here would have the same effect as marking
the column, selecting the | PROPERTIES command and changing the link there.
Mapping table / Column with Comos values / Column with external values
Here are the details from the properties of the column, see Mapping table for
values, P. 38-14. A change here would have the same effect as marking the col-
umn, selecting the | PROPERTIES command and changing a detail there.
The XML Connector Document is the object with which the XML Connector
is made available:
The same XML Connector is used for import and export operations, or in
other words, the same XML Connector Document with the same XML tem-
plate.
38.4.5.1 Properties
Tab “XML Connector Document”:
Template
An XML template can be set here. In particular, the specifications are taken
over from the template and the queries located underneath the template are
evaluated.
File name
An XML file that is then displayed in the Navigator can be set here, see
SECTION 38.4.2: IMPLEMENTATION IN THE INTERFACE.
38.4.5.2 Export
Right-click on the document, | EXPORT:
File name
Here you can search for a file (which is then overwritten) or else specify a file-
name for the new file.
Reference
All calculations and actions necessary to prepare the export operation are
started from this object.
Include in version management
This option has nothing to do with DVM. This option has the effect that an
XML Connector document is created during the export operation. This docu-
ment is linked via the “File name ” field with an XML file that is located in
the documents directory of Comos.
38.4.5.3 Import
Right-click on the document, |IMPORT:
File name
Here you must select the file to be imported.
Reference
All calculations and actions necessary to prepare the import operation are
started from this object.
Delete objects
If this option has been activated, then all the objects that are already in Comos
but are not included in the XML file that is to be imported are deleted.
Create working layer
Creates a new working layer and switches over to it. The data to be imported
is created in the new working layer.
This interface comprises almost all the tabs and functions that could be useful
for MotionX. The functions change the template, i.e. the XML template and
the underlying queries. You must have the necessary rights to be able to work
with this interface, especially if the XML Connector document is located in
the planning project but the XML template is located in the base project.
38.4.6.1 Preparations
In order to be able to work with this dialog window, both the XML template
and the queries underneath it must already exist. The queries are configured
by means of this dialog window.
In addition, an exemplary XML file must exist already. If you wish to use this
section of the manual as an example, then you can create a file for testing by,
for instance, exporting an XML Connector and then opening the resulting
XML file in the dialog on the right. In practice such a method does not really
make sense, but it is quick and uncomplicated.
38.4.6.2 Interface
[...] (Edit queries ) Displays all queries underneath the XML template. Que-
ries can be created (see Edit query container, P. 38-23), deleted, and also edited to
a certain extent (name, description, base object).
Start Comos object
You can drag an object from the Navigator into this field.
Start XMLNode
If an XML file has been selected in the right part of the window, you can now
drag one of the nodes into this field by means of Drag&drop. Initially the top-
most start node of XML file is set.
Tab “Comos”
This tab is a query for planning objects and is also used in just such a way.
The planning objects are displayed here, depending on the “Start Comos
object” field.
This tab can be edited in exactly the same way as the query itself. Any change
at this point is written back to the query. For example, if you insert a column,
then a new line appears on the Mapping tab and the actual query itself also
gets this column.
Tab “XML”
The table on this tab displays the “XML attributes” from the XML field that
has been opened in the right side of the window, or in other words, the leaf
nodes of the XML structure. It is necessary to set the following fields to do
this:
General area, field “Start XMLNode ”
Tab Mapping , field “XML collection ”
Comos combines these two details to set up the XPaths and searches for all
matching XML attributes.
In order to test the effect, we once again recommend to export an XML Con-
nector and to open the XML file created as a result in the right part of the win-
dow. The mapping then matches automatically.
There are two Navigation commands available in the mouse menu. Use these
commands to jump from this tab to the corresponding nodes in the XML file
at the right:
| NAVIGATE | XML NODE
Jumps to the attribute in the XML file.
| NAVIGATE | XML “ROW”
Jumps to the owner of the XML attributes.
Tab “Mapping”
This tab has already been described above in connection with the queries, see
SECTION 38.4.4.3: OPTIONS OF A COLUMN, MOTIONX. The following lists the differ-
ences.
Field “XML collection ”
A node from the XML file (at the right) can be dragged into this field. An
XPath that fills the XML tab is set up together with the details from the “Start
XML Node ” field.
Field “Comos collection ”
This field contains the appropriate query.
Column “Comos info ”
Tab “Script”
A script editor. A number of ready-made examples have been provided for
MotionX.
You can create a new query by means of this dialog. Please note that the query
is created underneath the XML template. If the XML template is located in a
different project than that of the currently edited XML Connector document,
then you also need the appropriate rights for the other project.
38.4.6.3 Application
Starting state
When you use the | CONFIGURE XML CONNECTOR command of an XML Con-
nector document for the first time, then at least the “Start Comos object ”
field is set. In addition, there is at least one query available, otherwise the
| CONFIGURE XML CONNECTOR mouse command would not be available at all.
Everything else depends on the method of operation.
It is possible to open an XML file and then to reconstruct the structure of the
XML file by creating queries.
Vice versa, you can first of all set up a structure of queries in Comos and then
export an XML file.
By default, the queries that are located directly underneath the XML template
get their Comos start object from the XML Connector document. In addition,
the queries pass their row objects in the form of start Comos objects on to the
queries located underneath them.
There is also the option to change these defaults by means of a script.
The topmost queries that are directly underneath the XML template can call
the following two functions:
• “Master_Export”
• “Master_Import”.
If the master methods exist, then they are called. If they do not exist yet, the
default runs.
The following functions are available for all further levels:
<QueryName>_ImportRow
<QueryName>_ExportRow
For that reason you must assign unique names to the queries.
This applies for each row of the current query. If the script method exists, it
will be called for each row. If not, then the default applies: The row object of
the current query is assigned to all queries located underneath the current
query.
Scope: the complete scripting functionality of Comos is available. But it
would be relatively tedious to implement the actual import/export operation
by means of a script. As a rule, scripts are for example used to change the
order of the queries or the OrigCollection.
The CurrentJob
While the query is executed, the so-called CurrentJob is running. You can
retrieve the following information from this object:
• current query,
• OrigCollection of Comos objects,
• XMLNodes at the XML document.
(see below for a description)
New jobs
You can create and start new jobs within the script.
Type of the job object: 'ComosQueryInterface.IXMLConnectorJob'
Properties:
Job.QueryContainer = <query container>
Job.TopQuery = <ITopQuery>
Job.RootComosObject = <query StartObject>
Job.ComosObjects = <query OrigCollection>
Job.RootXMLNode = <RootNode for 'XML-Rows'>
Job.XMLNodes = <'XML-Rows'>
Job.RootXMLNodeCompare = <RootNode for 'XML-Rows' of compare
version>
Job.XMLNodesCompare = <'XML-Rows' of compare version>
Example 1
For example, this is what the revised default case would look like in a script:
Sub Q1_ExportRow(ComosObj, XMLNode)
Set QSubs = CurrentJob.QueryContainer.EnObs("J")
For i = 1 To QSubs.Count
Set NJ = CreateNewJob()
NJ.QueryContainer = QSubs.Item(i)
NJ.RootComosObject = ComosObj
NJ.RootXMLNode = XMLNode
NJ.Export
Next
End Sub
Script templates
The script templates can be called from the toolbar:
' Export:
Set Options = XMLImpExport.CreateJobOptions("Export")
Options.Item("VersionsAdministration").Value = False
Options.Item("ShowFile").Value = True
XMLImpExport.Export <Document>, <FileName>, Options
'Export:
XMLImpExport.Export <Document>, <FileName>, False, True
We recommend that you use only the first version. Because the meaning of
the parameters is implicitly clear in the first version, while in the second ver-
sion you wold have to document the script in order to describe the meaning of
the script and the parameters.
38.5.1 Objective
The MotionX Server is a service developed by innotec, which can control the
Comos XML Connectors outside Comos. To do this, the service starts a
Comos instance, executes all actions necessary in Comos and imports or
exports the required data.
38.5.2 Installation
If FrameWork is not entered in the software list, then the software has not
been installed properly and MotionX Server will not work.
3. If needed: Install WindowsInstaller. The installation (not the operation)
of the MotionX Server requires WindowsInstaller. The necessary file,
WindowsInstaller30.exe (or similar) is available on the Microsoft
homepage or from the innotec Customer Service.
4. Install MotionX Server
Start InstallService.bat. This file contains only one command:
installutil ComosMotionXServerManager.exe
38.5.3 Uninstallation
38.5.4 Administration
General parameters
Name="XMLFile"
At present, only XML files can be processed. The XML file to process will be
searched relative to the MXExec.exe.
Name="XMLConnector"
Searches and starts the Comos XML Connector. The XML Connector must
be located on the Documents tab below “@System |@MXC” (or in the beta
version below “@MXC”)
Name="RootNode" Value="08UZX" ParamType="PathFullName"
The RootNode of the XML Connector is the ReportObject, i.e. normally the
owner. You can specify the following as ParamType:
Example: If there is a “W1” unit directly below the project, then as Path-
FullName you get “08UW1”. 08 = SystemType Device; U = Class Unit, W1
= Name.
Export-specific parameters
The following options are the counterpart to the options in the “Export ” dia-
log window. The effect of these options is described in SECTION 38.4.5.2: EXPORT.
Name="ShowFile"
If the export is started from Comos, then immediately after the export, the
XML file is displayed in Internet Explorer. This setting is not good for a
Server operation and can thus be disabled here.
Name="VersionsAdministration"
Counterpart to “Include in version administration ”.
Import-specific parameters
The following options are the counterpart to the options in the “Import ” dia-
log window. The effect of these options is described in SECTION 38.4.5.3: IMPORT.
Name="DeleteObjects"
Counterpart to “Delete objects ”.
Name="CreateWorkingOverlay"
Counterpart to “Working overlay ”.
Name="VersionsAdministration"
Counterpart to “Include in version administration ”.
Name="DifferenceOnly"
Counterpart to “Manage only difference objects ”.
Name="SaveMode"
0: The import continues to be processed even if an object cannot be saved.
1: As soon as an object cannot be saved, the import is cancelled and all
imported operations executed so far are undone.
The key factor for this is the ability to save the object. If, for example, Comos
is able to correct an error, then an entry is added to the Hint list. However, this
has no effect on the SaveMode.
38.5.4.3 Sequence
In Comos, executable XML Connectors must be prepared. These XML Con-
nectors will be searched at the following location:
Target project (for example, a planning project), Documents tab:
@System |@MXC or direct @MXC under the project.
2.4 The mxc file is checked and. if valid, the parameters are written to a
temporary file.
2.5 The mxc file is deleted and the SharedFolder is released again.
2.6 The MXExec.exe is called with the parameters of the temporary file.
Idle
No
No mxc file in
shared folder? Realease
MXExec process
Yes
Lock
shared-folder
Yes
Generates temp
parameters/delete mxc file
Book a
MXExec process
Unlock
shared-folder
Call MXExec
with parameters
Is MXExec No
runing?
Yes
No Is temporary Yes
response there?
Log.mdb
Station : The work station from where the command is made.
User : The user logged into Windows (not Comos!).
CommandID : ID of the command, as long as this ID is entered in the XML
file.
ActionID : ID of the action as long as this ID is entered in the XML file.
Status : Status of the action, at present: 0 = Successful; 1 = Failed.
MXCFileName : Network path where the command file is located.
mxr files
An entry is made for each executed action.
Status = 0: Action successful
Status = 1: Failed
38.5.5.1 ComosMotionXServerManager.config
<?xml version="1.0" encoding="utf-8" ?>
<Config>
<MotionXServer>
<LogDB>Q:\VSSUSERS\Irina\PT90\BIN\MXExec\Data\Log\
Log.mdb</LogDB>
<SharedFolder>M:\ComosMotionX-Server\
InOutBox</SharedFolder>
<DriveMappings>
<DriveMapping LocalName="M:" RemoteName="//cs01/Public" />
<DriveMapping LocalName="N:" RemoteName="//CW50-01/DB" />
</DriveMappings>
</MotionXServer>
</Config>
Export configuration
For example “MXExecExport.mxc”.
<MXExec Version="1" CommandID="mxcE" >
<Action ActionID="actE" >
<Connection ConnectionString="D:\ComosApp\DB\RelDBV7_1\
comos.mdb" Project="COMOS_ET" WorkingOverlay="S1" />
<Function Class="ComosXMLInterface.XMLInterface"
Name="Export">
<Parameters>
<Parameter Name="XMLFile" Value="\Data\Export.xml" />
<Parameter Name="XMLConnector" Value="XTest" />
<Parameter Name="RootNode" Value="08UZX"
ParamType="PathFullName" />
<!-- for Export -->
<Parameter Name="ShowFile" Value="False" />
<Parameter Name="VersionsAdministration" Value="False" />
<!--
<Parameter Name="Filter">
<Item QueryName="Q1" ColumnName="Object" Value="ABC" />
<Item QueryName="Q2" ColumnName="Unit" Value="XYZ" />
</Parameter>
-->
</Parameters>
</Function>
</Action>
</MXExec>
Import configuration
<MXExec Version="1" CommandID="mxcI" >
<Action ActionID="actI" >
<Connection ConnectionString="D:\ComosApp\DB\RelDBV7_1\
comos.mdb" Project="COMOS_ET" WorkingOverlay="S1" />
<Function Class="ComosXMLInterface.XMLInterface"
Name="Import">
<Parameters>
<Parameter Name="XMLFile" Value="Data\Import.xml" />
<Parameter Name="XMLConnector" Value="XTest" />
<Parameter Name="RootNode" Value="ZX"
ParamType="SystemFullName" />
<!-- for Import -->
<Parameter Name="DeleteObjects" Value="False" />
<Parameter Name="CreateWorkingOverlay" Value="True" />
<Parameter Name="VersionsAdministration" Value="False" />
<Parameter Name="DifferenceOnly" Value="False" />
<Parameter Name="SaveMode" Value="0" />
<!--
<Parameter Name="Filter">
<Item QueryName="Q1" ColumnName="Object" Value="ABC" />
<Item QueryName="Q2" ColumnName="Unit" Value="XYZ" />
</Parameter>
-->
</Parameters>
</Function>
</Action>
</MXExec>
The following information is not relevant for the normal mode of the Comos-
MotionXServerManager . The information is only relevant for technical
inspections or customizing. All other administrators can skip this chapter.
Access to new commands (*.MXC) in the common SharedFolder must take
place only through one Server. Otherwise, several Servers could be process-
ing the same command.
To prevent this, there is a “MontionX.sync” file. If a server wants to access
the SharedFolder to search for commands (*.mxc files), it first locks
MotionX.sync and signs with its machine name. This means: one can con-
tinue to store mxc files in the SharedFolder. But these files cannot be evalu-
ated during that period. Only the current mxc file can be evaluated.
– MXExec.exe Process 2 processes the next mxc file and, in turn, locks
MontionX.sync. Process 1 and Process 2 work in parallel.
39 Other interfaces
The inconsistencies that arise as a result appear in the test list of the Object
Tester.
The command inserts the contents of an existing template file into the current
template file. A template file can be selected from within the Open dialog
field.
All inputs made up to that point are lost without prompting. The IMPORT func-
tion has the same effect as if you had opened the file to be imported and over-
written another file with the SAVE AS option: All existing scripts, texts and
graphics, etc., are lost and the scripts, texts and graphics of the imported file
take effect. That also includes any references to Master Reports and sub-
reports.
40.1 Overview
Comos DQM now comprises the following areas:
• Create and classify document groups
SECTION 40.3: CREATING AND STRUCTURING DOCUMENT GROUPS
• @Reports auto-recognition
SECTION 40.7: @REPORTS DOCUMENT GROUP
• DragDrop import
SECTION 40.8: DRAG&DROP - IMPORT @DOCUMENTTYPEMAPPING
• Full-text search
SECTION 40.2: PREPARING THE BASE DATA OF DOCUMENT GROUPS
Reason: The module-specific base objects are all collected in one branch to
simplify copying, backups, etc.
Top level
At the project level (directly below the globe), document groups are available
only in the mouse menu of the Documents tab.
All remaining tools with which you can create planning objects (drag base
objects to a tab; copy&paste etc.) are also restricted so that, at the project
level, document groups can only be created on the Documents tab.
There can be special cases that could lead to a document group appearing at
the project level of another tab (Import etc.).
In such cases, the data operation is performed first, and then the document
group is moved to the Documents tab.
Other levels
At lower levels, document groups can be created on all tabs.
Document groups can contain document groups. Many functions of the doc-
ument management are recursive. This means that the function not only con-
siders a specific document group, but also all document groups that are
created directly under it (and then again directly under that one etc.).
Overview / Objective
Automatic matching of the structure on the Documents tab and of the struc-
tures on the Units and Locations tabs. Basic idea: The document groups are
created as elements at the units and locations. If the corresponding unit and
location is created, the document group is created, too, and is then collected
on the Documents tab.
Prerequisite / Options
Project properties, Options tab:
Application
The document groups are created on the Elements tab of the unit and location
objects.
If this technology is enabled, then the Documents tab only serves as pure
presentation. The document groups and documents are available in the origi-
nal under the units and Places tabs.
Please note: If this technology is activated, then there must be no originals of
documents or document groups on the Documents tab!
Please note: Scripts and accesses must be adjusted accordingly, because as a
rule, they access the Documents tab!
• Starting page
The computed page number for the first page of the document is given here.
The document takes overt the Starting page value from the reference, if the
reference is located in a document group of @NameSystem. References in
other document group branches are ignored.
In @NameSystem, a reference may exist only once. Even manually, you
cannot create another reference to the original in that node. Thus, if a
Starting page is computed here, it is unique.
In all remaining cases, there can be more than one references to an original.
If there are more than one references to the same original, but if neither of
these references exists in @NameSystem, then the value in Starting page
contains no meaningful information. In such cases, it is not clear which
reference passes its Starting page to the original.
• Number of pages
Contains the number of pages of the evaluated document. This field is
always read from the original.
Please note: The number of pages is displayed correctly only in documents
where the application itself manages page breaks. Other documents are
always managed with the number of pages “1”. Example: The number of
pages of a Word document are displayed correctly, the number of pages of
a Notepad text document are always displayed with “1”.
group:
Comos determines the number of other documents in the document group
and their page number (references and originals are handled in the same
way) as well as the value in the Starting page field.
Subsequent changes in the Starting page field of the document group are
considered automatically and immediately.
– The document itself is not in a @NameSystem document group and has
no reference there, either. But parallel to the document there are
documents to which this applies.
Result: The documents that have a relation to a document group are
controlled from the document group. The other documents are numbered
separately, also considering the the number of pages (not the Starting
page field) of the documents that have a relation to a document group.
The documents are sorted, and always using the Comos sorting. For example,
if “Sort alphabetically” is enabled in the Navigator, then the page numbers in
the Navigator seem to be in the wrong sequence.
Please note: If a document is evaluated, this can change the number of pages
of the document. This mainly applies for evaluation reports: At the time of
evaluation, it is re-evaluated what the report must present, and thus also, how
many pages the report “needs”. Until the next evaluation of the report, the
number of pages remains the same, as an evaluation report is not constantly
updated.
40.6.1 Overview
Automatic references
In Comos, it is possible that document references are automatically created in
document groups on the Documents tab. Thus, the user can create a docu-
ment anywhere in the planning data and then find it through the automatically
generated reference in the document groups.
If a document is automatically referenced in a document group, this informa-
tion is also displayed in the Navigator at the original document: “>>” and the
name of the document group and the reference document are appended to the
name and description of the original. Example:
<Owner> + PFSS.3 Circuit diagram>> .PFSS.004
The automatic referencing comprises the following steps:
1. Determine whether a document must be referenced in a document group.
See SECTION 40.6.2: BASIC TECHNOLOGY (DETERMINE REFERENCE DOCUMENTS).
2. Create a name for the reference (i.e. the reference object).
See SECTION 40.6.3: GENERATING NAMES OF REFERENCE DOCUMENTS.
3. Optional: Create a label for the reference.
See SECTION 40.6.4: GENERATING VIRTUAL PAGE NUMBERS.
Shorten name
Document groups, SYS |System data tab, Reference settings option
group, Shorten reference name field.
If the option is enabled, then the generated name of the reference document is
shortened by all components that are identical in the unit / location view and
in the document group view.
Defining the virtual page numbers and the “Starting page” field
There is another method in Comos to manage page numbers: The “Starting
page ” page in the document properties window. For this, see SECTION 40.5:
AUTOMATIC PAGE NUMBER.
The automatic page numbers from the document properties and the virtual
page number introduced in this chapter are not synchronized. Hence, there can
always be differences in the two page details.
Effect: The objects (documents and references) in the document group are
consecutively numbered in the sequence in which they were created. If a
number was already issued, then the next free number is accepted. Initially,
documents are sorted and are numbered consecutively. Thus, the numbering
visible in the Navigator can “skip”.
The page value is fixed in the document Label (OwnLabel). Thus, the label
must be blank for all documents. In Comos, the label over-defines the name
in the Navigator display.
Changes made later in the Starting page field of the document group are
not considered.
Document groups can be limited in such a way that they consider only the
documents of a specific unit or location branch.
This method is required if the structural design of the document groups is not
unique, see for example SECTION 40.6.2.3: SUBSTRING COMPARISON.
Example:
Document name: WSP
Module ET/I&C
In this module, references are used when connections and lines are interrupted
optically, but continue logically.
The representation of the reference text is controlled via the project proper-
ties, Module options tab, EE/I&C reference layout sub-tab. If “Page
number ” is selected in the Sort documents field, then the document
sequence is computed from the Starting page field explained here.
All information about organizing report templates is given in SECTION 49.9: NEW
DOCUMENT: REPORT TEMPLATE.
40.9.1 Objective
This component enables a full-text search for all documents within Comos.
To improve performance, an index is created through which you perform the
search. To do this, use the dtSearch API software (external component).
Exclusions
The current states of evaluation reports are not entered at present. However,
the revisions are entered.
In interactive reports, texts that originate from symbols are not entered.
Please note: File endings (extensions) needed somewhere else must not be
excluded. Example: if the revisions are generated in PDF file format, then
do not exclude *.pdf here, otherwise no revisions will be found.
Paths/ folders: Relative information enclosed in inverted commas with
backslash, example:
“\Test\“
Generated files
When the full-text search is created for the first time using the [INDEX] button,
the “ComosFullTextIndex” folder is created in the document directory of the
project. For example, if the project is called “Comos_PT”, then the following
path is produced:
<Database folder>\Comos_PT\ComosFullTextIndex
If a working layer too exists, for example, for the working layer with ID 2:
<DB folder>\Comos_PT\Overlays\WO00002\ComosFullTextIndex
history.ix
ASCII file. Contains the history of the dtsearch acknowledgements of the
index actions. Each entry begins with a date in * * * 01/11/2006 15:48:42
(7025) format. The latest entry is located at the end of the file.
index_v.ix.log
ASCII file. Contains the history of the file operations.
indexlog.dat
ASCII file. Contains the extract with the latest entry of the history.ix.
The following applies (as for all profile objects): Profiles can be saved either
locally in the current project or globally in the base project. In addition, there
can be one profile for all or individual profiles. For this, see SECTION 1.6.1: PRO-
FILES.
FTSearchAttributes
If this object exists and has specifications, then the full-text search switches
to the attributed search. For this, see SECTION 40.9.5.5: ATTRIBUTED SEARCH.
StandardHitList
The layout of the hit list is saved here. For this, see Customizing the hit list, P.
40-31.
40.9.5.2 Options
Search range
Documents and revisions
Documents and the revisions of the documents are shown as hits.
Revisions
Only the revisions of documents are shown as hits.
Current revisions only
Only the last project revision and the last plant revisions are shown as
hits.
Documents
Only the documents are shown as hits.
Search logic
At least one of the strings
(Natural search)
A hit list is displayed as soon as at least one of the specified words is found in
the content or in the attributes. This mode is also called “natural search”.
All strings
A hit list is displayed if exactly the specified words are found in the document.
Boolean search
The search is performed according to the standard notation: AND, OR, AND
NOT etc.
Search precision
Fuzzy search
Finds the search term even if it is written wrong. The degree of reliable devi-
ation can be defined using the slider.
Fuzziness level
The fuzziness level is controlled by the dtsearch component. However,
innotec cannot define the precision of the fuzziness level evaluation. See %
Fuzzy search (slows down the search), P. 40-22.
Substring search
The search term can appear anywhere within a word.
Background: When you search for a string/word in the basic setting, the
full-text search actually searches for <string>*. Example: If you are searching
for the word “test”, then in the basic setting a hit list is displayed if “testterm”
is found in the document.
Restore standard
Self-explanatory.
Please note: The Comos properties are not evaluated. Thus, it is not important
whether the document contains the search term as name or description. The
only decisive factor is whether the searched term exists in the document or
not.
Search below
Sets the starting point of the search. The project node is set as default.
Search keys
One or more words or character strings. The options stipulate in what manner
the term(s) will be evaluated. When entering the details, an input help window
opens, displaying words and strings available in the index and matched to the
letters typed until then.
Hit list
The options in “Document details ” and the hit list are explained in
SECTION 40.9.5.6: SEARCH RESULTS / HIT LIST.
Wildcards * and ?
? Finds any character
* Finds as many characters as you want
These two placeholders can have any position:
App* finds apple, apple cake, etc.
*sad* finds sadly, ampersand, etc.
b?t finds but and bet but not boat.
b*t finds both but and bet and also boat.
The earlier the placeholder appears in the word, the longer the search.
# Phonetic search
Syntax: The word to be searched for phonetically must be introduced with the
pound key (#). Example:
#Brown, #Meyer
Result: The phonetic search looks for similar sounding words, that begin with
the same alphabet. Example: A phonetic search for Meyer would also find
Mayer, Maier and Mayor.
The phonetic search is slower than the standard search and generates larger
hit lists.
~ Stemming search
Stemming search tries to ignore grammatical variations of a word, respec-
tively to find a word despite of grammatical variations. Example: If you are
searching for “mouse”, it would also find “mice”. If you want to use the stem-
ming search, you must first create a STEMMING.DAT. More information on
this is given in the dtsearch help.
~~ Number range
Syntax: To search in a number range, you must specify the upper and lower
limit and separate them using the double tilde:
Apple w/5 12~~17
Result: This query finds documents where the word is not more than five
words away from a number between 12 and 17.
• Every number range search includes the upper and lower limit (in the above
example, 12 and 17 would also be listed as hit list).
• Only positive integer numbers are allowed.
• In the number range search, commas and decimals are evaluated as blanks:
Minus signs are ignored. Example: -123.456,78 will be interpreted as:
123 456 78 (three numbers).
This search query will find the same hits as without weighting. But the
sequence of hits in the hit list will have changed: the term apple counts five
times more than the term pear.
Word-weights can also be used in Boolean search:
(description:5 contains (Apple and Pear)) or (author:2 contains
("Jim Smith"))
## Regular expressions
Regular expressions allow you search for complex character combinations. A
regular expression must always be included in inverted commas and intro-
duced with the double asterisk. Examples:
Apple and "##199[0-9]"
Apple and "##19[0-9]+"
A regular expression always refers to a single word. For example, the query
"Apple Pear" cannot be found with the regular expression "##App.*ar".
.* (period multiply)
The period with the multiplication sign (asterisk) means “0 or more” of some-
thing. If the combination .* is entered within a search term, then anything or
nothing can appear at that location.
.+ (Period plus)
The period with the plus sign means “1 or more” of something. If the combi-
nation .+ is entered within a search term, then anything can appear at that loca-
tion, but at least one character must appear at that location.
^ (caret)
Stands for the beginning of a paragraph.
$ (Dollar)
Stands for the end of a paragraph.
\ (Backslash)
Escape-Sequence: The next character is not evaluated as control character.
Example: “\$100” means that “$100” is searched for, instead of evaluating $
as control character for the end of a paragraph.
[a-z]+
This expression does not only find one character, but one or more (see also
above “Period Plus”).
and
Apple and pear: Both words must exist.
or
Apple or pear: One of the two words must exist.
w/<number>
Apple w/5 pear: Apple must be found within a range of five words around the
word pear.
pre/<number>
Apple pre/5 pear: Apple must be found in a range of five words before the
word pear.
not w/<number>
Apple not w/5 pear: Apple must not be found in a range of five words before
and after the word pear.
and not
Apple and not pear: Apple must appear, but the word pear must not appear.
w/<number> xfirstword
Apple w/5 xfirstword: Apple must appear in the first five words.
w/<number> xlastword
Apple w/5 xlastword: Apple must appear in the last five words.
Example 2:
(Apple or Banana) and (Pear w/5 Grapefruit)
finds all documents that
• contain the word apple or the word banana
• and simultaneously, the word pear in a range of five words around the word
grapefruit.
NOT
The conjunction NOT before any search expression inverts the meaning. Sub-
sequently, hit lists can be reduced, as documents with the corresponding terms
are excluded. Example:
Apple or not Pear
Apple and not Pear
not (apple w/5 pear)
Please note: The Comos properties or the file content are not evaluated. Thus,
it is not relevant whether the documents contains the search term as name or
description or which content is available in the documents. The decisive fac-
tor is if the search value is found in the file attribute.
All files in Windows have a series of standard attributes (which are usually
blank). The key names are:
Author
Category
Comments
Company
Keywords
Manager
Subject
Title
LastEditedBy
What the standard attributes are called in the interfaces is not important. Even
Microsoft gives different names for these standard attributes. For example,
the standard attribute “Subject” is sometimes also called “Topic ”. But
“Topic ” cannot be addressed, rather the attribute must be addressed with
“Subject”.
Even PDF has additional file attributes, but these are not fully supported at
present.
The additional file attributes of AutoCAD are not supported, as additional
licenses are needed for this.
In this base object, create as many tabs with any names as you want. Create
the following type of specifications on these tabs:
• Reference (SUILink)
• Date (SUIDate)
• Edit field, Edit: (Min Max), Edit: (Min Value Max) (SUIEdit)
Document details
– Document Preview
The Document Preview uses the “AutoVue”, which is licensed
separately. This universal file viewer is controlled from the project
options: Project properties, Options tab, enable the “AutoVue - Use as
document view ” option at bottom left. This project option can only be
enabled if you have the license.
Then you can switch to the “Document Preview ” option in the
document details.
– Document Properties
When this option is enabled, a part of the document properties window is
displayed on the right.
Please note: The properties can also be changed there.
Default columns
Standard search:
Document : contains the SystemFullName.
Unit revisions / Project revisions : contains the name of the released
revisions, separated by comma.
Unit versions / Project versions : contains the name of the checked-in
DVM versions of the documents, separated by comma.
Attributed search: For every Comos specification that had been created, a col-
umn is displayed.
• Has a folder that is required been excluded from the project options?
• Has a file ending that is required been excluded from the project options?
• Is the document located in another working layer?
• Has the revision file already been created? The revision file is available
immediately only for the “Create PDF file at first step ” option. In all
other modes, a revision file is only created when the revision is released.
• Is the index up-to-date? In special cases, users can bypass the automatic
update by Comos. In such cases, the index must be updated manually.
• Are you working in the correct full-text search mode? The standard search
finds no metadata (file attributes) and the attributed search finds no
document content.
• Are you trying to search for a property of the Comos object (name or label
of Comos object)? The full-text search is not a Navigator search and does
not find Comos properties.
• Did you find a spelling mistake in the document? Perhaps your search query
is correct, but someone editing the document made a spelling mistake. In
this case, you can still find the document with a fuzzy search or by using
wildcards (“placeholders”). (Attention: more time required.)
40.9.7 Performance
Please note: Full-text searches are mass operations! Full-text searches process
data in extremely large quantities and hence must be used with care. On the
one hand, you must reckon with high processing times, on the other hand, the
search can be speeded up dramatically if you observe certain rules:
• Documents with a Comos UID are found more quickly. This is
automatically the case for Comos reports. For external documents (Word,
Excel, AutoCAD, PDF etc.), this rule applies when the external documents
were generated with the “Normal ” option: Properties of a document, switch
tab (for example, for a Word document the tab is also called Word ),
Document group, “Normal ” option.
• The “Start object ” field retroactively filters the hit list. The basic principle
is that the complete index is searched, which contains the complete project.
If some other object than the project is set as start object, then the
performance drops: first the complete project is searched, then the number
of hits is reduced to match the Start object .
• The “Search range ” group retroactively filters the hit list. Thus, the search
will be faster, if here you select the “Documents and Revisions ” setting.
• The “Boolean search ” is slower than “At least one of the strings ” and
“All strings ”. Both character string searches are equally fast.
• The “Fuzzy search ” and “Substring search ” slow down the search.
• The “Exact search ” does not affect the performance.
41 Revisions
41.1.1 General
The structure of the following base data controls the entire revision process.
A valid "package" of base data always consists of a "Revision carrier” and the
"Revision elements”.
So the first step is always to create one or more “Revision base objects = Revi-
sion carriers”. Only after these base objects have been created, you can select
them at the documents or document groups. At the documents/document
groups the revision base objects are called "Revision types".
If a new revision is created, this base object is searched for and used to create
a Device object below the document / document group. This Device object is
invisible in the navigator.
The device object provides the information for the "Index ", "Label " and
"Description " columns:
• The "Index " column contains the name of a revision. In other words: just
like every other object, each revision has a name. However, for revisions,
the user can’t issue a name. Instead the name is issued by Comox, following
a complex classification system. Therefore, the “Name” of a revision is
called “Index” in the interface. If you want to retrieve the index of a
revision, then you must read the “Name” property.
SECTION 41.4: THE "INDEX" OF A REVISION describes the classification system for
indices.
• The "Label " and "Description " columns include the label and description
of the "Revision carrier".
Please note: The "Description" of a revision is not translated. Instead, the
description is written to the primary language and is the same in all
languages.
The number of elements (i.e. the revision steps) can vary according to the
revision carrier.
For each revision step that is executed, a Device object of the "Revision "
class will be created (likewise invisible in the navigator). This Device object
provides the revision table with the following information:
• A timestamp
The timestamp for which the device was created is the time stamp of the
revision step. At the same time, the information from the time stamp is used
as default value for the revision step label / the revision step description. The
user can manually enter other values; in that case, you can also retrieve the
timestamp through script.
• Revision step label / Revision step description
The label and description of this device is written into the column (separated
by slash). The timestamp is used as default; the user can also manually enter
anything else.
Please note: The "Description" of a revision step is not translated. Instead,
the description is written to the primary language and is the same in all
languages.
The New base object below... dialog window is displayed. Activate the
System tab and enter the following values:
Class Revision
Name The name is a number; so the first step has the name
1, the second 2 (or a higher number) etc.
Mandatory elements are:
• For the first step: "1" as Name.
The first step "creates" a revision.
• For the last step: "99" as Name.
The last step "closes" a revision.
Label user-defined
Description This text appears as default for the description of a
revision.
Virtual 1 times.
You can use the @System |@D Data |@Revision root object and all
objects created directly below in any combination as revision base objects.
Any object that is to be used as revision base object ("Revision type"), needs
elements for the revision steps (as described before). At first, the elements are
inherited, but they can also be deleted or new elements added as needed.
Below base object @Revision you can create objects with the Name @Pro-
ject. These objects belong to the Dual Document Management (@Project)
of PQM.
An animation with a stamp appears during the revision process. This anima-
tion can be switched off:
To do so, create a specification "SYS.NoStampDlg" of type Checkbox at the
revision base object.
Prerequisites
The following conditions must be met to ensure a document group can be
revised (and thus make the group revision usable):
• Naming convention of group fulfilled
– Document group is in @NameSystem branch or in @Project branch.
@NameSystem branch: If only one document group exists at the topmost
level (directly below the project), then it can have any name. If there is
only one TopLevel group, it is automatically interpreted as @NameSystem
group. (It is not important to know how many document groups exist
under it.)
If there are more than one document groups at the topmost level, you must
explicitly use the key name @NameSystem.
• Project options (optional): Automatic referencing
– In the project options, you can switch on the automatic referencing of
documents for the @NameSystem branch.
If above conditions are fulfilled, then the Revision tab appears in the docu-
ment group.
Please note: Similar preconditions must be met when using @Project docu-
ment groups.
41.5.1.1 Overview
In practice, revisions often drag on for days (especially, if several people are
involved). However, it is often not possible to lock a document until the revi-
sion is completed. For that case, there are two possibilites states which the
revision can refer to:
• Beginning of revision
"Create PDF file at first step " option is enabled.
The immutable revision file is created at the beginning of the revision
process (to be more precise: after the first revision step is completed). Then
you can continue working with the documents: all subsequent changes in the
document are not important for the revision by definition.
This revision method requires a PDF as archive format. Therefore, this
method is also called "PDF at first step".
• Revision completion
"Create PDF file at first step " option is disabled.
The immutable revision file is created only after the last revision step. If the
document is not protected against changes, then changes can still be made
from beginning to end of the revision.
For this case, Comos provides automatic revision monitoring. If the
document has changed in the meanwhile, then the revision is reset and
begins from scratch.
• The details from the following revision steps logically can no longer be
considered in the actual revision file, as the revision file is created before
these revision steps are carried out. Therefore, at this point, eStamp is used:
This technology helps to stamp all desired revision information into the PDF
revision file.
• The “Revision label ... editable” option has a different effect, see Revision
label editable during the complete revisioning process, P. 41-25.
Other effects
• The “eSign” revision option can be used only if “Create PDF file at first
step” is activated.
41.5.2.1 Overview
The revision monitoring checks for reports (evaluation reports, Interactive
reports), if information was changed that refers to Comos objects.
So, the revision monitoring does not include external documents.
The revision monitoring does not include purely graphical elements (e.g. lines
and circles that are manually drawn on the report).
• (0) No monitoring
Revisions can be opened or closed. The user must make sure that a revision
is consistent. No revision label is provided on the report (Exception: see
AutoMarkAsChanged.
Texts
• Stable names
The allocation of the content of a text field through the various revisions is
done with the name of the textbox in the report. Therefore, the names of the
text boxes in the report template may no longer be changed after the first
creation of a revision. On the other hand, you must be able to change the
layout of the template completely without disturbing the revision process.
• Unique names
See SECTION 41.5.4.4: UNIQUENESS OF NAMES.
The computed texts can come from any source: from the report itself, from the
master report, the sub-reports or the lists.
Field names
The individual cells within a row: Lists will be generated by the row reports
and from there get their names through the placed items (as a rule, texts).
Exceptions
The change of fixed texts (e.g. in the template) is not considered. Similarly,
RTF texts, WMFs, OLEs, checkboxes etc. are not considered.
To sum up: The purely graphical layout of the template can be changed with-
out disturbing the revision process.
Comos also automatically excludes text fields with the Description of spec-
ifications from the revision monitoring, as long as it can detect them. Comos
can identify a Description if it was created with the help of one of the follow-
ing methods:
• ReportObject & Property=Description
• ItemObject & Property=Description
Exceptions
The AutoMarkAsChanged function must be disabled:
AutoMarkAsChanged = False for all revision list fields
General
The transition from the hitherto date-based revisioning process to a con-
tent-based revisioning process and vice-versa is also possible in existing cus-
tomizings.
But note that both processes use different methods for comparison. In short:
what is marked as “changed” in one process, can be “identical” in the other
process. This applies in both directions.
Comos uses the content-based revisioning process whenever
1. it is generally enabled: EnableContentBasedRevisioning Project
option/ Document option
2. the previous revision of a document was already carried out with Comos
8.1. and the above option enabled.
In the above scenario, Comos always saves the RevisionContent for a revi-
sion; however, the first revision after introducing Comos 8.1. revision will
still have to be date-based.
So, the administrator must observe the following rules:
• Before switching, all open revisions must be closed. The two processes use
different methods to classify the objects as “identical” or “changed”. Thus,
even the assigned revision index is different. If you switch from one process
to another with an open revision, this would result in inconsistent revision
indices.
2.1 Important special case: In data sheets it often happens that various
information of the same object is displayed using several row
reports (e.g. different specification tabs). In this case, Comos can
use the UID of the object only for the first row report; the following
row reports require more unique information. Comos then issues
simple names like "Row1", "Row2".
In the above case, the rows will hav unique names as a result of this
new technique. But now the administrator must no longer insert a
row report at any point in the data sheet: if a row report is inserted
behind the last row report, Comos can correct it. If a row report is
inserted into the middle, then the content-based revision will display
wrong information.
2.2 In other cases, a row report is used to examine a large number of
objects. If the list is organized in such a way that each object is
examined only once, there is no problem.
However, if minimum two objects appear several times in the list,
then it is possible that the content-based revision fails: if the order
of both objects changes. This case may be rare but it could happen.
Simplest example: one of the two objects is renamed in such a way
Further Information
See Installation, Section 9 “Add-On software: Printer drivers”.
Paper size
Effect on printer driver: Print settings, Device Settings tab, Paper size :
Paper dropdown menu. The Comos labels are slightly different from those
of the individual entries displayed here, but the order is the same. Example:
The first entry in Comos is called "VARIABLE_mm ". In the printer driver
this corresponds to the first entry called "Variable Paper size ".
Graphic resolution
Effect on printer driver: Print settings, Device Settings tab, Graphic Reso-
lution : Resolution dropdown menu.
Not all Tiff printer driver options are supported: the lowest resolution possible
in Comos is 300x300. This produces the following allocation:
Color depth
Only for the server version of the Tiff printer driver.
Photo quality
Effect on printer driver: Print settings, File Formats tab, Photo Quality .
Exception: Threshold is not supported at present.
Recommendation:
– Revision of reports that contain lists and tables: Sharp .
– Revision of Interactive reports: Floyd-Steinberg or
Jarvis-Judice-Nike , with 80% intensity respectively. These settings
deliver the best results when presenting the revision rectangles.
Activate eSign
eSign is an independent module with many application options. One applica-
tion of eSign is signing revisions.
Select a revision step in the planning data. If an eSign signature was prepared
for this step and if the “Enable eSign” option is activated, then the “Signa-
ture” dialog box appears. The user logged in at present is entered automati-
cally; you only need to specify his eSign certificate (pfx file) and enter the
matching password.
Comos checks if the pfx file is a valid pfx signature file and whether the pass-
word matches the pfx file. The “Location” that was set during login is adopted
in the signature.
The eSign module is explained in the documentation F&D eSign.
The eSign signature is more than an optical change. Security information is
stored in the signature; with the help of the | CHECK SIGNATURES command on
the Revision tab, one can check if the document has been changed since set-
ting the signature.
It is not the signature that is checked, but whether the Comos document has
been manipulated since the last signature.
Of course, |CHECK SIGNATURE is only available for documents, not for groups.
The index cannot be set by hand, as the index number not only ensures the
uniqueness of the revisions, but is also a statement on the sequence of revi-
sions.
Because of that, project revision should always be used when working with
revisions in working layers. See SECTION 66: PQM.
Plant revisions are matched across layers. (In project revisions, this is not
needed, since they are layer-specific.)
Another possibility would be, to release the layer in which the in-stock
plant revision exists first. Thus, the layer in which the document was
revised for the first time, must be released first.
However, this is document-dependent. For document A one layer can take
priority, and for document B a completely different layer can take priority.
But one layer must be released first.
2. The more frequent case is that the representations of the document in the
various working layers are considered as being different in content - and
accordingly, it does matter which plant revision “wins”.
In this case, a solution must be found before releasing the layers, allowing
you to decide which plant verision is to win.
Technically, in the latter case, only one in-stock plant revision can exist
per index. In the other layer, you cannot create any in-stock plant revision.
With the help of the Plant Revision Manager, it is then possible to discard
(delete) the in-stock plant revisions in the other working layer and
instead, to create another in-stock plant revision in this working
layerworking layer.
– Off (corresponds to the present status that “Do not release * revisions”
was disabled)
– Do notrelease * revisions (as until now)
Do not release unreleased revision
Includes the “Do not release * revisions” option.
In addition, revisions that were created with the “Revision at first step”
option, but for which the last revision step 99 (mostly: “Release”) was not
completed are withheld.
41.7.2 Operation
Comos menu,
| TOOLS | WORKING LAYERS/HISTORIES | RELEASE MANAGER: opens the Release
manager dialog:
The | PLANT REVISION MANAGER menu item is only visible when a working
layer is open.
Only with all plant revisions
This option is only visible when the following option is enabled: Project
Properties, Options tab, “Automatic referencing of documents”: @Project
group must not be set to Off.
Option enabled: If you click [UPDATE], the Plant Revision Manager lists doc-
uments that have project revisions, but no in-stock plant revisions.
Do not release * revisions
Option enabled: If you click [UPDATE], the Plant Revision Manager lists doc-
uments that have open project revisions.
These are the documents that have an asterisk revision in the Revision tab. It
is not checked whether an asterisk revision would be created if the documents
were evaluated.
Mouse menu
| COMPLETE REVISIONS
The plant revision of the current layer is considered as valid and the “compet-
ing” plant revisions of the other layers are deleted (for the selection).
| DELETE REVISION
Self-explanatory.
If a report was revised and then more changes were made in the report, then
the changes in the report will be marked in the report using a revision rectan-
gle. The following applies:
• Grey: Changes in the last completed revision.
If a revision file is printed, then these revision rectangles are not printed.
• Green: Changes in the current, open revision.
These revision rectangles are printed when a revision file is created, unless
the settings are changed (see Printing revision rectangles, P. 41-31).
Changes that date back to the revision before last (or earlier) are not shown in
the report.
In the following example, you can see the green dashed line around the shutter
-K2M:
Only objects that also have a counterpart in the navigator are monitored in the
report. Pure report items – like a circle that you draw freehand on the report
– are not monitored.
The revision rectangles become effective only after the first revision. In short:
no revision rectangles are visible on new documents (because if there were,
everything would have to be marked, as everything is new).
The term "Revision table" was already used in connection with the Revision
tab. In addition to that, the term is also used to refer to a table displaying revi-
sion information on reports, especially on Interactive reports:
It is obvious that the two revision tables are closely linked, but are not identi-
cal. As a rule, the revision table on the report will reproduce only a subset of
information of the revision table from the Revisions tab.
41.8.3 Texts
Italics On-off
If texts of monitored objects have changed and the revision monitoring is
enabled, then the changed texts are shown in italics.
In reports, this dll is already available through the predefined variable DocHdr
(this means, you need not code the line set DocHdr = CreateObject
(DocHeader...)):
Set RevObj = DocHdr.RevisionObject(Blatt, 1)
If Not RevObj Is Nothing Then
ErstDatum = RevObj.CS.Login
If Not RevObj.CS.User Is Nothing Then
Ersteller = RevObj.CS.User.Name
End If
End If
Provided at least one revision was already created, the CS object can be
accessed via RevisionObject. CS stands for "CreationStamp", i.e. the cre-
ation timestamp. Each document automatically receives a CreationStamp. In
the CS object, two pieces of information are stored: Login, that of the actual
timestamp, and User, this is the user logged into the database.
The following functions are available in the DocHeader.DLL for the revision
table:
RevisionTableIndex(<RevLine>)
RevisionTableDescription(<RevLine>)
RevisionTableDate(<RevLine>;<RevColumnNr>)
RevisionTableUser(<RevLine>;<RevColumnNr>)
Old technique
RevisionIndex, RevisionLabel
These two functions cannot correctly evaluate the objects that are checked
with content comparison. If you evaluate revision data in the report and use
"Content (text)" as comparison basis, then these two functions must be
replaced by MaxRevisionIndexOf.
"Text1" is the name of the text for which the mouse command was called. If
the name of the reference text is changed later (e.g. with the | RE-ESTABLISH
UNIQUENESS OF NAMES function), then this text row must be adjusted, too.
The MaxRevisionIndexOf text field must be directly on the left of the text
field to which it refers. If not, then you see a red line, which stretches from
MaxRevisionIndexOf to the text field with the matching name.
41.8.5 Miscellaneous
Checkboxes
Checkboxes too can be placed on reports. If you click such a checkbox, this
triggers a change event and the report is considered as changed from the revi-
sion point of view.
In the following example, a user has the following rights to the "T1" plant:
These rights also apply to all documents located below the "T1" plant (only
original documents, not reference documents) – as long as nothing else is set
in the lower levels. In our example, the user can generate a new revision and
carry out the test steps, but may not carry out the final release.
Please note: To be able to edit revision step label and revision step descrip-
tion, you now need revisioning rights.
In this view, a revision table is the list of all revisions created for this object.
Technically, though, the revision information is not saved in the form of a
table, but with the help of objects. Each row in the revision table represents
many objects. The individual columns mean:
• Index
SECTION 41.4: THE "INDEX" OF A REVISION
• Label, Description
These columns control an invisible "Revision carrier".
SECTION 41.1.2.1: THE "REVISION CARRIER".
• Revision archive
The "Revision archive" is a print file in Tiff or PDF format. In a document
group, the "Revision archive " column is always blank, as the archived files
are only saved for the individual documents.
SECTION 41.5.6: REVISION SETTINGS: REVISION ARCHIVE (PRINTER DRIVER).
opening it for the first time and thus must be saved. If you don’t save the
document at this point, then the external file is not (yet) available.
After saving the document for the first time, it gets an * revision, even if the
document was not modified in any way.
• Group revisions
Properties of the document group, System data tab: the "Revision of all
documents " option is disabled.
During the first group revision, all documents participate in the revision
although they were not changed. Unchanged documents are excluded only
during the subsequent group revisions, as required by the option.
• Package revisions
Before the first package revision, all documents in the package must be
opened and saved once (even if there are no changes). If revisioning is
carried out for the first time and without opening and saving the documents,
then, depending on the circumstances (project options, document types
used), it can happen that a new * revision is automatically opened directly
after creating the revision.
Controlling revisions
• CDevice @Revision, Scriptblock OnRevisionRelease
Fired: When revision is released. The Script is located at the base object of
the revision.
Script help (Question mark icon on the top right of the Script Editor): In the
Script help, you will find the following examples on the Examples tab:
– Copy the last released revision file to the TMP folder and open it there.
– Find out about the user from the last checked-in element
• Elements of a revision, Scriptblock OnRevision
Fired: When revision step is executed.
RevisionMaster.dll
RevMode property at RevisionInfo. Here you define which revision informa-
tion to return.
1 = Project revision (Default) [this refers to @Project]
Here, this refers to the layer.
0 = Plant revision [this refers to @NameSystem]
Here, this refers to the released area.
Using this property, you can also specify for reports which revision informa-
tion is to be displayed.
IsRevisionAllowed (document)
Only for the Document class and the Document group class. Specifies
whether the next revision step is allowed.
Example
If you were working in the open report, so that as consequence the “created”
revision step was reset, then the open properties window would only be par-
tially updated: for example, the Revision commands icon would not be up
to date.
If you continued to work, this would lead to subsequent errors. The properties
window is updated after closing and reopening it.
Obviously, there are no errors with a pure read access. But if you are to work
with the revision data or the revisions, then a user may only open either the
report or the properties window of the report. But not both together.
For technical reasons and for performance reasons, not all components of a
software are actually up-to-date at the same time. That is why, even in the
Microsoft Explorer, you have the "Refresh" function.
Comos strikes a balance here. All important information is refreshed automat-
ically. The somewhat less important information must be updated manually
in case of doubt.
In connection with revisions, this applies to the "Revision bar", for example.
The Revision bar is a table in the report with details on the last revisions. This
table is not automatically updated each time the revision information changes.
If you would like to ensure that the report is up-to-date (e.g. because you need
a valid printout), then press the [EVALUATE] icon.
For more detailed information on this topic, please ask innotec for the
"Updating revision data " working paper.
41.14 Checklist
1. Existence of the Revision tab
1.1 Document
Base object must have Revision type .
(The "Revision type " field must not be set to "None ".)
1.2 Document group
Naming convention must be fulfilled.
Base object of document group must have Revision type .
(The "Revision type " field must not be set to "None ".)
2. Display the Revision tab
As soon as a Revision tab is activated (selected and thus moved to the
front), the followingis verified:
2.1 Evaluate "Revision type ":
The base object is searched in the base data project, and determined
by the revision type.
2.2 Under this base object, all Elements (e.g. Created, Inspected,
Released) must be set to Virtaul : 1 times ;
2.3 The element names must consist of numbers smaller than 99.
2.4 The number of the last element from the revision carrier must be
"99".
If you are working with working layers, then the corresponding intermediate
levels are available, but at the last node of the hierarchy tree you will again
find a Revisions folder.
42 Languages (localization)
42.1 General
Scope
• The interface of Comos itself (menubar, Comos status bar, etc.)
• The interfaces of all the dialog windows (but not always the contents, see
below)
• The informatory notes or warnings
• The tooltips (the small yellow memo-like notes that appear when the mouse
“hovers” above a point).
• The PDF help (if there are help files in this language).
See SECTION 42.2: INTERFACE LANGUAGE.
Application
It is not possible to translate the interface itself into another language or to
change the existing entries.
In principle, names and labels are excluded from translation. Names must be
unique at all times and also remain exactly the same over the course of time,
since objects are identified with the aid of the names. Labels are used for
labelling systems and must therefore remain exactly the same over the course
of time.
Nonetheless, it is possible to set a system of alias labels within the labels and
thus to cover the requirements for another language.
All texts are switched over within the Navigator; in addition, the object texts
are of course shown in the selected other language in all the dialog windows
as well. Thus when you display objects in the Bulk processing dialog win-
dow, the texts of these objects are displayed in the set project language within
the dialog window. See SECTION 42.3.1: SWITCHING LANGUAGES / LANGUAGE MANAGE-
MENT.
Application
There are a number of different options to translate the project data itself into
other languages or to convert existing entries. See SECTION 42.4: TRANSLATION OF
PROJECT DATA.
Scope
Selection of a template file in accordance with the selected project language.
Application
See SECTION 42.5: LANGUAGE-DEPENDENT SELECTION OF TEMPLATE FILES.
Areas can be combined as desired, but normally all participants would choose
to work in the same language.
The selected settings relate to the relevant workstation, i.e., another worksta-
tion with different settings can work in parallel on the same project. This is
not surprising as far as the interface goes, but each workstation can also
choose a separate and different language for the project language; and this
even if there is common access to the data. This property of Comos makes it
possible for multinational participants to work together on joint projects (Glo-
bal Engineering) in their own respective languages.
The Description fields are managed internally as a “Memo field”. The length
of this text fields thus depends on how long a memo field is in the type of data-
base being used.
If you work with different languages within Comos, then all the texts of the
various languages are stored invisibly in the same field. Although the transla-
tions are invisible (until you change the language), the translation nonetheless
does of course take up a part of the field length. By using type Memo it is also
possible to translate very long texts into various languages without exceeding
the maximum permissible text length.
The contents of the database can be set to any language that can be displayed
under Windows NT as long as the languages have been set up in the relevant
project and the corresponding translations exist in the database.
In this example a number of different languages have already been set up.
Rights administration
You can only work on the Languages tab if you have the “Write ” object
right and the “Project options ” function right for the project. If either of
these rights is missing, then everything up to the switching of the User cur-
rent language is turned off.
User current This allows the setting for the DB current option to be
overruled for this session. If Comos is closed and opened
again, then the default setting of the DB current option
takes effect again.
DB current All workstations see the database texts of this project in
the selected language.
Primary The primary language is the language in which input
language takes priority over input from all other languages. If an
entry in the primary language is changed, then all previ-
ous translations of this entry into other languages are
regarded as invalid. See The primary language, P. 42-7.
Country code Languages are often identified by a country code. How-
ever, the input is not evaluated internally but is made
freely available to the customer. The Country code col-
umn only permits numeric input, while Comos of course
strips off any leading (padding) zeroes.
Country code 7 is reserved: It is used to manage the var-
ious languages that use Cyrillic characters. See below for
further details.
Description A freely selectable text to describe the input.
| NEW
When a new language is set up with | NEW, then the
following entry is offered for the country code:
highest previous number +1.
If no Description had been input, the following is
input automatically as the setting:
“Language<Country code> ”.
Country code 7 is reserved: It is used to manage the
various languages that use Cyrillic characters. See
below for further details.
| DELETE
Entries in the language management should in gen-
eral not be deleted. See below for further explana-
tions.
Accept settings from The previous entries are deleted after a yes/no
base project prompt and the languages that had been defined in
the base project are offered.
Translation Opens a small dialog window with which you can
translate the Description of this entry into the
other languages that had already been set up.
Properties Opens the Properties window of the management
unit of the language. In principle, all fields can be
changed that were also available when the entry
was created with | NEW.
42.3.1.3 Application
Reason: In Comos the order in which the languages were originally set up (not
the order of the country codes, but in actual fact the order of the entries them-
selves) is important: the translations are arranged one after another in this
order.
Thus if English was in the second position, then the English texts (transla-
tions) will also be physically written in the second position in the database.
This sequence of the translated texts does not change later, not even if the
order of the entries is changed in the language management. If the order of the
languages in the language management is to decide the sequence, then the lan-
guages will be mixed up. Example:
The following order had been set in the base project:
1. German 2. English 3. French.
The following order had been set in the planning project:
1. German 2. French 3. English
If you now switch over to English in the planning project, then all the transla-
tions from position 2 are read and displayed – and they are in French for the
data from the base project. You thus see all the entries in French on the Base
data tab.
Tip: As long as no new texts have been translated, you can still correct any
management entries that had been input incorrectly. To do this, you can also
use the | ACCEPT SETTINGS FROM BASE DATA command, since language entries
that had been created manually in the planning project can be deleted with this
function. However, if texts have already been translated, you are not permit-
ted to change the management entries of the languages any further.
Setting up languages
Right-click in the dialog window and select | NEW.
When a new language is set up with | NEW, then the following entry is offered
for the country code: highest previous number +1.
If no Description had been input, at times the following is input automati-
cally as the setting: “Language<Country code> ”.
Country code 7 is reserved: It is used to manage the various languages that use
Cyrillic characters. See below for further details.
You can change the country code at any time.
However, if you change the entry of the primary language, the other transla-
tions can no longer be valid, since the initial text to be translated has changed.
Please note that any change in the primary language – and this also includes
minor grammatical or spelling corrections – leads to all the other translations
of this text (but not of all texts) being marked as invalid. The invalid texts are
not displayed any longer, but instead the new input of the primary language is
displayed. In other words: You will then see the entries of the primary lan-
guage in another language, if the primary entry has not been changed or trans-
lated yet.
Example: Primary language: German. Other languages: English, French
Entry in German: “Dies ist Deutsch.”
Entry in English: “This is English.”
Entry in French: <blank>
The entry in German is changed to: “Dies ist Neu-Deutsch.”
Effect:
English: The entry in the primary language is displayed. In other words: If
English has been set in the project properties, in the example given you will
see the new German text: “Dies ist Neu-Deutsch.”
French: A question mark (?) and the entry of the primary language are dis-
played: “? Dies ist Neu-Deutsch.”
Cyrillic characters
Comos can also display Cyrillic characters. An entry with country code 7
must be input in the project properties on the Languages tab to do this. Coun-
try code 7 is mandatory, but the description of the language can be anything
you want.
Please note that you will most likely have to install a special keyboard driver
and also change over the active language of the PC.
Please note that this functionality only support the input of Cyrillic characters.
It is not possible to convert to or from Cyrillic characters for existing texts.
Deleting languages
Entries in the language management should in general not be deleted.
Reason: In Comos the order in which the languages were originally set up (not
the order of the country codes, but in actual fact the order of the entries them-
selves) is important: the translations are arranged one after another in this
order.
Thus if English was in the second position, then the English texts (transla-
tions) will also be physically written in the second position in the database.
This sequence of the translated texts does not change later, not even if the
order of the entries is changed in the language management, nor if a language
is deleted.
As long as the Properties window of the project has not been closed yet, you
can create new entries and delete them again at once without any risk. But the
entry may no longer be deleted once you have confirmed the window with the
data.
The translation of attribute values, lists and memo fields is very simple in
principle: Simply switch to the corresponding language and input the requisite
texts.
42.4.1.1 Procedure:
The Text entry must be selected from the General tab in the Type field for
the attributes.
• Select a language from the project properties.
• Input the desired information.
• If you change the current language, and if there is no entry yet for the chosen
language, then a question mark (?) and the entry of the primary language are
displayed:
“?Dies ist ein deutscher Text.”
• This untranslated text of the primary language that is displayed serves as a
translation aid. But from a technical point of view it is not essential to input
an exact translation in the other (foreign) language.
Mark the placeholder text “Dies...” and overwrite it with a new entry.
• If you change the entry of the primary language, the entries of all the other
languages become invalid and are deleted.
If you do not wish to translate memo fields, lists or attributes, you can change
over the type to Alphanumeric on the General tab. This type is not affected
by the language management and therefore displays the same entry for all lan-
guages.
42.4.2.1 Application
Mark an object and select | EXTRA | LANGUAGE TRANSLATION| OBJECT LAN-
GUAGE TRANSLATION from the menu bar:
The dialog window is initially blank. The languages are displayed in the
above window in the same way that they had been input in the Properties win-
dow of the project on the Languages tab (see SECTION 42.3.1: SWITCHING LAN-
GUAGES / LANGUAGE MANAGEMENT). The current language (User current ) is
shown bolded. That is German in the above example.
The project is always the first item displayed in the dialog window. Drag an
object into the dialog window with the mouse.
Pic. 42-1: The language translation object after an object had been set
You can also enter several words in the field, separated by spaces (as above).
Spaces at the end of the entry are trimmed off when you confirm the input.
Please note: An “object” does not necessarily need to be only a “device”; thus
attributes or documents are also objects, for example. With all of these you
can input and translate a description.
The object is now made available in translated form in the other languages.
Incorrect entries can also be edited in this way.
For technical reasons this applies to all translations of the object together. If
you change the English description for a planning object, then all the lan-
guages of this object are checked in, also German, French, etc.
This has a bad effect visually: Only those translations that had been input
manually are valid from now on. In the following example there are four lan-
guages, all with inherited texts:
If you now input a translation in a language, then all inheritances for this
object from the base object are deleted and you will see blank fields in all the
other languages:
If the corresponding object query had been created in base data branch
@System -| @O -| @Trans , then the query and not the old dialog window
is opened when the Extra | Translation | Multiple Objects menu command
is used.
This query collects together all the texts to be translated under Comos:
• descriptions (Description, Description2, Description3)
• attribute values (Value, XValue)
• fixed report texts
• column headers of queries
• help texts and tooltip texts of attributes
The prerequisite for the correct use of the new query is the input of the local
ID (Language.LCID) for Comos languages.
See SECTION 24: OBJECT BROWSER regarding the basic functions of an object
query.
Select | EXTRA | TRANSLATION| MULTIPLE OBJECTS from the menu bar:
Columns
Object type : Here is the system type of the object that was found.
Object : Supplies the FullLabel of the object.
Property : This shows which property of the object is being translated.
Sub-object / Addit. key : Many structures in Comos are multi-level and
require an additional key to be able to call up all the required information.
Example: range attributes. The extended values of the range attributes must
be called up via an “index”. This index is held in the Addit. key column.
Search technique
This function exports all descriptions and all attributes of type Text to
Access 2000. There the translation is carried out, which can then be
reimported with this function.
You can only use this tool if Access 2000 is installed on the same PC.
The cursor keys [|<][<] and [>][>|] near the Navigate field in the table make
it possible to jump to the beginning or end of the table or to move line by line.
Scope of exporting
Fundamentally speaking, only information that belongs to the current project
is exported. Thus if a planning project is exported, the objects of the Base
data tab are not exported unless you have created local base objects, which
are of course exported.
The same applies to the standard tables. When the base project is exported,
then only those standard tables that had also been created in the base project
are exported; many central lists are located within the system project.
Application
Mouse-click on [EXPORT] and select a database or else create a new database.
You can create a new database simply by entering a new name. The ending
mdb is appended automatically.
Pic. 42-2: The export operation begins as soon as you have confirmed this message
Please note: An export operation is very time-consuming. An export
operation can take up to several hours in the case of large projects.
Please note: An export operation generates large volumes of trans-
ferred data on a network. We recommend that you carry out export
operations at times when the network is not loaded heavily.
The status of the export operation is displayed in the dialog window:
Minor changes can now be made directly in this table. When you close the
dialog window with [EXIT], the changes that had been made are saved in the
Access 2000 table that had been created as part of the export operation.
The table is set up as follows:
Larger changes should be made at the Access level in the interests of effi-
ciency.
The table in Access is set up as follows:
A “YES” in the Collision column indicates a problem when writing back the
object. The description of this object has changed in the time between export-
ing and importing.
The description was “OO rotary button” at the time of the export, but in the
meantime it had been changed to “Rotary switch”. In order to reduce the risk
of false entries in the database at this point, the Comos data of this object is
not changed, but the changed description is displayed in the Changed field,
however.
“No” means that there were no problems and that the translated text for this
object was entered in the Comos database. The translations are now available
to Comos.
The Original column contains the description texts of the database objects at
the time of the export operation, and the Changed column has the descrip-
tions of the database objects whose designation had changed between the
times of exporting and importing and thus caused a data collision.
However, you can still make minor corrections now in the dialog window.
In order for Comos to be able to find the various template files, create them
all within one and the same directory and insert at a point in the file name that
you determine the country code for which the template file is to be applicable.
The country code must match the details given in the project properties, see
SECTION 42.3.1: SWITCHING LANGUAGES / LANGUAGE MANAGEMENT:
If “49” was selected for German and “44” for English, then the two crp files
are now called:
ar49_an1_terminals.crp
ar44_an1_terminals.crp.
In the next step, Comos needs to find out at which point within the file name
you inserted the country code. You could also have written
ar_an1_terminals49.crp instead. Do this by creating a help file that has a
placeholder at the corresponding point. This help template file can be com-
pletely blank, the only thing that matters is the file name:
ar%L%_an1_terminals.crp
42.6 Exclusions
The following information is not translated:
Description for revisions and revision steps
The “Description” of a revision or revision steps is not translated. Instead, the
description is written to the primary language and is displayed identically in
all languages.
43 Designer (2D-drawings)
The Designer is primarily used within Comos at the following points:
In base objects, see SECTION 45: SYMBOL-DESIGNER.
For report templates, see SECTION 46: REPORT DESIGNER.
In interactive reports, see SECTION 47: DESIGNER AS INTERACTIVE REPORT.
43.1.1 Copy/Move
This combination of [Ctrl] key + [Alt] key and left mouse button functions
regardless of which tool is currently activated.
Zoom all
• Press the [Ctrl] + [Alt] keys and
• click once in the document with the left mouse button.
This functions zooms alternately between the entire document and an imagi-
nary bounding rectangle drawn around all the elements.
The second option, an imaginary bounding rectangle, also comprises all the
report elements lying outside the document area.
This combination of [Alt] key and left mouse button functions regardless of
which tool is currently activated.
Placing objects
The interactive reports are used in a completely intuitive way. If you wish to
use an object, simply pull it onto the plan with a drag & drop operation:
Interactive report
The attribute can only be dragged onto the report if the owner has already
been placed. A symbol is generated, into which an %N text is placed.
Report template
A text of type Item-Property is created when an attribute is dragged onto a
report template. The user can determine for himself or herself which property
is displayed. In addition, the user can determine whether or not to allow the
attribute to subsequently be modified on the interactive report.
Symbol Designer
Each attribute is displayed as a fixed %N text.
Planning objects are created automatically when base objects are pulled onto
an interactive report with drag & drop:
• The planning objects are created in specific applications for particular
technical fields under the document, for example FD, to some extent also
P&ID and IT.
• In all other cases the planning objects are created “next to” the document.
• The new planning objects can also be created in a completely different
branch if you are working with “pointers”. If, for example, there are
documents in the document view and these possess a unit pointer (i.e. the
pointer to a units view/tab), then the new planning objects are created
underneath the unit (and thus on the Units tab and not on the Documents
tab).
4. The [OK] button starts the copying process. The template “sticks” to the
mouse pointer.
5. Depending on the previous settings, either the template can be positioned
freely or else the positioning has been partially or completely stipulated
beforehand.
6. Depending on the previous settings, the planning objects are also created
in the Navigator after the template has been placed.
Evaluate document
Prints the current template file with all pages at the Windows default printer.
The page orientation is automatically adapted to suit the format of the tem-
plate file.
Save
If you input a name that is the same as that of an existing template file, this
existing template file is overwritten without any prompts appearing.
Only Report Designer: Save as
Saves the report as a crp file in the desired folder.
Undo / restore
This function can undo most actions by one step or else repeat the step in
question.
Zoom: Drag a frame with the mouse. The frame is enlarged to fit the available
space. The entire area is displayed again if you mouse-click on the working
area.
Move sheet: The worksheet can be moved.
Variable zoom: Click on the desired point in the working area and hold down
the mouse button. Slowly drag the mouse downwards (enlarge) or upwards
(reduce).
Zoom in on objects: The working area is enlarged until all the objects that had
just been placed on the working area are visible. The entire area is displayed
again if you mouse-click again.
Layers
The layers can be made visible or hidden here, see SECTION 43.4: LAYERS IN
REPORTS.
Construction
Bird view
Grid
Determines the snap-to grid. All symbols, lines and texts are always placed on
the points of the grid, even if the grid is not visible. The symbols have a
“placement point” that only very seldom coincides with the top left-hand cor-
ner of the symbol.
New plans have as a rule a base grid of 4 mm, and a base grid of 2.5 mm is
also used to some extent in old plans.
The grid is ignored if the Shift key is pressed.
Zoom functions
Objects can be marked, moved and copied with the aid of the Iden-
tifier tool.
You can drag a frame with this tool, in the usual way for operations under
Windows. All objects that are within or on this frame are marked. Marked
objects are shown in a different color, usually a shade of pink.
Individual selections can be made by means of the [Ctrl] key and the left
mouse button. In this way an individual object can also be unmarked from a
marked group.
If only a single object is marked, a second mouse click activates the grab
points. If some of the objects are covered, click again on the same point to
address an object that is “deeper”.
Name
Each object can be addressed by a script via the name. For this reason the
names must be unique.
P1, P2
X-coordinates and Y-coordinates of the start and end points.
Width
Line thickness in mm.
Line type
Standard line type in Windows, e.g.
0 = default (continuous)
1 = continuous
2= ⎯ ⎯
3= ⎯ -
Layer
If layers have been set up for the document, a layer can be selected here and
the drawing element allocated. Layers are usually already available within
Symbols.
There is the associated “Layers” button on the Icon bar, see SECTION 43.4: LAY-
ERS IN REPORTS.
Label
Report Designer: The identification key is set automatically and cannot be
input manually. If the “No cell delimiter” option has been set, identification
key GR is input.
Symbol Designer: An identification key can be input manually.
Changes in the values are visible at once.
The line is given grab points at its ends, and these can be shifted individually
with the mouse.
You can draw polylines by setting the starting point with a mouse click and
clicking on the subsequent points with the left mouse button as appropriate.
Conclude the procedure by clicking with the right mouse button.
Editing circles
The usual Properties window can be opened by double-clicking.
Grab points in the circle are highlighted by means of two separate mouse-
clicks. Using these grab points, you can not only change the mid-point and the
radius but also split up the circle and draw segments instead. Each circle
includes an input point for splitting, plus an additional splitting point for each
tangential or intersection point with another graphic object.
43.2.5 Hatching
Allocate hatching
• Select an object (circle, polygon) and click the “Hatching“ tool.
43.2.6 Transforming
• The move vector is set with the first and second mouse-clicks.
• The objects to be moved are selected with the third and subsequent mouse-
clicks.
The move operation is carried out by clicking on the tick button on the far
right.
Alternative:
Input of the X-coordinates to determine the shift vec-
tor.
Input of the Y-coordinates to determine the shift vec-
tor.
Number of copies of the selected object, either
selected from the drop-down menu or by inputting
whole positive numbers (integers).
Alternative.
Number of copies of the selected object, either selected from the
drop-down menu or by inputting whole positive numbers (inte-
gers).
Distort
•All objects on the report that have connectors are only moved if all the
connectors lie within the selection polygon.
• Objects that have no connectors (such as freehand circles) are only loved of
the bounding rectangle around symbols is completely within the selection
polygon.
• Texts that can be moved on their own are not taken into consideration.
Example: if a motor has a text, within which there is the name of the motor,
and if this text can be moved freely, then it makes no difference whether or
not the text lies within the selection polygon.
• In the case of report objects that are genuinely going to be stretched (such
as connections and potentials), the grab points are still determined
nonetheless and these are moved as required (if not all the grab points are
within the polygon). In other words: with these objects the portion that lies
within the selection polygon and is stretched is determined.
Align
Select with the first mouse-click the object to which the alignment is to be
made. Draw with the second mouse-click a frame that encompasses the
objects to be aligned.
• The lines and the report origin are shown when in Design mode.
• In addition, the object shells are displayed and not the object results.
Example: In the case of a list, the list object is displayed (a frame with a
cross), not the results of the list calculation.
• All the tools are shown.
Syntax:
@Graphics | @Layers | (plan type) | (layer number)
Numbers for the layers can be selected from within the range from 1 to 999,
whereby the range 251 to 255 is used internally by the system and may not be
used or changed.
The switch with the caption Visible , name: VISIBLE is located on the Gene-
ral tab of the base objects layer. The switch controls the setting as to whether
or not the objects of a layer are to be visible initially. (Additional information:
You can toggle specific layers on or off during a work session. But these user-
defined settings are not saved.)
44 MultiCRP.exe
44.1 Objective
MultiCRP.exe is a utility program for the bulk processing of Evaluation
reports. The program is located in the \bin sub directory of the Comos direc-
tory.
The program searches and replaces text expressions. Two methods of opera-
tion are possible here:
• Manual search for specified texts
This search and replace function operates in the options script and/or in the
script of the report items (objects that are placed on the report).
• Automatic search for duplicate names
This search only includes the name fields of the report items.
Please make sure that you address only Evaluation reports. This particularly
applies if the “Recursive ” option is enabled and/or the “Selected only ”
option is disabled. In that case, many files can be accessed.
Recursive
The subfolders are included in the search as well. In the “Folder ” column, the
subfolder in which the report was found is displayed.
Please note: If the Recursive option is enabled, then the search can take very
long. The current search can be ended with [Esc].
Layout
On the Layout tab, a preview of the report appears. The Layout tab is
refreshed only if you switch to the “Source code ” tab and back.
Thus, if you select a report in the result list, thus displaying it on the Layout
tab, this report will remain visible even if another report is selected in the
result list. The new report is visible only after toggling.
While the search is in progress, no other text can be entered in the Search
field. You must first cancel the search. Then you can enter a new search text
and start the search with [SEARCH].
Replace
Single replacement
One of the entries on the Source code tab is marked. Click [REPLACE]. The
text is replaced and you automatically jump to the next entry.
At this moment, the reports have not been saved yet. You can undo your
changes by closing multicrp.exe. If you want to keep them, click [SAVE].
All reports changed until now are saved.
Replace all
The [REPLACE ALL] button replaces all occurences of the search term in all
selected reports.
The [RE-ESTABLISH ...] button corrects these items. To do that, the highest
name of all items on the report is determined. All items with duplicate names
receive a new name, based on the following name scheme: <highest name
+1> ... <highest name +n>.
Please note: All items with duplicate names are renamed. Thus, the “Re-estab-
lish“ function in multicrp.exe is different from the same function in the Report
Designer.
As described above, in the Report Designer, you can also identify which items
have duplicate names. If you right-click an item marked in this manner, you
get the context command | RE-ESTABLISH UNIQUENESS OF NAMES.
However, the current object is not changed by means of this mouse command
(i.e. the object at which the mouse context menu is called)! All other items
with duplicate names receive a different name, but this one item remains
unchanged. However, as all other items get a different name, there is no
longer any duplicate for the current item and all items are unique.
45 Symbol-Designer
This chapter contains additional information on the Symbol Editor. You
should already have read SECTION 43: DESIGNER (2D-DRAWINGS).
• Interactive Report templates must be created for this drawing type. There is
the corresponding call in the option script of the report:
SymbolType = "<drawing type>". (Without brackets.)
There should be very little or no deviations in the line thickness and font size
of the various symbols, since this may negatively affect the quality of the
printout. This is not a Comos problem, it is due to the technical limitations of
printers (printer resolution, conversion of lines whose line thickness cannot be
displayed etc.).
Colors should be used with much care: many printers do not support color
printing.
The text font-style Italic should not be used, since Comos automatically ital-
icizes text items in certain cases, and as such unexpected errors may occur if
Italic is used within symbols.
The grid spacing as well as the point of origin must be adjusted to the connec-
tors on the symbol, otherwise it will be difficult to connect the symbol auto-
matically. For example, if the connectors are not accurately positioned on the
grid and diagonal connections are not allowed. The point of origin should then
be located on the first connector.
Required space
As regards the space required for a symbol, take special note of text variables.
The length of the text output by a text variable depends on the planning data
and can vary considerably.
In this context, you should especially be aware of multilingual text items,
since the length of a text items varies depending on the language being used.
Hierarchy
Normally, the deeper you are in the object hierarchy, the more detailed a sym-
bol will be.
In this case, a basic symbol is created further up in the object hierarchy. Fur-
ther down the hierarchy, the basic symbol is defined in more detail. As a result
of that, the symbol gets checked-in and the inheritance chain breaks off. If the
basic symbol is changed afterwards, these changes are not passed on to the
objects that defined the symbol in more detail.
Therefore one can try to break down the symbols into separate units in some
cases: use text scripts to load additional symbols or symbol parts.
However, the text script may not be changed at a deeper level in the hierarchy,
otherwise inheritance would then break off again.
45.3 Toolbar
Most of the options correspond to the options available in the dialog in which
the parameter defaults are set (compare SECTION 43.2.4: PLACING TEXT.)
New:
Multilingual checkbox
In dependence on the currently active language, different texts can be output
for the text parameter. If you activate the Multilingual option, a text field
appears for each language that was set up within the current project. The des-
ignation of the language that is currently being used is shown in bold.
If you make a selection from the list on the left (by double-clicking or by
pressing the [->] button), this is always transferred to the uppermost field.
After that you can transfer the text into the other fields by using the Copy and
Paste functions and so modifying the text there.
Moveable :
• Activated:
The text parameter receives the label specified by Label and can be moved
by means of its grab points.
• Deactivated:
The text parameter receives a label that signalizes that the parameter may
not be moved. See Label .
Label :
Internally used to identify text parameters. In a symbol, all text parameters
with the same label share one grab point and can only be moved together.
• “Automatically”: The label is created automatically.
Moveable activated: “e”+ random number between 1 and 100
Moveable deactivated: module-dependent label is created, identifying the
text parameter as unmoveable (P&DI: “nv”, EMR: “eZ”)
• If a standard table was created for the current diagram type (base project:
@SYSTEM|@CLASS|[Name of the diagram type]), the labels entered there
are available in the pull-down menu.
• Empty label: Text parameters without label cannot be moved.
Background information:
The labels are processed sequentially in the symbol script. This means, a label
is valid until a new label is set. For placeholder text parameters (*V*P texts)
this often means, that the label set for the text placeholder is “overwritten” by
the label of the additional graphic identified by the placeholder.
Dropdown menu Angle :
Compare The “Properties” tab, P. 46-10.
Checkbox “Apply instantly ”“:
Compare General window area, P. 46-8.
Selection area Text functions / Sub-symbols / Connectors
See SECTION 45.4.1: TEXT FUNCTIONS; SECTION 45.4.2: SUB-SYMBOLS; SECTION 45.4.3:
CONNECTION POINTS.
The origin of a symbol determines how the symbol is placed on the grid of a
report. The origin should thus be placed so as to line up with the connection
points of the symbol.
45.4.1.1 Overview
Please note that the text functions are specific to the drawing type.
It is stipulated in the standard tables of the base project of the default version
supplied which functions are offered in the interface for the relevant drawing
type.
From a programming point of view, the functions are usable quite indepen-
dently of the standard table. However, if the standard table is deleted, the
functions in the input help for the text function are no longer displayed.
The text functions require that the names of the tabs, the attributes,
the properties, etc., are entered accurately. Take great care with the
spelling.
Legend:
• x/x This function has been implemented and is supported by the interface
for this type of diagram.
• x/- This function has been implemented but is not offered for selection by
the interface for this type of diagram, but it can still be used manually by
inputting the correct syntax.
45.4.1.2 AllMyReferences
Example / Syntax:%N AllMyReferences%
This text function stipulates in the form of a text block all the placement loca-
tions of the object (covering all types of diagrams):
45.4.1.3 Ansi1
Example / Syntax:%N Ansi1%
Text function Ansi1 initiates a search for the next object of the “Function”
class within the hierarchical object structure. The first letter of the Label of
the hierarchically superordinate function is output and prefixed to the object
name (if no label has been allocated, the name is used as an alternative):
45.4.1.4 Ansi2
Example / Syntax:%N Ansi2%
Text function Ansi2 initiates a search for the next object of the “Function”
class within the hierarchical object structure. The Label of the hierarchically
superordinate function is output from the second letter onwards. If no label
has been allocated, the name is used as an alternative:
45.4.1.5 BltPfd
Example / Syntax:%N BltPfd%
This text function serves for contact mirror symbols to stipulate where and on
which diagram the switching elements are placed (sheet / path). Here is an
example for a contactor on document SLP2 with contact mirror and links to
the contacts:
The links to the individually placed switching elements are implemented via
the Reference, P. 45-28 text function. Here is an example for a contactor on doc-
ument SLP1 with a link to contactor K2:
45.4.1.6 ComosDevSpec
Example / Syntax:%N ComosDevSpec(“Section”, “Attribute”, “Property”)%
45.4.1.7 ComosElmSpec
Example / Syntax:%N ComosElmSpec(“Section”, “Attribute”, “Property”)%
45.4.1.8 ComosSegSpec
Example / Syntax:%N ComosSegSpec (“Section”, “Attribute”, “Property”)
45.4.1.9 ComosSpec
Example / Syntax:%N ComosSpec(“Section”, “Attribute”, “Property”,
“Unit”, “Class”, [“Description”])%
Function ComosSpec offers more comprehensive output options than do
either ComosDevSpec or ComosElmSpec and it should therefore be used for
preference. Differing from what is shown in the selection mask, it supports the
Properties parameters Value , DisplayValue , Range2 , Range3 , the Units
parameter PhysUnit and, optionally, the Description parameter Description .
45.4.1.10DetailReference
Example / Syntax:%N DetailReference%
Text function DetailReference supplies the information on a placing of the
object on detail diagrams. This function is used in Design plans, for example,
so as to retain at the object a link to the location of the depiction in the circuit
diagram:
45.4.1.11DevAllDescription
Example / Syntax:%N DevAllDescription%
This text function supplies the description of the Maindevice (main device).
45.4.1.12DevContact
Example / Syntax:%N DevContact%
Outputs the label of the connected ComosConnector.
45.4.1.13DevDescription
Example / Syntax:%N DevDescription%
This function output the description of the MainDevice that is intrinsic to the
main device (and has thus been checked in, for example), while display of the
inherited designations is suppressed. Here is an example for the output of
DevDescription in the report before and after checking in:
Example DevDescription
45.4.1.14DevFunction
Example / Syntax:%N DevFunction%
This function initiates a search for the first attribute in the TD (Technical
Data) section of the object that has both a value and a unit. Sorting is done
alphabetically.
Output is only produced if an attribute that meets the conditions is found.
Open the TD tab of the planning object and allocate values for the attributes
that were created (0 for capacitance and resistance in our example):
45.4.1.15DevGUnit
Example / Syntax:%N DevGUnit%
This function supplies the full label of the object with regard to the segment
and document by making use of the AliasFullLabelWithoutFolder (see also the
Comos Core reference) and GUnit functions (see also the Comos Core refer-
ence).
45.4.1.16Device
Example / Syntax:%N Device.<property>%
This text function makes it possible for an experienced user to have direct
access to a wide variety of different types of information about the current
object and in addition about all the objects that are connected to it structurally.
In order to be able to use the wide variety of options offered here
correctly and to the full, a considerable knowledge of programming
in VB Script and for the Comos object class Device (see also the Comos Core
reference) is required.
45.4.1.17Device.FullName
Example / Syntax:%N Device.FullName%
Text function Device.FullName supplies the full name of the object while tak-
ing into consideration the complete object superstructure. Folder objects are
excluded.
45.4.1.18DevLocation
Example / Syntax:%N DevLocation%
This function allows the automatic output of the relevant current installation
locations of objects at the symbol in the specific form set by the project
parameters by making use of the AliasFullLabelWithoutFolder function (see
also the Comos Core reference).
Pic. 45-8: Drag & drop of the location in the Properties mask of the planning object
The LOCATION field is created in the Properties mask planning object BSP-
DevLocation as a result of the drag & drop operation and the location object
is input with its full name. At the same time a link to the unit or location
respectively is input in the respective unit or location branch:
Pic. 45-9: Automatically generated location description of the object in the diagram
45.4.1.19DevLocation1L
Example / Syntax:%N DevLocation1L(X)%
This function is the “location marker” for DevUnit1L, P. 45-21 and allows the
automated output of a specific portion of the name of the place of installation
of the reference object at the symbol. Parameter X , either in integer or string
form, determines the hierarchy level whose name is to be output, starting from
the top (project layer = level 0). Folder objects are not included in this reck-
oning.
Pic. 45-11: Text functions in the Editor and output in the report
45.4.1.20DevName
Example / Syntax:%N DevName%
This function outputs the current designation of the planning object with
regard to any alias structures that may exist in the way that had been set
beforehand at the selected point by the project parameters.
Pic. 45-12: Text function DevName in the Symbol editor and in the diagram
45.4.1.21DevPosition
Example / Syntax:%N DevPosition%
Text function DevPosition supplies the full designation of the first position in
the hierarchical superstructure of the current object by making use of the
MainDevice function, Alias structures, segments and documents are taken
into consideration during this operation.
Pic. 45-13: Text function DevPosition in the Symbol editor and in the diagram
45.4.1.22DevSignalDescription
Example / Syntax:%N DevSignalDescription(Index)%
Text function DevSignalDescription supplies the description of the signal that
is located on the connector specified by the index. If no index has been stipu-
lated, the first signal that is found is taken into consideration.
45.4.1.23DevType
Example / Syntax:%N DevType%
This text function determines the value of attribute HSD.M001 (article num-
ber from the manufacturer data) and outputs this at the specified point.
Pic. 45-14: Text function DevType in the Symbol editor and in the diagram
45.4.1.24DevTypeL
Example / Syntax:%N DevTypeL%
This function evaluates the wire cross-section LQ that had been created under
the SYS Specification tab by making use of the MainDevice function and then
displays the result.
Pic. 45-16: Text function DevTypeL in the Symbol editor and in the diagram
45.4.1.25DevTypeW
Example / Syntax:%N DevTypeW%
Evaluates the wire type LT that had been created under the SYS Specification
tab by making use of the MainDevice function and then displays the result:
Pic. 45-17: Text function DevTypeW in the Symbol editor and in the diagram
45.4.1.26DevUnit
Example / Syntax:%N DevUnit%
Text function DevUnit stipulates the current unit superstructure of the object
with due regard to the incorporation of a comparison of the superstructure
between the object and the diagram on which it is placed. Placement objects
and folder objects are not taken into consideration in this operation.
Pic. 45-19: Text function DevUnit in the Symbol editor and in the diagram
45.4.1.27DevUnit1L
Example / Syntax:%N DevUnit1L(X)%
This function is the “units marker” for DevLocation1L, P. 45-17 and allows the
automated output of a specific portion of the name of the place of installation
of the reference object at the symbol. Parameter X , either in integer or string
form, determines the hierarchy level whose name is to be output, starting from
the top (project layer = level 0). Folder objects are not included in this reck-
oning.
45.4.1.28DevUnitPosition
Example / Syntax:%N DevUnitPosition%
Text function DevUnitPosition stipulates the current object superstructure in
the same way as for DevUnit , but in this case also taking placement objects
into consideration.
Pic. 45-21: Text function DevUnitPosition in the Symbol editor and in the diagram
45.4.1.29Element
Example / Syntax:%N Element.<Property>%
This text function makes it possible for an experienced user to have direct
access to a wide variety of different types of information about the current
object and in addition about all the objects that are connected to it structurally.
In order to be able to use the wide variety of options offered here
correctly and to the full, a considerable knowledge of programming
in VB Script and for the Comos object class Device (see also the Comos Core
reference) is required.
45.4.1.30Elements
Example / Syntax:%N Elements(Index)%
This text function evaluates the Elements Collection of the reference object
by means of the Comos EnObs function. In this case the Index parameter can
be an integer (position in the collection) or a string (“name”).
In order to be able to use the wide variety of options offered here
correctly and to the full, a considerable knowledge of programming
in VB Script and for the Comos object class Device (see also the Comos Core
reference) is required.
45.4.1.31Elm..CO
Example / Syntax:%N Elm..CO<n><X>%
Text function Elm..COnX outputs the FullLabel of the connected device of the
Xth contact point of the nth element.
Valid values for n {1-999}, X {a(A)-z(Z)}
At this point the capitalization (upper / lower case: a/A) of the contact param-
eters is irrelevant, as can be seen in.
45.4.1.32Elm..CP
Example / Syntax:%N Elm..CP<n><X>%
Text function Elm..CPnX outputs the label of the Xth contact point of the nth
element.
Valid values for n {1-999}, X {a(A)-z(Z)}
At this point the capitalization (upper / lower case: a/A) of the contact param-
eters is irrelevant, as can be seen in.
Pic. 45-25: Text function Elm..CP in the Symbol editor and in the diagram
45.4.1.33Elm..DS
Example / Syntax:%N Elm..DS<n><X>%
Text function Elm..DSnX outputs the description of the Xth contact point of
the nth element.
Valid values for n {1-999}, X {a(A)-z(Z)}
At this point the capitalization (upper / lower case: a/A) of the contact param-
eters is irrelevant, as can be seen in.
Pic. 45-26: Text function Elm..DS in the Symbol editor and the results in the diagram
45.4.1.34Elm..Label
Example / Syntax:%N Elm..Label<n>%
Text function Elm..Labeln outputs the label of the nth element.
Valid values for n {1-999}.
Pic. 45-27: Text function Elm..Label in the Symbol editor and in the diagram
45.4.1.35Elm..VW
Example / Syntax:%N Elm..VW<n>%
Text function Elm..VWn stipulates the placement position of the element of
the object itself or one of its accessory parts. The values to be input can
optionally either be whole numbers (n {1-999}), or the corresponding label in
string form (“..”).
The variant with numeric parameters limits the search for the ele-
ment to the Element object class, the variant in string form is class-
independent, on the other hand.
This function serves as a cross-reference to elements that are not placed
directly on the object. This can be displayed at the other point on the same dia-
gram or on other ones.
Pic. 45-29: Text function Elm..VW before and after positioning of the element
45.4.1.36FromDoc
Example / Syntax:%N FromDoc.<>%
This function is used to implement links between different diagrams. From-
Doc supplies the starting document of the link. For further information see the
Comos Core reference: IComosDDocument.
45.4.1.37FromDocObj
Example / Syntax:%N FromDocObj.<>%
45.4.1.38Function
Example / Syntax:%N function%
This function checks whether an RO_function (Dev) function has been
defined in the options block of the report template.
If it has, the return value of this function is used and displayed.
Example function in the options block:
function RO_function (Dev)
RO_function = Dev.Fullname
End function
If this function does not exist, the Specification tab of the reference object is
evaluated and the string located in attribute “FD.F100” at the symbol is out-
put. If this attribute does not exist, or if the string is blank, the name of the
reference object is output at the end without any numeric portions. (Is used as
designatory text for measurement function symbols).
45.4.1.39MainDevice
Example / Syntax:%N MainDevice%
Obsolete. Still provided for compatibility reasons, but should not be used any
longer! New: text function Device, P. 45-16.
45.4.1.40Position
Example / Syntax:%N Position%
This function checks whether an RO_position (Dev) function has been
defined in the options block of the report template.
If it has, the return value of this function is used and displayed.
Example function in the options block:
function RO_Position (Dev)
RO_Position = Dev.Fullname
End function
If this function does not exist, a search is made within the hierarchical super-
structure for the first function object or placement object, and in this case only
the owner structure is taken into consideration. If a corresponding object was
found, then a check is made to see if the owner of the object that has been
found is a document. In this case the AliasLabel of the object is output at the
symbol. If this had not been set, the label or the name are used as appropriate.
If the owner of the object that had been found is not a document, the Alias-
Fulllabel is output in the same way as for the previous item. In this case the
type of display that can be set by means of the RI.TXTMOD attribute at the cur-
rent object is taken into consideration.
45.4.1.41PotAllDescription
Example / Syntax:%N PotAllDescription%
This text function operates solely on potential links and supplies the full
description of the associated potential.
45.4.1.42PotDescription
Example / Syntax:%N PotDescription%
This text function operates solely on potential links and supplies the descrip-
tion of the associated potential.
45.4.1.43PotLocation
Example / Syntax:%N PotLocation
This text function operates solely on potential links and supplies the location
of the associated potential.
45.4.1.44PotName
Example / Syntax:%N PotName%
This text function operates solely on potential links and supplies the name of
the associated potential.
45.4.1.45PotUnit
Example / Syntax:%N PotUnit%
This text function operates solely on potential links and supplies the unit of
the associated potential.
45.4.1.46Rack
Example / Syntax:%N Rack(“Parameter”)%
Text function Rack calculates the slot that has been assigned to the reference
object and outputs the data to the symbol. Possible optional parameters to con-
trol the output are:
• - L (AliasLabel)
• - D (Description)
• - N (Name).
45.4.1.47RefChain
Example / Syntax:%N RefChain(Page)%
Text function %N RefChain( Page)% offers the option of a "chain link" to
objects that are located within the same OwnerCollection . The parameter
Page can take values 1(left) or 2 (right).
45.4.1.48Reference
Example / Syntax:%N Reference%
Text function %N Reference% offers the option of a cross-reference from ele-
ments to their main objects (MainObject ). The placement location of the Main-
Objects of the element is out in the form stipulated by the project parameters.
This MainObject can be displayed at another point on the same diagram or in
other ones.
Please note that the Reference text function at the symbol of the element of
the MainObjects must be created!
Pic. 45-32: Text function Reference in the Symbol editor and in the diagram
45.4.1.49RefMaster
Example / Syntax:%N RefMaster(Type)%
The %N RefMaster(Type)% text function offers the option of a master link to
all objects in the OwnerCollection (Art = “O”) or to all own elements (type =
“E”).
45.4.1.50RefSimple
Example / Syntax:%N RefSimple%
This text function evaluates Comos data from connections and creates a ref-
erence string to the target of the link. This function finds application in the
connection symbols if there are any broken connections and open connec-
tions.
45.4.1.51ReportScript
Example / Syntax:%N ReportScript.functionname%
This text function evaluates the options script of the report template. The
functions stored there can be called up and evaluated by means of ReportS-
cript.functionname.
45.4.1.52Requirement
Example / Syntax:%N Requirement[Index]%
This text function has the option of an optional index, either as an integer or
in string form, to access the elements of the reference object and to output the
implementation of same. If the index is missing, the text function supplies the
reference object with the requisite implementation.
45.4.1.53Rqmt
Example / Syntax:%N RQMT%
This text function supplies the device request of the reference object in the
same way as for Requirement, P. 45-29.
45.4.1.54Rqmts
Example / Syntax:%N RQMTS<Index>%
A short form for Requirement, P. 45-29, but in this case with mandatory input for
the index.
45.4.1.55Slot
Example / Syntax:%N Slot (“Parameter”)%
The Slot text function calculates the current location at which the reference
object can be found and outputs this (compare this with the Rack, P. 45-28 text
function). Possible optional parameters to control the output are:
• - L (AliasLabel)
• - D (Description)
• - N (Name).
45.4.1.56ToDoc
Example / Syntax:%N ToDoc.<>%
This function is used to implement links between different diagrams. ToDoc
supplies the target document of the link. For further information see the
Comos Core reference: IComosDDocument.
45.4.1.57ToDocObj
Example / Syntax:%N ToDocObj.<>%
This function is used to implement links between objects placed on docu-
ments. ToDocObj supplies the target object of the link. For further informa-
tion see the Comos Core reference: IComosDDocObj
45.4.1.58UserFunction
Example / Syntax:%TextScript.UserFunction1%
Pic. 45-35: Planning object structure and UserFunction1 output in the diagram
The user-specific %N texts are not restricted solely to UserFunction1-3,
Any desired functions can be executed in a script by means of TextS-
cript.<Functionname>%. The “<Functionname>” function (without brack-
ets) must then exist in the script.
45.4.2 Sub-symbols
45.4.2.2 Element
Example / Syntax:*V*P E:<Element name>*
This function allows the output of element symbol graphics. The parameter is
the name of the element. (System-generated texts of the elements do not give
any results at this point, since the reference object is always the owner of the
element.)
Example / Syntax:*V*P*E Symbol <Element label>
Please note: In contrast to *V*P E:<Element name>* the label must be passed
as parameter, not the name!
45.4.2.3 Attribute
Example / Syntax:*V*P S: <Tab>.<Attribute>*
This text function allows the output of attribute-dependent additional graphics
at the selected location. The additional graphics are located in a standard table
at the object and are addressed by means of the function parameters:
The following picture shows the atrribute section and selection attribute at the
object:
This picture shows the output of additional symbols via the attribute:
In the VB script these connectors have the corresponding labels ekP (visible)
and ek0 (invisible).
In the VB script these texts have the corresponding labels ek1 (Label) and ek2
(Description).
The texts for connection points can also be input in symbols without the %N
syntax. In other words: if a text has the “eK ” label, it makes no difference at
all whether you write CP1 or %N CP1%. However, for reasons of clarity and
consistency, it is recommended that you make a decision to use one or other
style throughout a project.
Please note that mistakes in programming (connectors with the same names)
can also cause problems at other points that cannot be caught beforehand by
Comos.
Header.Layer = " " Stipulates the drawing layer, layers > 200
are only displayed on the monitor.
Header.Color = Stipulates the display color in RGB mode,
RGB(r,g,b) numeric values between 0-255 for the colors
red (r), green (g), blue (b).
Header.LineTyp = " " Stipulates the line type:
1-continuous,
2-dashed,
3-dotted
Header.Width = " " Stipulates the line thickness.(In mm)
Set Pm = Coord ( X,Y) Stipulates the X- and Y-coordinates of point
Pm.
DrawArc Pm, Pn, Po Draws an arc that is determined in the
mathematically positive sense (ccw) through
three points:
- mid-point
- starting point
- end point.
DrawCircle Pm, Pn Draws a circle with Pm as mid-point and Pn
as point on the periphery of the circle. The
radius is the distance between Pm and Pn.
DrawLine Pm, Pn Draws a line between Pm and Pn.
45.5.2.1 Security
Calling up the Geometrie (PARAM) function can either transfer an object of
the Device/CDevice class or else nothing, depending on where it enters the
programming layer. If no Device or CDevice was transferred, queries to
objects and their properties that require a Device or CDevice can cause pro-
gram crashes. These can easily be avoided if you use the following script rou-
tine (example Device) by default:
Function Geometrie (PARAM)
ResetToDefaults
'Header declarations
45.5.2.2 Container
Direct access to Reportlib-class “Object” and its methods can be undertaken
by means of variable “Container”. Using the following lines of script code:
If Not Container Is Nothing Then
DrawText p16, container.ComosDocument.Fullname, 1, 1
End If
the name of the report documents that had been placed on the object could be
output directly, for example.
45.5.2.3 CurrentTrans
Using the variable CurrentTrans (part of GeoEngine) gives you access to the
current symbol transformation, i.e., you can determine the following proper-
ties:
• Rotation
• Mirroring
• X/Y scaling
• Moving.
CurrentTrans supplies an object of the Reporlib.NTrans class. The
Assign3 method is the most efficient:
Sub GetTrans(Trans, Angle , ScleX, ScleY, Reflect ,x, y)
rf = IIf(Reflect, -1, 1)
a11 = rf * (Cos(Angle) * ScleX)
a12 = -Sin(Angle) * ScleY
a21 = rf * (Sin(Angle) * ScleX)
a22 = Cos(Angle) * ScleY
Trans.Assign3 a11, a12, a21, a22, x, y
End Sub
Example of a call for double scaling in both x and y and also mirroring:
GetTrans CurrentTrans, 0, 2, 2, True, 0, 0
'Draw line
DrawLine p7,p8
At this point the fill color (e.g. blue) of the polygon to be filled must be stip-
ulated, since the CreatePath function will otherwise use the currently valid
color setting as the fill color.
Header.color = RGB(0,0,255)
Set p = CreatePath
If you wish to have a different color for the bonding lines of the object, the
color is input at this point (e.g., green).
Header.color = RGB(0,255,0)
A new fill color (such as light gray) is designated here and a new polygon is
defined:
'Stipulate fill color for triangle
Header.color = RGB(230,230,230)
Set p1 = CreatePath
The color for the bounding lines is now defined (for example, red), the line
drawing command variables are assigned again, and the AddElement function
to create the polygon is used multiple times until the Geometrie (PARAM)
function is terminated correctly by the End Function instruction.
Header.color = RGB(255,0,0)
Examples:
• Set g1 = Grab(“Lu”, 0, -2.5, true)
This is used to create a new movable grab point at the coordinates
(0, -2.5).
• If g1.x <> 0 or If g1.y <> -2.5 ...
Query as to whether the coordinates of the grab point have changed.
45.5.2.6 GetAllPropertiesAndMethodsByObject
Using the Workset.Lib.GetAllPropertiesAndMethodesByObject
(ComosObj) function, you get a collection that includes all the names of the
properties and method of the referenced Comos object.
These keywords are also transferred to the Script editor. Consequently the
Script editor recognizes the Comos variables and marks them in color. In this
way it is possible to avoid any possible problems due to the unintended or
incorrect use of Comos variables by the user.
'DisableScaleGrab = true
DisableRotationGrab = true
DisableXYScaleGrab = true
ResetToDefaults
Header.Layer = "2"
Header.Width = 0.1
Header.LineTyp = 1
46 Report Designer
See also SECTION 43: DESIGNER (2D-DRAWINGS)!
Open Report Designer:
• | EXTRA | REPORT DESIGNER or
• | OPEN in the mouse menu for report templates or
• | OPEN DOCUMENT TEMPLATE in the mouse menu for Reports.
46.2.1 Toolbar
Elements that are created on page 0 (the so-called “master page”) appear on
all the pages.
If you select a page and place elements on this page of the report template,
these elements will also only be output on this page when the report is run.
Create new
This list offers all the programs included within the Windows Registry.
Create from file
A file can be selected here. Programs not included in the Registry can also be
linked in here.
Display As Icon
Off (template): The program is started in the background and you can work
within the report as if the report had the capabilities of the program that had
been started. The results are also displayed directly in the report.
On: The program is started. You cannot see the results in the report, all you
can see is the program icon.
Application
We recommend that you turn off the Display As Icon check box. When you
confirm this with [OK], first of all an external program is started up in the
background. Once you have completed your inputs, simply mouse-click out-
side the editing frame on the report. The external program is terminated and
its inputs are displayed.
Double-click on the inserted object to subsequently edit it.
Properties
The | PROPERTIES command is available once you have marked the inserted
object. In this way you open the OLE document parameters dialog win-
dow:
Name
Each object can also be addressed via a script by means of the name. For that
reason the name should be unique.
P1, P2
The X- and Y-coordinates of the top left and bottom right points. If a coordi-
nate is changed, the object is stretched or squeezed accordingly.
Evaluation Sequence
Determines in what sequence the objects are to be evaluated.
This determines in what order the individual report items are to be calculated.
Since it makes no difference at all for the majority of objects in what order
they are calculated, Eval-Sequence only provides a rough rule for the
sequence: All objects with EvalSequence 0 are calculated before all report
items with EvalSequence 1, and so forth. No order of calculation is applied to
objects with the same EvalSequence number.
Scale
Self-explanatory.
Edit in Comos
If this option is deactivated, the object cannot be opened and edited within
Comos.
Size
Always in the original size: The object protrudes over the edge of the frame if
necessary. With this option the frame cannot be changed in size, since the
frame is simply ignored.
Reduce: The frame determines the maximum size and the object is reduced to
fit as required.
Enlarge or reduce: The frame determines the maximum size and the object is
always optimally sized to fit within the frame when the frame is changed.
Settings that involve the entire worksheet can be made by means of the Opti-
ons :
Grid
Print
On: the grid is superimposed on the report when it is printed.
Off: the grid is not printed.
Display
On: the grid is superimposed on the report when it is displayed.
Off: the grid is not displayed (but is still used).
Gap
Select from the drop-down list a size for the grid spacing or input a value from
the keyboard. Grids can be specified with up to four decimal places to permit
more precise conversion into other units of measure.
Document size
It is possible to input X for the width and Y for the height in the document size
area if no master report was stipulated. If a master report is used, this then
determines the size and inputs that are possible.
Settings
[TEXT]: The dialog box for the text parameters opens here. Select a Type and
stipulate the properties. The selected Type is offered as a template if the Posi-
tion text function is used.
[LINE]: These entries are regarded as templates when a new line is drawn.
Master report
Selects the template file of a master report. The master report is a template file
that is used in many ways. Example: A template file is created with a com-
pany-specific header and footer, to give an example. This template file is
locked.
Master reports can also be incorporated in a relative way by means of “..\”.
A new template file is created and the previously created file is inserted to act
as the master report.
The master report can thus be incorporated into several template files. Typi-
cally a “child frame” is created within the master report, this being the space
that is left as a working area for the “independent” template file. This is done
by moving the upper left-hand point of the “independent” template file onto
the upper left-hand point of the child frame in the master report. All the ele-
ments of the current report are correspondingly moved as well at the same
time.
[ Script area]
A script that is to apply to the entire report template is input in this field. This
includes, for example, global variables or the system calls for the user inter-
faces of interactive reports.
These variables can be accessed in a script of the report with Report. as a pre-
text. Example: Report.RpVar accesses variable RpVar in the options.
The Document size and Master report fields have a logical relation: When
a master report is selected, a template file becomes a “child report”. Fre-
quently an area. The size stipulated for the template file within the Document
size field should match the size of the area to be used in the master report.
• Expression
SECTION 46.3.1.5: TYPE “EXPRESSION”
• Script
SECTION 46.3.1.6: TYPE “SCRIPT”
• Item-Property
SECTION 46.3.1.7: TYPE “ITEM-PROPERTY”
• Fixed
SECTION 46.3.1.8: TYPE “FIXED”
• Attribute
SECTION 46.3.1.9: TYPE “ATTRIBUTE”
Tabs:
for all types: General and Properties
type-dependent: various switch tabs.
Type “fix” excepted, the final text of the text variable is determined both by
the type of the variable and the “object of the report”.
In many case the desired result can be achieved in a number of different ways.
The Name property of the “object of a report” can be addressed directly via
ReportObject-Property ; this works in exactly the same way as using
Expression ReportObject.Name. The same result can be achieved as well,
but with rather more effort, by using a script. The user can choose for himself
or herself which types of text are better for a particular situation.
You can stipulate with | OPTIONS which type of text is to be offered as a tem-
plate when a text is placed.
A text is placed by dragging a text frame from the top left to the bottom right
by means of the Text tool. The result is that a placeholder text is visible (the
text frame is not visible initially). If no text frame is drawn by dragging but
the text is only to be placed by mouse-clicking, the text is given an invisible
“placement point”. The text can be marked by means of a mouse-click in the
(initially invisible) text frame or on the placement point.
The most frequent use for this option is for output of the current page number:
place the text in the template file on All pages . Select Expression as the
Type and edit the field of the PageNr expression. The Re-evaluate per
page option is to be marked on the General tab. The current page number
then appears on each page.
Most of these options correspond to the options provided in the dialog win-
dow in which the defaults are set, see SECTION 43.2.4: PLACING TEXT.
The following options are new:
Angle :
Rotates the text around its placement point. If the text is rotated by means of
the mouse, then the new angle is automatically written to this attribute.
Options group “Display mode ”:
Group of radio buttons:
• “Show text unchanged”: The complete text is displayed as it was entered in
the Texparameter dialog.
• “Cut oversized texts”: Text that protrudes from the text frame is cut.
• “Fit oversized texts”: The font size is adjusted, so that the text fits into the
given text frame.
• “Wrap too long texts”: Line wraps are inserted to be able to display the
whole text.
Apart from these properties, which exist for virtually all object types, any
other ones can also be input. In that case the user must ensure by himself or
herself that the property being addressed also exists in the ReportObject. In
other words: you should know beforehand to which object type the ReportO-
bject belongs. For example, if a unit is set as a “report object”, the property
CDeviceFullName that outputs the path to the base object of the ReportObject
can be addressed.
The result is output as text in the report.
• ReportObject.Name
• ReportObject.Description
• ReportObject.Value
• ReportObject.DisplayValue
Example 1:
Dim User
Set User = ReportObject.Workset.GetCurrentUser()
Text = User.Name
Here Text does not represent a variable, but is instead the output function for
text.
Example 2:
Dim Uservar
Set Uservar = ReportObject.Workset.GetCurrentUser()
if Not Uservar is Nothing Then
Text = Uservar.Name
else
Text = "Undefined!"
endif
Property Description
Colored marking of the text frame: the frame is shown in green in the template
file if it involves types of text that can be edited within the planning project.
If the report is opened within the planning project (or if the template file is
evaluated) the description of the “report object” is displayed. The description
can be overwritten with keyboard input, the new description that has been
input is saved within Comos. A new description is allocated to the object
within the planning project.
Any attribute within the project can be selected. When the Explorer window
is opened for the first time, it can be seen as the initial starting basis for the
“report object”. You can now maneuver to any point within the project from
this initial starting point.
When you mouse-click on this initial starting basis, the linked objects are dis-
played in the right-hand window area:
These can be “owners”. These can be subordinated objects (which are also
called “child objects” in the dialog window).
Double-click on one of the objects in the Go to window in the left-hand win-
dow and the “parent objects” and “child objects of this object are displayed:
You can undo any inputs made by selecting an entry from the list in the right-
hand window and selecting a new child object from there.
Normally the Script tab should not be used with text type Attribute .
For advanced users: The “GetSpecOwner” function can also be modified
manually within the automatically generated script. This gives you the option
to set as you wish the owner of the attribute and also any other parameters.
(for example, so as to create XValue lists that can be edited).
Apart from these properties, which exist in almost all object types, any other
one can also be input. In such a case the user must ensure by himself or herself
that the property being addressed actually exists in the ReportObject. In other
words: you should already know to which object type the ReportObject
belongs. For example, if a unit is set as a “report object”, the CDeviceFull-
Name property that yields the path to the base object of the ReportObject can
be addressed.
The result is output as text in the report.
Keep within the area intended to be used for the child report. If you work in
the child report outside this area (which is technically feasible), this can cause
graphic overlapping between elements of the master report and of the child
report.
Only one area for child reports is possible per master report.
Determine the area to be used for the child report as follows:
• Press the Define working area / Set point of origin button.
• Mouse-click on a point within the report.
• Draw a rectangle (invisible) while holding the mouse button down. The
upper left-hand point of the placement area is at the same time also the
placement point.
Within the master report the area reserved for the child report is shown with
a green cross-hatched frame. Within the child report the area reserved for
the master report is shown with red cross-hatching, as a mirror image, as it
were.
• Alternative:
If only the placement point is to be moved, click once on the working area.
The placement point has a special significance: it determines the new origin
of the child report. In other words: the upper left-hand point of the working
area of the child report is moved to the placement point.
The remaining area for the child report only has a visual function.
The area cannot be moved with the mouse! You have to repeat the procedure
again if you are not satisfied with the results.
The child report and the master report should match each other. If the place-
ment point is moved, the entire child report is moved. Ensure that no elements
of the child report are pushed over the edge as a result. We recommend that
you check the child report if the placement point is moved or changed.
The import function for Windows metafiles is especially useful for the
importing of AutoCAD files. The AutoCAD files must have been
exported beforehand in WMF format within AutoCAD to be able to do this.
To place a Windows metafile:
• select the Place WMF picture button,
• drag out the placement frame,
This function places a list frame and thus determines the space that is
to be taken up by a list for preference. The list frame behaves here in a
similar way as it would within CAD systems: if information sticks out beyond
the list frame, it is still displayed nonetheless.
A list always consists of a list frame and a sub-report.
Lists can only be created above a specified minimum size. This prevents the
accidental creation of lists of size “0”. The list can be reduced in size once it
has been created.
A list must be at least of size 15x15 for a 5 grid. In general, that is three rows.
If the list is to be only two rows high, it can be reduced in size later. Mouse-
click once on the list frame and use the grab points at the corners and in the
middle of the delimiting lines.
Collection
Edit field:
This stipulates which “collection” applies to the list or is to be used. Report-
Object is offered as a template value.
File name
The file name of the template file with the sub-report. As usual, mouse-click-
ing on [...] opens the Explorer window.
Object query
This option uses the definition of a default query as the source of the list. See
SECTION 46.3.1: PLACING TEXTS regarding the default queries.
A list can make use of various sub-reports (row reports). Since only one sub-
report can be specified on the Rows tab, a script must be used to make use of
multiple sub-reports.
An entry in the Rows tab has no meaning if a sub-report (row report) is stip-
ulated within the script.
A sub-report is input with the keyword Filename, e.g.:
Filename = "Liste1_Z1.CRp"
It is important to note that the extension “CRp” must be included as well. The
example also demonstrates a convention that is useful for the management of
the template files: the name of the list (or of the template file with the list)
should be given before the underscore, and after the underscore there should
be a label for the row report with a sequential number.
Within the sub-report you can access variables of the list frame, as follows:
• define Sub onCreate() with Dim variables on the Script tab of the list
frame outside the procedure,
• assign values to the defined variables within procedure Sub
onCreate()e.g. with at a For... next loop,
• use text type ReportObject-Property within the sub-report, and
• input as the property the name of the defined variable in the Property field.
Lists in sub-reports
A sub-report can in turn include a list (or any other object of the Comos
Report Manager). This list is often anchored directly to the bottom edge of the
working area and called up with the Size variable option.
This option allows the list to make use of the space of the superordinate list
frame in a variable way.
Often it is desired that a list that has been placed in the sub-report is oriented
towards the list frame of the sub-report and not towards the list frame of the
Evaluation Reports in terms of the space requirements. A row break is gener-
ated in the subordinated list frame by means of the SetLineWrap command
(see the next section). This means that the subordinated list frame is set up
again instead of the superordinate list frame and the list does not leave the area
of the stipulated space within the subordinated list frame.
• The Collection field of the list frame can remain blank (the template
ReportObject. can remain as it is)
• Script in the list frame:
Dim Name
Sub OnCreate ()
SetLineWrap
Set Col = ReportObject.ScanObjectsbyClass("Device")
For i = 1 to Col.Count
Name = Col.Item(i).SystemFullname
EvalOneRow
next
End Sub
The desired unit must of course be set as the “report object”.
A sub-report includes default parts of reports that are used again and
again in this particular context. This avoids having to input the infor-
mation again from scratch each time.
The difference between master reports and sub-reports lies in the logical hier-
archy of the linked template files:
Master Template
report file 1
Template
file 2
Template Sub-report
file X 1
Sub-report
2
A master report is thus the subordinated “clip” for template files, a template
file is the superordinate “clip” for sub-reports.
The sub-report must be called up at least once to become active so that the
contents can be displayed. The easiest way to do this is if there is at least the
following entry on the Script tab:
Sub OnCreate ()
SetItemObject = ReportObject
End Sub
Place sub-report
• Press the Place sub-report button.
• Mouse-click on a point within the report.
• Draw with the mouse and the button held down a rectangle from the top left
to the bottom right. Ensure that the sub-report is made in this direction and
not vice versa.
In the template file the sub-report is displayed with a double frame.
• Switch to the Identifier tool and mouse-click once on the frame of the sub-
reports.
• Right-click once on the frame of the sub-reports.
File name The file name of the template file of the sub-
report. As usual, mouse-clicking on [...]
opens the Explorer window.
Item Here yo can stipulate which “item” (an item
is a special object type) is to apply for the
sub-report or which is to be used. The Repor-
tObject template value can be retained, even
if an object is not called up actively.
“Graphic objects” in reports are objects that have no counterpart in the data-
base and only exist within the report. In other words, lines, circles and the like.
How to place a graphic object:
The result is that you get an Object Parameter dialog window. This window
includes the General , Rows and Script tabs.
Note also that all report objects can be addressed by name within scripts. You
can use self-allocated names in scripts.
Note that you should drag out the frame from top left to bottom right. Other-
wise errors can arise concerning the placement point of the frame: the pro-
gram always expects the placement point to be at the top left. If you made the
frame in some other way, then, for example, objects will be drawn outside of
the frame on the basis of the starting point as the placement point.
Script-oriented drawing
Sample script for the Script tab:
Set p1 = g.Coord(0,5)
Set p2 = g.Coord(0,0)
g.DrawLine p1, p2 Start and end points for a line.
Set p3 = g.Coord(5,5)
Set p4 = g.Coord(15,5)
g.DrawLine p3, p4
The coordinates are based on the bottom left-hand point of the frame.
set sym =
reportobject.devsymbols.item ("DETAIL") Assignment of the
gengeometrie sym.script, nothing symbols for the type of
diagram
End sub Output of the variables.
An object can be trans-
ferred with the second
parameter.
This assignment assumes that the object of the report includes a symbol for
type of diagram “Detail”. Any other object can be used instead of reportob-
ject, but then the corresponding path must be set with the set command.
ENABLEPROCESSCONNECTIONSENSOR Boolean
(BOOLEAN)
ENABLESYNCHRONIZENAVIGATOR Boolean
(BOOLEAN)
46.4.2.10AutoLoopFilter (String)
Example / Syntax:AutoloopFilter =
46.4.2.11AutoMarkAsChanged (Boolean)
Example / Syntax:AutoMarkAsChanged = True
Enhanced function for AutoWatchRevisions (Boolean), P. 46-42, see the additional
details given there.
46.4.2.12AutoSaveDocument (Boolean)
Example / Syntax:AutoSaveDocument = True
Determines whether to save the document without further prompting when it
is closed.
46.4.2.13AutoStartLoop (Boolean)
Example / Syntax:AutoStartLoop = True
“True” starts up automatic placing and connection when a new report is
opened for the first time.
46.4.2.14AutoWatchRevisions (Boolean)
Example / Syntax:AutoWatchRevisions = True
See also SECTION 41: REVISIONS.
„AutoWatchRevisions is the basic function, AutoMarkAsChanged the
enhanced function.
Revision monitoring of reports is activated by means of AutoWatchRevisi-
ons,but no report objects are marked when they are modified.
This change marking is activated by means of AutoMarkAsChanged.
Template value when neither AutoWatchRevisiones nor AutoMarkAsChan-
ged exist within the script: False.
46.4.2.15CableObjectVersion (Long)
Example / Syntax:CableObjectVersion = 1
Old RoCable objects are created with drag & drop if this is set to 1, while a
setting of 2 creates new ones.
46.4.2.16CheckDocObjects (Boolean)
Example / Syntax:CheckDocObjects = True
If set to “True”, automatic checking of all the objects placed on a report starts
up when the report is opened and the results are displayed in the “Document
analysis” message box. This functionality can be switched off with the
“False” setting. This is desirable if there is a large number of objects on the
report, as this will reduce the time needed for the report to load.
46.4.2.17CheckIOConsistency (Boolean)
Example / Syntax:CheckIOConsistency = True
Switches on the input/output consistency check in FixDependencies in func-
tion diagrams so as to prevent incorrect allocations.
46.4.2.18CObjectFullNameForPipe (String)
Example / Syntax:CObjectFullNameForPipe = „@1RI|@V10|@A"
This makes an assignment of the base object for piping on the report.
46.4.2.19ConcessionRI (Boolean)
Example / Syntax:ConcessionRI = True
The “True” setting prevents changes to the connection logic of Comos con-
nectors when objects are placed on this report. This is used when Comos
objects and their connections to one another have already been entered in
other documents and in the database and these objects are to be displayed in
further diagrams without have any effect on the information that is already
stored in the database.
46.4.2.20ConnectionHook (Double)
Example / Syntax:ConnectionHook = 2
Determines the type of display and the size of connection points. “0” creates
a connection point, numeric values > 0 create connecting hooks with the cor-
responding size in millimeters.
46.4.2.21ConnectionLineMode (String)
Example / Syntax:ConnectionLineMode = „RW“
Determines the type of connecting lines.
ConnectionModeTypes:RWread / write (default value)
RRead-only
WWrite-only
46.4.2.22ContactMirror_X (Double)
Example / Syntax:ContactMirror_X = 0
Determines the X-position of the contact mirror (value in mm).
46.4.2.23ContactMirror_Y (Double)
Example / Syntax:ContactMirror_Y = 20
Determines the Y-position of the contact mirror (value in mm).
46.4.2.24CopyConnectionDependentObjects (Boolean)
Example / Syntax:CopyConnectionDependentObjects = True
Only for internal use.
46.4.2.25CutLineWidth (Double)
Example / Syntax:CutLineWidth = <Parameter>
Determines the cutout width in millimeters when pipes cross over each other
on diagrams of type PFD.
46.4.2.26DefaultIdRectsForSymbols (Boolean)
Example / Syntax:DefaultIdRectsForSymbols = True
If this is set to “True”, it is only necessary to mouse-click in the close prox-
imity (bounding rectangle) of the object on the diagram in order to mark it.
The object must be touched directly if “False” is set (this is the default value).
46.4.2.27DeleteModePFD (Boolean)
Example / Syntax:DeleteModePFD = True
This option detainees the deletion mode for PFD diagrams. If it is set to
“False”, then only the objects on the diagram are deleted and the database
entries are not affected. If it is set to “True”, then both the graphic objects and
the corresponding database entries are deleted (after a warning prompt!).
46.4.2.28DimensionSymbol (String)
Example / Syntax:DimensionSymbol = “Arrow”
This instruction specifies the dimensioning of the symbol to be displayed.
Possible values: arrow, circle, dot, slash. (Default = arrow).
46.4.2.29DimensionTextHeight (Double)
Example / Syntax:DimensionTextHeight = <Parameter>
Default = 5. Height of the dimension text in mm. If another unit has been input
in DimensionUnit, then the unit input here in DimensionTextHeight is still
used in mm and is then converted into the other unit of measure. The param-
eter can have any desired number of decimal figures in the Double variable
value range, the decimal separator depends on the country setting.
46.4.2.30DimensionUnit (String)
Example / Syntax:DimensionUnit = <„Parameter“>
This instruction determines the text size is to be specified by DIMENSIONTEXT-
HEIGHT. The parameter can accept the values mm, cm, m, inch .
46.4.2.31DrawPipeConnectorSymbol (Boolean)
Example / Syntax:DrawPipeConnectorSymbol = True
Toggles the display of the piping link symbols on or off when the piping
crosses over page boundaries. (Default = True).
46.4.2.32DrawPipeEndSymbol (Boolean)
Example / Syntax:DrawPipeEndSymbol = True
Toggles on and off the display for piping end symbols. (Default = False).
46.4.2.33DrawPipeEndSymbolForSegment (Boolean)
Example / Syntax:DrawPipeEndSymbolForSegment = True
Toggles on and off the display for piping segment symbols for newly created
piping. The toggling of the display can alternatively be done for all piping via
the context-sensitive mouse menu as well.
46.4.2.34DrawTerminalSideMark (Long)
Example / Syntax:DrawTerminalSideMark = <Parameter>
Determines whether and on which output device the terminals page marking
is to appear. Possible parameter values: 0, 1, 2.
0 = Display on the screen, is not printed as hard copy.
1 = Display on the screen and is also printed as hard copy.
2 = Neither displayed on the screen nor printed.
46.4.2.35EnableButtonANSICable (Boolean)
Example / Syntax:EnableButtonANSICable = True
“True” inserts the toggle button for ANSI cable display into the toolbar of the
report.
46.4.2.36EnableButtonOblique (Boolean)
Example / Syntax:EnableButtonOblique = True
“True” inserts the “Oblique” checkbox into the toolbar of the report in
enhanced connection mode. The tick in the checkbox makes it possible to
draw non-rectangular connections.
46.4.2.37EnableButtonSpline (Boolean)
Example / Syntax:EnableButtonSpline = True
“True” inserts the “Spline” checkbox into the toolbar of the report in
enhanced connection mode. The tick in the checkbox makes it possible to
draw any type of splines desired.
46.4.2.38EnablePaging (Boolean)
Example / Syntax:EnablePaging = True
If set to “True”, this function means that the “Navigate to previous / next ”
buttons in the icon bar of the report are offered. The Comos sorting of the doc-
uments is used.
46.4.2.39EnableProcessConnection (Boolean)
Example / Syntax:EnableProcessConnection = True
Determines whether a process device can be created or changed.
(Default = False).
Background: a connection is created automatically within Comos when a
function (measurement function or actuating function) is docked onto piping.
This connection can be provided with additional objects: a nozzle can be
inserted automatically in the case of a measurement function, and a valve in
the case of an actuating function. These forms of automation cease if the
option is set to True and the corresponding objects have been prepared within
the functions.
Please note that this form of automation can be controlled even more finely
with the aid of EnableProcessConnectionActor and EnableProcessCon-
nectionSensor. If one of these two options is set, then the general option
EnableProcessConnection may not be used.
46.4.2.40EnableProcessConnectionActor (Boolean)
Example / Syntax:EnableProcessConnectionActor = True
Determines whether a process device for an actuating function can be created
or changed (e.g., in the case of measuring function connections).
(Default = False).
Background: see EnableProcessConnection.
If this option is used, then the general option EnableProcessConnection
may not be used.
46.4.2.41EnableProcessConnectionSensor (Boolean)
Example / Syntax:EnableProcessConnectionSensor = True
Determines whether a process device for a measuring function can be created
or changed (e.g., in the case of measuring function connections).
(Default = False).
Background: see EnableProcessConnection.
If these options are used, then the general option EnableProcessConnection
may not be used.
46.4.2.42EnableSynchronizeNavigator (Boolean)
Example / Syntax:EnableSynchronizeNavigator = True
If script option EnableSynchronizeNavigator = True is in the options
script of a report template, the object (device) selected within the report is
likewise selected in the Navigator and vice versa. (Default = False).
46.4.2.43EXFConformable (Boolean)
Example / Syntax:EXFConformable = True
A number of special points should be noted concerning export into the EXF
format. You can stipulate via this script option that reports must conform to
the exf format. Among other things, that causes a change of behavior in the
case of objects with associated texts. These can no longer be moved by using
the grab points but must be given fixed defined positions. (Default = False).
46.4.2.44GeneralScaleFactor (Double)
Example / Syntax:GeneralScaleFactor = 1
All of the objects placed on the report are automatically scaled with this fac-
tor. Main area of application: a symbol was drawn for a grid (for example, a
4 mm grid) and is now to be used on another grid as well (for example, a 5
mm grid). In the above example you could increase all the symbols in size
with a scaling factor of 1.25 so that the placement points and connectors of
the symbols also fit in cleanly on this new grid. (Default = 1).
See also ScaleForObjects.
46.4.2.45ListMaster (Boolean)
Example / Syntax:ListMaster = True
46.4.2.46PotentialProlongation (Double)
Example / Syntax:PotentialProlongation = 20
Used in the case of potentials so as to modify the potential line by the stipu-
lated value in millimeters on the pages of the potentials where the label has
been switched off. Positive values lengthen the line and negative values
shorten it.
46.4.2.47PreferredDirection (String)
Example / Syntax:PreferredDirection = “X”
If the direction of connection cannot be identified by the system without any
ambiguity, this parameter stipulates the preferred direction of connection
(X = X-direction, Y = Y-direction) in “CONNECT AUTOMATIC” mode.
46.4.2.48QuadrantOffsetLeft (Double)
Example / Syntax:QuadrantOffsetLeft = 10
Determines the X-coordinates for the starting calculations. This functionality
belongs to the group of path and zone variables for all diagrams of type
“ELO” or “FUP”. (Parameter values are absolute values in millimeters.)
46.4.2.49QuadrantOffsetTop (Double)
Example / Syntax:QuadrantOffsetTop = 10
Determines the Y-coordinates for the starting calculations. This functionality
belongs to the group of path and zone variables for all diagrams of type
“ELO” or “FUP”. (Parameter values are absolute values in millimeters.)
46.4.2.50QuadrantSizeX (Double)
Example / Syntax:QuadrantSizeX = 50
Quadrant size in the X-direction. This functionality belongs to the group of
path and zone variables for all diagrams of type “ELO” or “FUP”. (Parameter
values are absolute values in millimeters.)
46.4.2.51QuadrantSizeY (Double)
Example / Syntax:QuadrantSizeY = 50
Quadrant size in the Y-direction. This functionality belongs to the group of
path and zone variables for all diagrams of type “ELO” or “FUP”. (Parameter
values are absolute values in millimeters.)
46.4.2.52QuadrantStartChrX (String)
Example / Syntax:QuadrantStartChrX = “1”
Starting value for the designation of the first quadrant (X-direction). Valid
values: 0-9, A-Z. This functionality belongs to the group of path and zone
variables for all diagrams of type “ELO” or “FUP”. (Parameter values are
absolute values in millimeters.)
46.4.2.53QuadrantStartChrY (String)
Example / Syntax:QuadrantStartChrY = “A”
Starting value for the designation of the first quadrant (Y-direction). Valid
values: 0-9, A-Z. This functionality belongs to the group of path and zone
variables for all diagrams of type “ELO” or “FUP”. (Parameter values are
absolute values in millimeters.)
46.4.2.54QuadrantStepX (Integer)
Example / Syntax:QuadrantStepX = 1
Determines the step width for the calculation of paths and zones of type
“ELO” or “FUP” in the X-direction. (Default value = 1).
46.4.2.55QuadrantStepY (Integer)
Example / Syntax:QuadrantStepY = 1
Determines the step width for the calculation of paths and zones of type
“ELO” or “FUP” in the Y-direction. (Default value = 1).
46.4.2.56RestoreReferencesAfterCopy (Boolean)
Example / Syntax:RestoreReferencesAfterCopy = True
If set to “True” (default value), all the objects placed on the report and their
references are checked and created from scratch in the database as applicable
after a copying process in the case of interactive reports.
46.4.2.57ScaleForObjects (Boolean)
Example / Syntax:ScaleForObjects = False
If the command is set to “False”, the symbols on the report always remain at
100% of the original size (original scale), if the | OPTIONS | SCALE mouse com-
mand is used in the report.
The default setting is True and this value also applies if the command is not
available. In the default setting the symbols are thus increased or reduced in
size if the scale of the report is changed.
This options script variable can be toggled off for individual symbols. This is
done with the doScale = True command in the symbols script.
46.4.2.58SectorOffset (Integer)
Example / Syntax:SectorOffset = 0
Stipulates the offset when setting sectors. The setting of the PreferredDirec-
tionoption determines whether zone sectors (X) or path sectors (Y) are to be
calculated.
46.4.2.59SectorSize (Integer)
Example / Syntax:SectorSize = 0
Stipulates the width of the sectors for standard sheets that have been split up.
46.4.2.60ShowConnectedWith (Boolean)
Example / Syntax:ShowConnectedWith = True
Default = False. Stipulates whether information on the partner connector is to
be displayed at the current connector of the connection. If set to True, a sym-
bol that is to be displayed at the connection point is searched for in the @Con-
nection table, separately for each type of diagram.
46.4.2.61ShowConnectionInfo (Boolean)
Example / Syntax:ShowConnectionInfo = True
46.4.2.62ShowLineModeControl (Boolean)
Example / Syntax:ShowLineModeControl = True
Allows display of the selection box with the types of connections.
(Default = False).
46.4.2.63ShowSymbolBar (Boolean)
Example / Syntax:ShowSymbolBar =True
Toggles the display of the symbol bars on and off. (Default = True).
46.4.2.64SideView_X (Double)
Example / Syntax:SideView_X = 25
Determines the spacing in the X-direction between the symbol (object) origin
and the overall view drawing in space assignment plans, the unit of measure
is mm, no display if the value = 0.
46.4.2.65SignalLeftX (Double)
Example / Syntax:SignalLeft_X = 8
Determines the left-hand boundary of the signal symbols on diagrams of type
“FUP”. (Default = 8)
46.4.2.66SignalRightX (Double)
Example / Syntax:SignalRight_X = 8
Determines the right-hand boundary of the signal symbols on diagrams of
type “FUP”. (Default = 288).
46.4.2.67SignalSlotCount (Double)
Example / Syntax:SignalSlot_Count = 25
Determines the possible number of signal placeholders on diagrams of type
“FUP”. (Default = 22).
46.4.2.68SignalSlotHeight (Double)
Example / Syntax:SignalSlot_Height = 20
Determines the size of the signal placeholder and thus the signal symbol size
in millimeters in the Y-direction on diagrams of type “FUP”. (Default = 8).
46.4.2.69SignalTopY (Double)
Example / Syntax:SignalTop_Y = 15
Determines the upper starting position of the signal placeholders on diagrams
of type “FUP”. (Default = 12).
46.4.2.70SignalWidth (Double)
Example / Syntax:SignalWidth = 40
Determines the display size of all the signal symbols in the X-direction on dia-
grams of type “FUP”. (Default = 48).
46.4.2.71SignalWidth1 (Double)
Example / Syntax:SignalWidth1 = 15
Determines the display size of the front signal symbol part in the X-direction
on diagrams of type “FUP”. (Default = 16)
46.4.2.72SignalWidthGraphic (Double)
Example / Syntax:SignalWidthGraphic = 10
Determines the display size of the rear signal symbol part in the X-direction
on diagrams of type “FUP”. (Default = 8).
46.4.2.73SignByEmptyReference (Boolean)
Example / Syntax:SignByEmptyReference = False
If set to “False”, no texts are output if links are blank. (Default = True).
46.4.2.74SnapPrecision (Double)
Example / Syntax:SnapPrecision = 1
Determines the snap precision of objects on the diagram. (Default = 0.9). Doc-
uments imported from other programs can have very small terminal radii that
are very close to each other and components that are densely packed together.
Since SnapPrecision decides, among other things, when connectors are to
be regarded as joined, it is advisable to reduce the factor in such cases (e.g.
0.5).
46.4.2.75SortNewObjectsInCategories (Boolean)
Example / Syntax:SortNewObjectsInCategories = True
Initiates the sorting of new Comos objects in adjacent category folders.
(Default = False).
46.4.2.76StdPipeFlagNoColor (Boolean)
Example / Syntax:StdPipeFlagNoColor = True
Toggles on and off the color display for the default piping flag.
(Default = False).
46.4.2.77StdPipeNoReflect (Boolean)
Example / Syntax:StdPipeNoReflect = True
“True” switches off the mirroring (reflection) of piping flags when the direc-
tion of flow is reversed. (Default = False).
46.4.2.78SuppressReference (Boolean)
Example / Syntax:SuppressReference = True
“True” suppresses the output of cross-references to connections in the ELO
application. (Default = False)
46.4.2.79SymbolType (String)
Example / Syntax:SymbolType = “Detail”
This setting determines which type of symbol display is to be used. See the
pick lists in system project ...\@System\@DRW_Type for possible additional
settings.
46.4.2.80Unit
The setting Unit = 0 or Unit = 1 in the options script of a report template deter-
mines which unit of measure (mm or inches) is to be used when working in
all derived reports. All the decimal places to be taken into consideration were
increased to four to improve the precision of conversion operations.
Please note that the unit setting only applies to the report template itself and
those reports based on it, but not for reports to be loaded, such as row reports,
child reports or sub-reports.
When converting to “inch” units (Unit = 1) the entry for the page
size, the grid, all the coordinates and the heights and widths
of graphic objects on the report are automatically converted. Angles are basi-
cally calculated on the basis of 360 degrees.
AutoCAD objects can also be imported if they use “inch” units. Vice versa,
reports using “inch” units can also be exported as AutoCAD drawings.
The values can also be input as points (“pt”) for graphic report objects (line,
circles, etc.). Nonetheless, the input is then converted into the current system
of units for the report (mm or inches) and is also saved as such. If you make
an input in points, close the Properties window and open it again, the value
will no longer be in points but is displayed in the current unit.
46.4.2.81VGBConnectionLength (Double)
Example / Syntax:VGBConnectionLength = 15
Used in function diagrams as per VGB to stipulate the length of the visible
part of the first connection element of a signal. Value inputs yield the display
length in mm, 0 shows the full length. If the input exceeds the maximum per-
missible display size, only the maximum possible size is displayed.
46.4.2.82WorkingBackupTime (Double)
Example / Syntax:WorkingBackupTime = 15
Controls the interval (in minutes) in which the document is automatically
saved.
Default: 5 minutes; 0 switches the auto-save function off.
46.4.2.83XXDocProgID (String)
Example / Syntax:XXDocProgID = “ProjectName.ClassName”
Given the prerequisite that “IReportXDoc.dll” has been implemented before-
hand, a user-defined DLL can be called up in this way.
The functions below can be used in both Text and List scripts.
46.5.1.18Sub ToBack ()
Sets the report item in the background
46.5.1.19Sub ToFront ()
Sets the report item in the foreground
46.5.1.21Property X1 As Double
Gets and sets the value for the X1 coordinate
46.5.1.22Property X2 As Double
Gets and sets the value for the X2 coordinate
46.5.1.23Property Y1 As Double
Gets and sets the value for the Y1 coordinate
46.5.1.24Property Y2 As Double
Gets and sets the value for Y2 coordinate
46.5.2.10Sub SetLineWrap()
Enables lists to always retain their positions, even in subsequent pages within
sub reports.
46.5.2.11Property X1 As Double
Gets and sets the value for the X1 coordinate
46.5.2.12Property X2 As Double
Gets and sets the value for the X2 coordinate
46.5.2.13Property Y1 As Double
Gets and sets the value for the Y1 coordinate
46.5.2.14Property Y2 As Double
Gets and sets the value for Y2 coordinate
47.1 Toolbar
The following buttons are only available when an Interactive Report is edited.
These buttons do not exist either in the Report Designer or in the Symbol
Designer.
• The first symbol that was found by Comos for this entry in USERLNTYPE
is always used. Any additional symbols that had been defined are ignored.
• In other words, there may only be one symbol for each entry (each row) in
standard table USERLNTYPE so as to avoid any misunderstandings. It
makes no difference at all in what type of diagram the symbol had been
created.
Thus if you had “Header.Width = 0.5” in the symbol and the user wanted
to choose another thickness, then this user input would only affect the remain-
ders.
Please note that the name of the standard table must match exactly the dia-
gram type of the report. Check this by opening the report template and search-
ing for the entry SymbolType = "...".
Example:
@SYSTEM | @LINETYPES | RI1 belongs to SymbolType = "RI1".
You can see within Comos which types of connectors are available.
A ConnectionType[TYPE] standard table for each connector type is located
in the system project. [Type] is to be replaced by the relevant type name of the
connector:
Symbol : Is not evaluated. The symbol is supplied from the line type that was
stipulated in Value3 .
Value1 : The actual name of the sub-type. The connector types are handled
under this designation. You would also get this text if you queried the sub-
type in the object debugger.
Value2 : Line thickness. The settings in the symbol (Header.Width) take pri-
ority. In addition, there can be peculiarities in specific areas.
Value3 : Designation of the line type. The line type can originate from
USERLNTYPE or else can be called up from Comos’s own line types, see,
for example SECTION 47.1.2.4.2: STRUCTURE OF @1RI|1|J AND @1RI|1|K. In this case
the Comos lines must not have been defined before in @1RI | 1 | J or in
other standard tables. Instead, you can call up the Comos line types at once in
Value3 if you know the code name.
Value4 - Value6 : RGB colors of the line.
Value7 : Layer of the lines.
For a pipe
1. Special color: Red for inconsistent always wins out over the others.
2. Administrator default or user setting: Setting on the RI Display tab
before placing the pipe.
3. Manual setting at the pipe or in the report at the connection.
The following applies for the administrator default or user setting as per
point 2 and point 3:
– Please note that the menus at the pipe and in the report are not
completely identical. The diagram-type-specific line types are of course
available as well in the report.
– Please note that different colors are offered in the Properties window for
the pipe and in the report. Selection is done from a standard table in the
Properties window of the pipe. Selection is done from the Windows
colors in the report.
If you have to select a color within the report, the information “Windows
color” is shown in the Properties window of the pipe.
If a color was selected in the Properties window of the pipe, then a grey
color appears in the report in the graphic properties of the connection.
The following are available for user selection:
– Standard table @1RI|1|J
– Plus: User-defined lines that were transferred from USERLNTYPE into
@1RI|1|J
• You can make an allocation on the basis of the type of diagram via
LINETYPES. These line types are then available for both pipes and action
lines.
• In standard tables @1RI|1|J and @1RI|1|k you can directly call up an entry
from USERLNTYPE. These line types are then only available either for
pipes or for action lines.
Both the above options can be used in parallel. Thus the same line type can be
offered several times.
Since the designation of the line type is not taken from USERLNTYPE but
is defined in the standard table that accesses USERLNTYPE, the same line
type can thus have different designations.
In other words, the user probably would not notice that two different entries
ultimately refer to the same line type.
Peculiarities
The details are only used at the point in time when the connection is created
on the report. For that reason all the graphic settings of the connection can also
be changed retrospectively.
Value3 : Designation of the line type, see SECTION 47.1.2.4.2: STRUCTURE OF
@1RI|1|J AND @1RI|1|K.
@SYSTEM | @LNWIDTH.
These lists are not used for the functions described above and only exist for
reasons of backward compatibility.
47.1.2.5 Lines in EE
The following explanations apply to reports with the options script entry
Application = “ELO”.
Continuous
Dashed
Dotted
Dash-dot-dash
Long dash
Short dash
This list use Windows defaults and cannot be changed.
• Plus: Diagram-type-specific lines (LINETYPES)
See SECTION 47.1.2.2: DIAGRAM-TYPE-SPECIFIC LINE TYPES (LINETYPES).
Peculiarities
Value2 : Line thickness. The line thickness can no longer be changed manu-
ally. If there is no input, the default setting is 0.35.
Value3 : Designation of the line type, see SECTION 47.1.2.4.2: STRUCTURE OF
@1RI|1|J AND @1RI|1|K.
Simply drag the desired new object with the Object tool onto an object on the
drawing area. The object in question in the Interactive Report changes color.
If another base object or a planning object are allocated, then the symbol dis-
play in the plan changes correspondingly. Connections are retained as far as
possible.
An exclamation mark [!] appears on the right when you input a text. The input
is only accepted once you have clicked on the exclamation mark or pressed
<Return>. Until you have clicked on the exclamation mark, the input can be
undone by pressing [Esc] for each text field and the original text is restored.
| FIXED
This object cannot be changed, regardless of which connections exist to other
objects. This option is the default setting for newly placed objects.
| SEARCH TEXT
The Search conditions dialog window opens when you call up the Search
text setting:
If this option is used with planning objects, the objects then only continue to
function as placeholders. They are shown in red in the Interactive Report.
The object changes depending on a planning object in the Comos tree struc-
ture. Example:
Assume that an object that is to act as a template for a motor is placed on an
Interactive Report. M1 is input for the search text, for example. When the
report is created in the planning project, an attempt is made to find a motor
with the name M1. The object that had been placed originally is replaced
when a valid object is found.
Base object The name of the placed object is input in this text field.
If the search text does not lead to a valid result, the
original object that had been placed continues to be
displayed.
Object This field allows you to set up a search text quickly.
An object can be pulled on the field by means of drag
& drop. The Number of hierarchical levels and
Search text fields are filled in automatically when a
valid object is found.
Start object for Document : A valid object is sought, starting from the
text search document.
Unit : A document can have a cross-reference to a unit.
The Unit option jumps to the referenced unit and
attempts to reference a valid object relative to it.
Location : A document can have a cross-reference to a
location. The Location option jumps to the referenced
location and attempts to link a valid object relative to
it.
Number of hier- Gives the number of levels to jump upwards, begin-
archical levels ning from the starting object.
Search text Here you input the name of the object that is to replace
the object that had been placed originally.
47.7.1 Attributes
The setting of graphic attributes in IT plans is controlled via the “IT ” tab.
In the case of base objects for installation plans, the “AutoAlign - Automatic
rotation” attribute is located on the “SYS - System information ” tab. If this
option is activated, planning objects that are located on this base object are
rotated, automatically with respect to the nearest available line or symbol. The
lines or symbols can also run obliquely, the object is made to match the
oblique angle.
47.7.5 Scale
You can find the OPTIONS | SCALE command in the middle of the right mouse
menu. This reduces the size of the display of the symbols on the report.
EnableButtonANSICable = True
Operation
• Click on the ANSI cables icon.
• Draw a horizontal or vertical line with two mouse-clicks. This line fulfils
two functions:
The starting point of the line is the point through which the grouped cables
run.
The horizontal or vertical length of the line determines the lengths of the
grouped area.
• After the second mouse-click, which determined the end of the line, the
mouse cursor changes into a marking pointer. Drag out a selection frame or
mark the cables with <Shift> + mouse-click.
• Confirm with <Return>.
If the grouped area is to run in the middle of the connections, then the line
must be made through the middle:
If the line is drawn at one point, the grouped area also passes through it:
The bent line can be placed again as desired with the aid of the grab points.
48.1 SO1
48.1.1.2 CA Attributes-Catalog
Application: @1PE |DS |@Y CA Attributes-Catalog
The name of the standard table is the same as the name of the attribute.
48.1.1.3 EQ Equipment
Application: @1PE |DS |@Y CA Attributes-Catalog.
The name of the standard table is the same as the name of the attribute.
48.1.1.5.1 ND0931
Application (example): base data
@1PE |DS |@O Documents |PRZ ProII, IP Import paths tab.
This attribute is evaluated if you click on the [IMPORT] button on the
ID Import Data tab.
Effect: in MAPSIM, a varying number of attributes are imported on the
“Component data ” tab. The smaller the number of attributes that are
imported, the more quickly the import operation is completed.
Only bulk : the substance portion is only imported into group “Total”.
mole fractions : the substance portion is also input into the other groups.
48.1.1.5.2 ND0932
Application (example): base data
@1PE |DS |@O Documents |PRZ ProII, IP Import paths tab.
This attribute is evaluated if you click on the [IMPORT] button on the
ID Import Data tab.
not imported : only the COLSIM column objects are created.
trays/stages without compositions : COLSIM and TRSIM are created.
trays/stages & compositions : COLSIM, TRSIM and MAPSIM are created.
Please note: MAPSIM can only be switched off under the column. MAPSIM
is always imported under the stream.
E Symbol inscription
Is used internally.
H Line widths
Is used internally.
I Colors
Specifies the colors of PFD/P&ID objects.
Name Unique string,
also controls the order of the list in the user selection.
Description Any. This text is the visible text.
Value 1 This code defines what pattern the line type has.
Value 2
Value 3
Value 4 - Not used.
Value 10
48.1.1.7.4 BOOL
Only used for internal purposes. Checkboxes are initialized with the aid of
these standard tables.
48.1.1.8.1 ND0238
Controls the 3D pumps template:
Base project, planning view, @Template |PE |02 |04.
48.1.1.8.2 ND0250
Controls the 3D valves template:
Base project, planning view, @Template |PE |02 |08.
Is only evaluated in 3D (CM).
48.1.1.9 XX Other
48.1.1.9.1 TRAYSYMBOLTYPE
Application: Section of the column, whether the section is shown with or
without the floor (this only changes the symbol and not the planning data).
48.1.2.1 1 Presentation
48.1.2.2.1 P Function
Is used internally.
The standard tables that are used in Viper: Conceptual Modeller are managed
here.
48.1.5 @EXF
Is used internally.
This table contains the predefined variables (%N texts) that can be selected in
the text function of the Symbol Designer, see SECTION 45.4: PROPERTIES OF A TEXT.
In the base objects, a symbol should be designed for all (required) diagram
types. In other words, this symbol is also only available for this diagram type.
Different %N texts are made available, depending on the diagram type for
which the symbol was created.
As far as programming is concerned, these functions can be used indepen-
dently of the standard table. However, if the table is deleted, then the func-
tions are no longer displayed in the input help of the text function.
Value1 specifies the identification key of the text function, and Value2 the
layer .
48.1.7 @Local
The local standard tables of attributes are stored here. The name of the stan-
dard table is at the same time the UID of the attribute. These standard tables
may not be edited here, but only at the specified attribute.
Please note: the standard tables in this branch are used for internal system
purposes and are evaluated by the program code. The tables may not be dele-
ted, extended or changed.
The list can also be used individually. The list is checked into the project and
the values are modified accordingly.
48.1.12.1S Signal
48.1.13 ME Mechatronic
1 Presentation: I Colors
The first column contains the code that is entered in the “Value 1 ” column of
the standard table.
Name R G B Description
1 0 0 0 Black
2 0 0 20
3 0 0 40
4 0 0 60
5 0 0 80
6 0 0 100 Blue
7 0 20 0
8 0 20 20
9 0 20 40
10 0 20 60
11 0 20 80
12 0 20 100
13 0 40 0
14 0 40 20
15 0 40 40
16 0 40 60
17 0 40 80
18 0 40 100
19 0 60 0
20 0 60 20
21 0 60 40
22 0 60 60
23 0 60 80
24 0 60 100
25 0 80 0
26 0 80 20
27 0 80 40
28 0 80 60
29 0 80 80
Name R G B Description
30 0 80 100
31 0 100 0 Green
32 0 100 20
33 0 100 40
34 0 100 60
35 0 100 80
36 0 100 100
37 20 0 0
38 20 0 20
39 20 0 40
40 20 0 60
41 20 0 80
42 20 0 100
43 20 20 0
44 20 20 20
45 20 20 40
46 20 20 60
47 20 20 80
48 20 20 100
49 20 40 0
50 20 40 20
51 20 40 40
52 20 40 60
53 20 40 80
54 20 40 100
55 20 60 0
56 20 60 20
57 20 60 40
58 20 60 60
59 20 60 80
60 20 60 100
61 20 80 0
62 20 80 20
63 20 80 40
64 20 80 60
65 20 80 80
Name R G B Description
66 20 80 100
67 20 100 0
68 20 100 20
69 20 100 40
70 20 100 60
71 20 100 80
72 20 100 100
73 40 0 0
74 40 0 20
75 40 0 40
76 40 0 60
77 40 0 80
78 40 0 100
79 40 20 0
80 40 20 20
81 40 20 40
82 40 20 60
83 40 20 80
84 40 20 100
85 40 40 0
86 40 40 20
87 40 40 40
88 40 40 60
89 40 40 80
90 40 40 100
91 40 60 0
92 40 60 20
93 40 60 40
94 40 60 60
95 40 60 80
96 40 60 100
97 40 80 0
98 40 80 20
99 40 80 40
100 40 80 60
101 40 80 80
Name R G B Description
102 40 80 100
103 40 100 0
104 40 100 20
105 40 100 40
106 40 100 60
107 40 100 80
108 40 100 100
109 60 0 0
110 60 0 20
111 60 0 40
112 60 0 60
113 60 0 80
114 60 0 100
115 60 20 0
116 60 20 20
117 60 20 40
118 60 20 60
119 60 20 80
120 60 20 100
121 60 40 0
122 60 40 20
123 60 40 40
124 60 40 60
125 60 40 80
126 60 40 100
127 60 60 0
128 60 60 20
129 60 60 40
130 60 60 60
131 60 60 80
132 60 60 100
133 60 80 0
134 60 80 20
135 60 80 40
136 60 80 60
137 60 80 80
Name R G B Description
138 60 80 100
139 60 100 0
140 60 100 20
141 60 100 40
142 60 100 60
143 60 100 80
144 60 100 100
145 80 0 0
146 80 0 20
147 80 0 40
148 80 0 60
149 80 0 80
150 80 0 100
151 80 20 0
152 80 20 20
153 80 20 40
154 80 20 60
155 80 20 80
156 80 20 100
157 80 40 0
158 80 40 20
159 80 40 40
160 80 40 60
161 80 40 80
162 80 40 100
163 80 60 0
164 80 60 20
165 80 60 40
166 80 60 60
167 80 60 80
168 80 60 100
169 80 80 0
170 80 80 20
171 80 80 40
172 80 80 60
173 80 80 80
Name R G B Description
174 80 80 100
175 80 100 0
176 80 100 20
177 80 100 40
178 80 100 60
179 80 100 80
180 80 100 100
181 100 0 0 Red
182 100 0 20
183 100 0 40
184 100 0 60
185 100 0 80
186 100 0 100
187 100 20 0
188 100 20 20
189 100 20 40
190 100 20 60
191 100 20 80
192 100 20 100
193 100 40 0
194 100 40 20
195 100 40 40
196 100 40 60
197 100 40 80
198 100 40 100
199 100 60 0
200 100 60 20
201 100 60 40
202 100 60 60
203 100 60 80
204 100 60 100
205 100 80 0
206 100 80 20
207 100 80 40
208 100 80 60
209 100 80 80
Name R G B Description
210 100 80 100
211 100 100 0
212 100 100 20
213 100 100 40
214 100 100 60
215 100 100 80
216 100 100 100 White
217 10 0 0 Shades red
218 30 0 0
219 50 0 0
220 70 0 0
221 90 0 0
222 0 10 0 Shades green
223 0 30 0
224 0 50 0
225 0 70 0
226 0 90 0
227 0 0 10 Shades blue
228 0 0 30
229 0 0 50
230 0 0 70
231 0 0 90
232 0 10 10 Shades cyan
233 0 30 30
234 0 50 50
235 0 70 70
236 0 90 90
237 10 0 10 Shades magenta
238 30 0 30
239 50 0 50
240 70 0 70
241 90 0 90
242 10 10 0 Shades yellow
243 30 30 0
244 50 50 0
245 70 70 0
Name R G B Description
246 90 90 0
247 13 13 13 Shades gray
248 27 27 27
249 33 33 33
250 47 47 47
251 53 53 53
252 67 67 67
253 73 73 73
254 87 87 87
255 93 93 93
The function %N Position is also used in the script of a symbol for a P&ID
measuring function. In addition to that, the script of the measuring function
also searches for the | RI | TEXTMOD attribute of the measuring function.
This attribute uses standard table RIDIVPOS . If the attribute is found, its
value is read and the text of %N Position is set up accordingly.
Is used internally.
Is used internally.
48.2 SO1_EXT
48.2.1 eCl@ss
49.1 Definitions
Base objects
Base objects are templates for planning objects. You can only edit base
objects if you possess the Base data function right. It is entirely up to you to
decide in how much detail the base objects – i.e., the templates – are to be cre-
ated. The more precisely you design the templates (the base objects), the more
you need to determine the “properties”.
Base data
The totality of the base objects is called the base data. The base data is dis-
played in the Navigator on its own “Base objects” tab. When base data is cre-
ated within the planning project, we talk of “local base objects”, see
SECTION 49.1.2: LOCAL BASE OBJECTS. If base objects are created within the base
project, then they are called “global base objects”.
Base objects are normally created within the base project. Fundamentally
there is the option to create local base objects in the planning project. Stay
within the planning project and switch to the Base objects tab.
Call: Right mouse button | NEW BASE OBJECT
The local base object is distinguished from the base objects of the base project
by a blue globe.
Mixed structures
It is technically possible, but not advisable, to mix local and global base
objects. If local base objects are located underneath global base objects, cer-
tain operations can cause the database to balloon in size. If, for example, the
| COPY STRUCTURE function is used, the global base objects are duplicated in
the form of local base objects.
The same effect happens if a project is sourced out and connected again with
the base project after being sourced out. The branches of the tree, that previ-
ously only partially contained local base objects, are then completely dupli-
cated as local base objects. If you wish to undo this duplication, the original
local base objects have to be sorted again (tediously), and the newly created
base objects have to be deleted.
In order to prevent this, local and global base objects should always be placed
in completely separate branches of the tree. If structures from the global base
objects are required, a global base object can be linked with a local base object
via the Reference field.
Mixed structures are not allowed in the case of documents. Documents can
only be created under a base object if the base object is within the project that
has just been opened.
All the objects lie within a tree-type structure. An object lying underneath is
called a “child object”; an object lying above is called the “parent object”.
This tree-type structure is of major importance and especially for base objects,
since this structure is used to transport information in a simple way (see the
next section).
There are a number of views to make the tree-type structure somewhat easier
to understand. In particular, the options “Folder ”, “Group ” and “Structure ”
are useful, and also the “visible for all users ” option. All these options are
explained below, see SECTION 12.2: “SYSTEM” TAB.
We explained above that planning objects take over the information (“proper-
ties”) of the base objects. But this is not the only method to pass on informa-
tion within Comos.
In particular, (almost) all the information along the base data tree is inherited
for the base objects.
In other words: All subordinated base objects are automatically given all the
information (“properties”) that was defined at the superordinate object (the
“owner”). In this way the density of the information increases as you go
deeper into the base data tree.
For further information please see SECTION 7: INHERITANCE.
The entries that have already been executed are dimmed (greyed out) in the
Database adjustment dialog window.
3D Electrical engineering
The GD Geometry tab is created with attributes under @Y Catalog attribu-
tes | ET Electrical engineering |General Chapters (tabs).
You can now select one of the wires and drag it into the Cable index field .
In addition, the selected is displayed on the Connectors tab in the Connec-
tion via column.
Basic principle: Create an element that has the same name as that of a connec-
tor. The program determines that the two “belong together” due to the simi-
larity of the names.
In detail:
The base object has the example name “Test” in the following description.
Open the Properties window of the base object. (If necessary, switch to the
base project). Switch to the Elements tab. The logical potential must exist as
an object, a link is not enough. Therefore select the | NEW command from the
context-sensitive mouse menu.
Class Device
Name Name of the connector, e.g. CP1
Label Any
Sub-class Log. potential
virtual Off
Open the Properties window of the base object. (If necessary, switch to the
base project). Switch to the Elements tab. The signal must exist as an object,
a link is not enough. Therefore select the | NEW command from the context-
sensitive mouse menu
Class Signal
Name Name of the connector, e.g. CP2
Label Any
Sub-class -
virtual Off
49.5 Templates
49.5.1 Definition
Copies from the “@Template” branch are given a pointer to indicate from
which template they originated (“backwards pointer”). This makes it possible
to locate all the applications of a template and to make use of change functions
that apply to them all if required. Here it does not matter how the copy was
produced (see below).
1. “@Template”
Templates must be located under the “@Template” root node. An
individual “@Template” branch is managed for the unit view and the
location view respectively.
2. Template project is superfluous
The data can be stored as before in a template project, provided that the
data is also located there under a “@Template” branch. It is not necessary
to keep the data separate in base data projects and template projects.
3. Closed template structure
Templates only take over the hierarchical structures as well as the “inner
references”. References that “stick out” of the template block are lost
without any further notification. Templates must therefore always form
an enclosed whole underneath a “template node”.
4. Interactive Reports as templates (including document excerpts)
In the case of Interactive Reports the objects that are located on the
reports also belong to the template. (Document excerpts are also
organized such that the excerpt is created as a separate Interactive
Report.)
Please note: There may be only one Interactive Report under the template
node!
The owner of the report must be copied as a whole so that the objects are cop-
ied together onto the report. In other words, the owner of the report is the tem-
plate node.
If there are several reports under the template node, the program would not
know which report is to be copied and there would be a data collision.
The Create option is evaluated for a base object that possesses the pointer to
the template:
• The Block option: All the objects from the folder for the template are raised
by one level. Terminals are attached as required to existing terminal strips
of the same name. The folder is removed.
• All other options: The structure of the copied objects is retained.
49.5.5 Variants
Re step 1.
Initially a New base object of type Unit is pasted into the base project under-
neath base object @U unit (Alternatively, a location is used as the base.). This
object is used in addition as the topmost level of the labeling system, and at a
later point in time the base object will be referenced to it.
The unit is given:
• Any desired name, such as “Test”,
• Any desired description, such as “Test labeling system”,
• The Option Create mode option controls how narrowly the user must
comply with the labeling system. If the Normal option had been selected,
the default options New object etc., are also available to the user.
Deviations are thus possible.
If the Elements option was stipulated, only objects that had been created
on the Elements tab are available. This means that deviations are
impossible.
Re step2.
The Elements tab is brought to the front.
Re step3.
Open the Properties window of the @J Project base object and switch to the
Elements tab.
Drag onto the tab the base object that forms the basis of the labeling system
and which you had created earlier in step 1.
Alternatively, create a new element with the following details:
• A name. The name of this element is displayed later within the planning
project and should therefore be meaningful. If you plan to use a company-
specific labeling system, then a possible choice would be the company name
and a sequential number.
• Any desired description.
• The creation mode Normal or Free .
If the Free mode was selected, the topmost level of the labeling system
must be a unit (or a location): In the planning project the first object in the
mouse menu of the project object must be a unit (a location). Other objects
are not offered to choose from on the project level if they had been created
as elements of @J Project .
• You can determine by means of the Virtual 1 times or N times setting how
many times the element (meaning the labeling system) may be created.
The labeling system that is created is made available to users in the planning
project via the context-sensitive mouse menu. The labeling system that had
been created under step 3. above is offered at the project level.
49.7.1 Objective
The Alias technique is used to map one labeling system to another labeling
system.
That means: A project is planned with one labeling system, and then a second
labeling system is to be used for the planning data, however without changing
the original data.
To achieve this, the object structure of the project is rebuilt in an @ALIAS
branch. The objects in this @ALIAS branch have references to the original
objects. Their only purpose is to provide an alternative labeling system.
49.7.2 Precondition
Workset.UseAliasForLabelFunctions = True
The AliasLabel script commands can only be executed if this property is
True .
49.7.3 Application
49.7.3.1 Step 1
The project is planned as usual, using the desired labeling system.
49.7.3.2 Step 2
Create an @ALIAS branch in the planning view:
Units tab and/or Locations tab, project root: | NEW| NEW UNIT or
| NEW| NEW LOCATION
Name of the new object: @ALIAS (mandatory!)
Effect:
The reference fields are empty at first. They will be set in Step 3. (See
SECTION 49.7.3.3: STEP 3.)
49.7.3.3 Step 3
Rebuild the object structure of the original data under the @ALIAS branch,
and assign references to their originals:
– For unit “W1”, for example, an alias “PA” is created by calling the
| NEW| NEW UNIT command from the mouse context menu. Then the tag from
the alternative labeling system is entered into the Label property of the alias
object.
The following picture shows a simplified example of an original project
structure and its @ALIAS counterpart:
– Next, set a pointer at the alias object, referencing the corresponding original.
To do this, drag the original unit onto the Original reference field of the
alias unit.:
49.7.3.4 Step 4
Activate the Alias functionality. This is done either
1. by Script:
Workset.UseAliasForLabelFunctions =True
2. or via the Comos user interface:
If an object named @ALIAS is located in the planning view directly
beneath the project root, the [A] icon is shown in the Comos Menu bar
(tooltip: Alias for label (Setting will not be saved) ):
The setting will not be saved. It is only valid as long as the project is open.
The default value when opening a project: False.
49.7.4 Effect
Tip
It might happen that you want to invoke an AliasLabel command at an ori-
ginal, but by mistake you are at the alias object already – thereby retrieving
the label of the original instead of the alias.
To avoid this, call the IsAlias() function prior to the respective AliasLabel
call. The function verifies whether an object is located in the @ALIAS
branch.
IComosBaseObject
– Function AliasFullLabel
– Function AliasFullLabelWithoutFolder
– Function AliasRelativLabel
– Function AliasRelativLabelWithoutFolder
– Function AliasSignedLabel
– Function IsAlias
IComosDDevice
– Function AliasLabel
– Function AliasNestedLabel
– Function AliasNestedLabel2
– Function AliasULFullLabel
– Function OldAliasFullLabel
– Property Alias
IComosDWorkset
– Property UseAliasForLabelFunctions
49.8 Categories
Category handling: Planning objects are automatically sorted in folders after
being created.
49.8.1 Administration
Objects of class Unit or Location are prepared in the base data. The objects
must have the following settings:
• Sub-class Category
• The Allocation button in P&ID is used to transfer objects into the unit tree.
When the unit is allocated, a check is made to see whether these objects may
be pasted underneath the unit. If not, the subordinated units are searched
through until one is found, underneath which the object may be pasted.
Subordinated units are searched through recursively so as to take into
account multi-level structures (such as in the German KKS system, for
example).
• The objects are created within Comos PT Viper.
49.9.1 Overview
Documents of type “report template” constitute the interface between the tem-
plate files and the reports. There are two types of report templates:
• Report template (evaluation)
• Report template (interactive) .
Document type
Both templates are based (as ultimately all documents in Comos are) on a doc-
ument type. The document types are administered through ADMINISTRATOR
| BASE DATA | DOCUMENT TYPES, see SECTION 11.3: DOCUMENT TYPES.
• Evaluation template: type ComosMasterIReport .
• Interactive template: type ComosMasterReport .
Properties of both document types:
As always, there can also be more specialized base objects underneath @O.
The structure of the base data entirely depends on the company-specific
requirements.
This base object does not necessarily need to exist in order to be able to create
templates. However, it is an indispensable aid if report templates are to pos-
sess specification tabs.
Managing reports
Report templates are managed in the base project on the Documents tab,
preferably in document group @REPORTS .
Use the mouse menu to select the New document command. Select the entry
Report template (evaluation) or Report template (interactive) as appli-
cable from the Type pulldown list.
The dialog window changes once you have made a selection: the Report and
Revision tabs are removed and a Report template tab becomes available
instead.
Base object of the report template
When a base object of type Document is available, you can find the corre-
sponding entry in the Base object edit field. You can change the default
value by dragging another base object onto the Base object edit field by
using drag & drop. The associated specification tabs are then made available
to you as well.
Enter the desired details on the General tab and then switch to the Report
template tab.
You then require a template file for the next step. There are two possible
options:
1. You have already created a template file by using the Report Designer.
Call the template file by clicking on the button with three dots on it that
is next to the Template file dialog field. The file selection window Open
report at... then opens.
Select a template file (you can recognize it by the .CRp file extension) and
confirm by pressing Open .
2. Creating a new report template
2.1 Otherwise you should click on the [EDIT] button in the bottom left-
hand corner of the Report template tab. The Report Designer is
opened and you can create a template file within it. Once you have
created the template file, close the Report Designer and return to the
Report template tab.
2.2 The template file that you have just created can be called in the same
way as described above by pressing the [...] button.
Please note: do not confuse the template files for Evaluation Report templates
and those for Interactive Report templates! A template file for an Interactive
Report contains additional script code that could cause errors in an Evaluation
Report.
In order to help you distinguish between the two types of template files, we
recommend that you append a unique label (such as _IR) to the name of report
templates for Interactive Reports.
Report tab
Dialog field Report template:
Select the desired report template from the tree structure and confirm with
[OK]. The window is then closed.
Report object
The “report object” is the basis from which all active and automatic functions
of a report are executed, for example, a table in which the attributes are read
and displayed. A report that does not possess an “object” cannot exist: The
specified object determines the entries of the automatic elements of a report.
There are three possible ways to specify an object:
1. Object = owner
When a new report is created, first of all the position (the unit, the
location) is entered as object. Since the position (the unit, the location)
that is created under the report is also the “owner” of the report, Report
object = Owner is shown in the dialog group.
2. Object from template
If an “object” had already been provided in the report template, the entry
Object from template can is found in the dialog group.
3. Setting objects manually
In this case, only the Object entry is included in the object group. You
must set an object manually, by:
• going to the Units or Location tab and copying a unit or location via the
mouse context menu. If you now click on the [SET] button, the data of the
copied object is inserted into the three fields.
• Alternatively you can use drag & drop to pull a unit or a location directly
onto one of these three fields.
You can delete the entries with the aid of the [DISCONNECT] button.
Interactive Reports are not primarily intended to evaluate an individual object
but instead to contain objects. Hence you can normally leave the default set-
ting Report object = Owner unchanged. If it should be necessary, the object
can be set manually in exactly the same way as in an Evaluation Report.
You can define an object manually at any time and thus replace the default
settings “Object = owner” or “Object from template”. The default appears
again if you release an object that had been set manually.
Since a distinction is made in Comos between the “owner” and the “object of
a report”, you can organize these reports entirely on the basis of your own
requirements. You can summarize reports hierarchically into groups and
nonetheless still give each report an individual point of reference.
Buttons
The four buttons have the following functions:
• [OPEN]
The report is opened and evaluated, and the results are displayed.
• [PRINT]
This button only becomes active once a report template has been set. It
evaluates the object and prints the report at the Windows default printer. The
page orientation is set automatically according to the format of the report.
• [AUTOCAD EXPORT]
Is used to export an AutoCAD file. See SECTION 35.1: EXPORT.
You can initialize the dialog window with a refresh if the buttons are not
active even though a report template and an object have been set. Do this by
selecting the | FILE | UPDATE menu.
However, this option should only be used with caution, since structuring the
data this way will easily be at the the expense of clarity.
The usual way is create various Document base objects and to use these as
base objects for the report templates:
50.6.1 @Template
Here are the base objects with which templates are made available. This
branch thus fulfills the same task as SECTION 50.22: @ TEMPLATE.
50.9.1 @A Attributes
The attributes required for 3D planning. This branch thus fulfils the same
function as SECTION 50.25: @Y ATTRIBUTES CATALOG.
50.9.2 @AXIS
Axis objects are design aids. You can then align other objects to the axis
objects.
50.9.3 1 Components
These objects are not placed. Pipe classes control the interaction of 3D object
with respect to a pipe class.
50.9.7 5 Assemblies
Details and templates. This branch thus fulfils a similar role as does
SECTION 50.25: @Y ATTRIBUTES CATALOG.
50.9.8 9 Other
Administration objects, primarily for control of the display in 3D models.
50.11 @F Functions
The function describes the measuring or actuating task and the processing
function at a position. It corresponds to a “measuring function” in the P&ID
scheme. Synonym: Comos actuating function.
Various objects are created under this heading to covering measuring prob-
lems. The objects are created without the Request option and contain ele-
ments that were created with the Request option.
The branch contains headings in compliance with DIN 19227 and with ANS.
Logical unit within the Comos Document tab. If the unit view or location
view is linked with a document group, then documents that are created on the
basis of a specific naming scheme are automatically referenced in a document
group. The base object for document groups also controls whether all the doc-
uments of a group are to be jointly given a sequential index number.
50.13 @J Project
Detailed information is given in SECTION 5.5: THE PROJECT PROPERTIES.
This object controls how information and objects are made available to the
user on the Units , Locations and Documents tabs throughout the project.
This is done by pasting either Specifications or Elements tabs to @J.
In the example database underneath @J there are specialized objects that
serve as templates for a specific module. It is therefore recommended that you
do not use @J itself as the base object of the project, but instead an object
lying underneath it.
These elements are located on the Elements tab, which are likewise made
available when the user right-clicks on the blue globe (which symbolizes the
the project).
Thus labelling systems can also be set up within Comos in this way.
A cable route / duct is used to summarize cables between two locations into a
spatial group.
50.16 @L Locations
As a rule, the location or place of installation of a technical device or fitting.
Frequently the term is used more widely and is understood as a functional
allocation.
Structures for labeling systems are also created here, and are then used in
SECTION50.13: @J PROJECT (or a specialized sub-object).
Structures for category handling are also created here (automatic sorting of
planning objects).
50.17 @M Maintenance
As a rule the maintenance interval or a special note concerning the mainte-
nance of a device or unit are entered here.
This contains objects for C&I and FEED. These objects make available
attributes that are required for the input of test data.
50.18 @O Documents
A document is the interface by which the desired electronic document can be
incorporated. A document can thus be a CAD drawing, a report, a table, a text
document, etc.
Reports that are used later in the planning are for the most part controlled by
the report and not from these base objects. However, the base objects are
responsible for the text masks (and thus also for automatic referencing) and
for special attributes that are required in individual cases.
50.19 @P Position
A position designates a process control or process technology task. A position
consists as a rule of a position object (which is used as the folder), a function
and a converter, a signal and an actuator.
The script libraries are stored in this object. As opposed to all the other objects
of the @Q branch, SF functions may not be deleted, since report scripts could
refer to this object.
50.21 @S Signals
Detailed information is given in SECTION 65.3: INPUTS AND OUTPUTS (SIGNALS).
A signal designates the information unit that is processed further in function
diagrams and signal flowcharts, for example, “ON”, “OFF”. It illustrates the
input and output of the process control.
In addition, function diagrams make use of functions, modules and control-
lers, see SECTION 50.6: @1FP STANDARD CATALOG FD.
50.22 @ Template
If planning objects are used as models for additional planning objects, then
these are called templates. In Comos these planning object templates are made
available with the aid of base objects. This has the advantage that these tem-
plates can also be available in the mouse menu, for example.
The base objects provided here thus relate via a “template link” to planning
objects on the Units and Locations tabs.
50.23 @U Units
A group of functionally-linked technical devices or fittings or else the topmost
logical grouping that appears to be meaningful to the user within the technical
area. Labeling systems are often created by means of units.
Structures for labeling systems are also created here and are then used in
SECTION 50.13: @J PROJECT (or a specialized sub-object).
Structures for category handling are also created here (automatic sorting of
planning objects).
The eCl@ss 4.0 catalog uses a great many attributes per device, up to a hun-
dred.
The eCl@ss 4.0 catalog is an excerpt from the eCl@ss catalog. This excerpt
is eCl@ss section 27 (process control technology).
There are no links between the @1EA and @1EC EE catalogs. We thus recom-
mend using one of the two standard catalogs as the basis for further planning
and not to mix the objects.
50.30 Import
Most of the import interfaces working on an object basis are collected here.
50.30.1 @DXF
50.30.2 @EXF
See SECTION 62: EPLAN (IMPORT/EXPORT EXF).
50.30.3 @PDS
50.30.4 VNS
The following sections are of interest for users whose base data has already
been preprepared by the administrator as desired and who only require a quick
introduction so as to get up to speed with operation of the interfaces:
– SECTION 51.1: SCOPE
– SECTION 51.2.1.2: INITIAL PLANNING STRUCTURE IN COMOS
– SECTION 51.6: APPLICATION / USER INTERFACE.
The remaining sections are of relevance for administrators or advanced users.
Since the technical implementation of the import and its course are similar in
all the simulator interfaces from the user’s point of view, the three interfaces
are dealt with together when possible. Any special points relating to a partic-
ular interface are referred to at the appropriate point.
51.1 Scope
Comos defines interfaces to the simulators Aspen Plus, PRO/II and HYSYS.
The interfaces import objects from the simulators into Comos without chang-
ing the source file.
The mapping of the object attributes between the simulator and Comos is
defined in the Comos DLLs (standard import) and is based on the formats
stipulated by the simulator.
However, the standard import can be extended or modified by the user
through the use of VB scripts. (See SECTION 51.5: MODIFICATION OF THE STANDARD
IMPORT.
51.2 Preconditions
51.2.1 Comos
Default structure
In order to start the import, the following object structure must exist already
in the planning view:
Project root
- Process
- AMA Components
- APU Process Units
- PU Process Unit
- PFD.1 PFD
- AEQ Equipment
- APS Process Streams
- AXX Miscellaneous
51.2.2 Simulators
51.2.2.1 Versions
– Aspen Plus: Aspen Plus 10.x
– PRO/II: PRO/II 6.01 and higher
– HYSYS: HYSYS 3.1 or 3.2
These versions are to be installed with the relevant valid licenses, since oth-
erwise not all the data is written into the export file under certain circum-
stances and is correspondingly not imported.
These XML nodes exist automatically if particular options have been set in
Aspen Plus:
– B_TEMP:
This XML node is required to create simulation objects for trays (TRSIM)
underneath simulation objects for columns (COLSIM). It is located
underneath XML node BlockRadfrac.
Up to now we do not know of any import option that prevents the node from
being created.
– X:
This XML node is required to create components simulation objects
(MAPSIM) underneath TRSIM objects. It is located underneath XML node
BlockRadfrac.
Up to now we do not know of any import option that prevents the node from
being created.
– MOLEFRAC:
This XML node is required to create MAPSIM objects underneath material
stream simulation objects (MSSIM). It is located underneath the
StreamMaterial XML node .
If it is not available, ensure that the Fraction basis: Mole attribute has been
activated in Aspen Plus. It can be found under Setup / Report Options /
Stream :
– ComponentsMain
This XML node is required to create the CompCalc simulation object
(CCSIM), underneath which the simulation pure components are located. It
is located underneath the XML root node. If it does not exist, ensure that the
attribute list for component IDs, formulas and names has been activated.
This attribute can be found in Aspen Plus via Setup / Report Options /
Property :
Which import object is created depends on the simulator from which data is
imported. However, the user interface and configuration are almost identical
for the individual interfaces.
PRO/II / HYSYS:
The import object is created by dragging the source file (prz file or hsc file
as applicable) in the Comos Navigator onto the SIMD folder. It is recom-
mended that you create the file as a copy and not as a link.
The document that has been created in this way automatically refers to the file
to be imported.
PRO/II / HYSYS:
The source file is set automatically in the case of drag&drop.
• The PFD streams and the PFD equipment that are created in the second
import step take over their case-specific information from their run case
objects (by linking of the attributes).
See the following below for more detailed information on the configuration
of case-specific base objects:
• Equipment Case:
SECTION 51.4.2.2: “@1PE|PO|EC EQUIPMENT CASE”
• Simulation components:
SECTION 51.4.1.4.3: “...|SIM|SUB|MAPSIM COMPONENT SIMULATION OBJECT”
• PFD components:
SECTION 51.4.2.3: “@1PE|PO|SO|MAP COMPONENT POINTER”
Detailed information
See the following below for more detailed information on the configuration
of the import base objects and their use in the planning view:
• Aspen Plus:
Configuration: SECTION 51.4.1.5.1: “...|AXSI ASPEN XML SIMULATION IMPORT”
User interface: SECTION 51.6.1: APPLICATION: ASPEN PLUS IMPORT
• PRO/II:
Configuration: SECTION 51.4.3.1.1: “...||PRZ PROII SIMULATION IMPORT”
User interface: SECTION 51.6.2: APPLICATION: PRO/II IMPORT
• HYSY:
Configuration: SECTION 51.4.3.1.2: “...|HYSYS PRO/II SIMULATION IMPORT”
User interface: SECTION 51.6.3: APPLICATION: HYSYS IMPORT
The base object of the simulation pure components created this way is not
located in the simulation branch. Despite that, the simulation pure compo-
nents can be considered as simulation objects, since no actual pure compo-
nents are created.
The components are created underneath the simulation objects for material
streams. (Compare Setting the run case, P. 51-7.) The simulation object
@1PE|PO|SIM|SUB MAPSIM is always used for the components. (Cannot be
customized).
More detailed information on the pure components library can be found in
SECTION 51.4.2.4: “@1PE|PO|SO|MAS COMPONENTS”: PURE COMPONENTS LIBRARY, and
on the components simulation object in SECTION 51.4.1.4.3: “...|SIM|SUB|MAPSIM
COMPONENT SIMULATION OBJECT”.
• PRO/II import:
in UserScriptBlock2 the functions ProIIImport() and
ProIIImportDone()
• HYSYS import:
in UserScriptBlock3 the functions HYSYSImport() and
HYSYSImportDone().
Objects are created for the equipment items and the process streams, and then,
underneath them, the objects that store the case-specific data.
Insertion path
The import object determines underneath which objects the PFD objects are
created:
• Tab “IP| Import data ”, attribute “ND0116| Import into process unit ”:
If this attribute is blank, the objects are sorted automatically underneath the
process unit in which the import object is located, otherwise under the
process unit referenced in ID.ND0116 .
• The exact place of creation underneath the process unit is likewise set by
means of the import object:
Tab “IP| Import options ”, attributes ND0260A to ND0260C .
(See Tab “ID| Import Data”, P. 51-32 and Tab “IP Import Options”, P. 51-33 regarding
the configuration of these attributes.)
The import objects are preconfigured in such a way within the StandardDB
that the PFD objects are sorted automatically into the folders underneath the
current process unit (process streams, equipment), and in the case of pure
components, into a folder that is parallel to the process unit.
• PFD equipment
Via the Equipment Case objects under the PFD equipment:
Tab “TD| Mechanical Data ”,
Attribute “ND0054| Equipment from simulation ”.
• Equipment Case of an PFD equipment object: Reference to the equipment
simulation object
• Equipment Case of a PFD assembly object: Reference to the PFD
equipment object. Reference to the equipment simulation object via its
Equipment Case.
• PFD material streams:
Tab “GSD| General Stream Data ”, attribute “ND0015| Stream from
simulation ”.
• PFD components:
Tab “PD| Component Data ”, attribute “ND0139| Material from
simulation ”.
You can navigate between the objects by means of the Properties window of
the objects. Example:
The material streams are then created underneath the process stream. The fol-
lowing material streams are created for each simulation material stream:
• The main case entered at the import object via the “ID.ND0140| Design
Case ” attribute.
DESIGN has been preconfigured as the main case in the StandardDB.
Name of the PFD material stream = Name of the main case.
• If the database has been configured correspondingly: The default run cases.
Preconfiguration in the StandardDB:
• If the main case equals DESIGN: In addition also the default material
streams MIN and MAX.
• If the main case does not equal DESIGN: In addition also the default
material streams DESIGN, MIN and MAX.
Assemblies: columns
If the simulation column possesses an assembly pointer, a check is made
within the standard import as to which of the assemblies located underneath
the specified node is suitable for this column. (If an assembly of its own was
added, the standard import must be extended in such a way that the new
assembly is included in the checking as well.)
In the case of the assemblies that had been predefined in the StandardDB, one
section (base object @1PE|EQ|08|COS|CTS) is created automatically under-
neath the column and one tray (base object @1PE|EQ|08|COS|CTS|TRA)
underneath the section.
The other trays must be created manually via the | NEW mouse menu of the
section.
All the trays must be connected with the column trays from the simulation
folder. This is done manually and via the Equipment Case objects of the trays.
– If that is the case, the process stream is given a DocObj for the same
diagram.
– However, the process stream is only displayed on the diagram and taken into
the drawing header once its “SYS.ND0154| Visible in mass balance on
PFD ” attribute has been activated.
– If the equipment with which a process stream is connected has been placed
on various diagrams, then the process stream is segmented and the segments
are placed on both diagrams. In addition, a page reference is added.
Since Aspen Plus does not write the coordinates of the equipment, the equip-
ment must have been placed manually beforehand. (See SECTION 51.6.1: APPLI-
CATION: ASPEN PLUS IMPORT, section Step 3: Placing the PFD streams, P. 51-81 for the
recommended procedure.)
– The streams are placed on the same document as their connected equipment.
As a rule, the connected equipment is located on one diagram – namely on
the diagram on which it had been placed in step 3.
However, if parts of the equipment had been placed manually on another
diagram, it can happen that the equipment with which a stream is connected
is located on different diagrams. The stream is segmented and the segments
are placed. A page reference is added on the diagrams.
– However, the process stream is only displayed on the diagram and taken into
the mass balance once its “SYS.ND0153| Visible in mass balance on
PFD ” attribute has been activated.
– If a stream has not been connected, it is not placed.
• In the StandardDB this object is available in the | NEW mouse menu of the
import object of level 1.
PRO/II / HYSYS:
• The same base object as for the import object of level 1.
• Simply use drag&drop to pull the new import file onto the import object of
level 1. An import object of level 2 is automatically created as a child.
Comos checks whether the objects that are located underneath the run case
import object had already been imported for another run case. Not only the
import object of level 1 is searched when doing this, but also all the other
import objects of level 2 that are located parallel to the current import object.
The checking is based on identical names.
Equipment:
• A simulation object with the same name exists already. Thus the equipment
has already been imported. A new run case (Equipment Case) is created
underneath the PFD object that is referenced at the simulation object (same
Name is used as specified at the import object).
• A simulation object with the same name does not exist yet. The equipment
is imported for the first time.
Result: A new item of PFD equipment is created and underneath the
equipment the new run case (Equipment Case).
Material streams and components:
• A material stream simulation object with the same name exists already. The
associated PFD objects (process stream and material stream) had already
been created during the import of another run case. The “older” material
stream simulation object possesses a reference to this PFD material stream.
Result: The PFD material stream for the current run case is created in
parallel with the referenced material stream. It is given the Name of the run
case that was entered at the import object.
The PFD components are created underneath the material stream.
• A material stream simulation object with the same name does not exist yet.
The material stream is imported for the first time.
Result: A new PFD process stream is created. The process stream is given
the same name as the simulation object of the material stream.
The PFD material stream is then created underneath the process stream, and
under it in turn also the PFD components.
Pure components:
• The pure component already exists in the AMA Components folder
(regardless of whether it had been imported or created manually):
No new pure component is created. Nothing further is done, since pure
components do not involve case-specific information.
• The pure component does not exist in the AMA Components folder: The pure
component is created in the folder.
Purpose
The base objects for the simulation objects that are created in the first import
step must be located in branch @1PE|PO|SIM. It is not permitted to change the
name of this branch.
If you wish to create your own branch of simulation objects, it must have the
name @1PE|PO|SIM. The branch supplied in the StandardDB must be
renamed.
Structure
The following structure objects are located on the first level underneath
@1PE|PO|SIM:
@1PE|PO|SIM
- @1PE|PO|SIM|BLC Equipment Simulation Objects
- @1PE|PO|SIM|STR Stream Simulation Objects
- @1PE|PO|SIM|SUB Simulation Subobjects
- @1PE|PO|SIM|XXSI Simulation Import objects
The actual simulation objects are located underneath the structure objects.
The following section introduces the properties of simulation objects in gen-
eral. The exact structure of the simulation objects and the properties of special
simulation objects or deviations from the general properties are covered in the
following sections.
The attributes can contain multiple designators, separated from one another
by commas and without blank spaces. The spelling of the designator must
be identical to that used in the simulator.
Mandatory fields. Must be set in the base data view.
• “ND0058| Relative path ”:
Specifies where the associated PFD object is to be created in the second
import step. However, it is not evaluated by the import operation. During an
import from a simulator the PFD objects are always created as specified at
the import object via the IP Import options tab, ND0260A to ND0260C
attributes. (Compare Tab “IP Import Options”, P. 51-33.)
• “ND0059| PFD object ”:
Is set automatically during the second import step. References the PFD
object that is created for this simulation object in the second import step.
You can navigate to the PFD object by means of the [NAVIGATE] icon.
• “ND0060| CDevice ”:
Determines which base object is to be used to create a PFD object for the
simulation object. You can navigate to the PFD base object by means of the
[NAVIGATE] icon.
Mandatory field. Must be set in the base data view.
Other form of use:
See SECTION 51.4.1.3.1: “...|CCSIM COMPCALC SIMULATION OBJECT”.
@1PE|PO|SIM|BLC supplements the “ID| Import data ” tab t inherited from
@1PE|PO|SIM with additional attributes (see SECTION 51.4.1.2:
“@1PE|PO|SIM|BLC EQUIPMENT SIMULATION OBJECTS”).
Scripts
Each object underneath @1PE|PO|SIM defines functions on the Script tab that
determine what is to be done with this object during the first and second
import steps.
In the StandardDB there is a command in the functions that calls the standard
import function. This call should not be deleted. However, the functions can
be extended with commands of their own and the standard import operation
is thus modified.
The invocation of the standard import may only be deleted if the standard
import function is to be disabled completely for this object and an import
operation of your own is to be defined on the Script tab by means of the
scripts.
More detailed information on modifying the standard import can be found in
SECTION 51.5.3: SIMULATION OBJECTS.
• ND0061| X :
X-coordinate of the placement point from the flowchart of the simulator.
Remains blank in the case of an Aspen Plus import operation.
• ND0062| Y :
Analogous to ND0061 .
The following attributes are relevant for the second import step. Default val-
ues should be prepared in the base data view that can then be modified as
required in the planning view:
• ND0065| Connectors :
List that allocated the virtual connectors imported from the simulator to the
connectors of the PFD object, and also allocated the connectors of the PFD
object to those of the connected PFD process stream.
• Columns “ND0066| PFD connector ” and
“ND0067| Simulation connector” :
Allocated the connectors of the PFD object (I1, I2, ..., O1, O2, ...) to the
connectors from the simulator (F1,F2, ..., P1, P2, ...). (F = Feed, P =
Product)
Can be configured in the base data view. (In the StandardDB: Only for
columns and heat exchangers).
As a rule, is set if an assembly pointer was set. In that case it is necessary
to take into consideration that some of the connectors are no longer
available for the process streams because they have already been
connected to objects from the assembly.
Default arrangement in the planning view if nothing has been input at the
base object:
I1/F1, I2/F2, ..., O1/P1, O2/P2, ...
If the object from the simulator possesses more connectors than had been
prepared at the PFD object, dynamic connectors for the missing
connectors are created in the second import step.
• Columns “ND0068| Connected to ” and “ND0069| Via connector ”:
Determine for each connector of the PFD object with which process
stream and via which connector it is connected.
Is set automatically in the first import step. Can be modified manually
before the second import step. (Switch the connectors if the switching that
had been selected automatically does not give meaningful results.)
Other tabs
Which other tabs are available and which attributes they possess depends on
the equipment simulation object in question. (Example: tabs from COLSIM
Column Simulation Object: “PD| Process data ” and
“TPA| Pumparounds ”.)
In the planning view, the attributes of the tabs are set by the first import step.
The assignment between the source attribute and the Comos attribute is hard-
coded in the relevant import DLLs. However, this assignment can still be
modified by means of scripts. (See SECTION 51.5: MODIFICATION OF THE STANDARD
IMPORT.)
However, the CCSIM object can also be used outside automated interface
imports. Since no PFD counterpart is required for the CompCalc simulation
object in the second import step, you should then input here which base
object is to be used for the simulation pure components.
For this reason it must be possible to edit the attribute, even if a manual
change is not considered by the interface import documented in this chapter.
• Tab “ID| Import Data ”, attribute “ND0059| PFD Object ”:
Since no PDF object is created in the second import step for the simulation
object, the attribute remains blank.
• Tab “SD| Substance data ”: This is not used any longer.
Importing a subcase:
As a rule, the new PFD material stream is created underneath the matching,
already existing process stream. More detailed information is given in
SECTION 51.3.2: IMPORTING SUBCASES.
Properties
• Name
The PFD process stream that is created in the second process step takes over
the name of the simulation stream.
These components are likewise based on the MAPSIM object. However, they
are not converted into PFD components in the second import step.
Properties
• Tabs “GSD| General Stream Data ”, “LPH [number]| Liquid phase
[number] ”, “SPH| Solid phase ”, “VPH| Gas phase ”, “TR| Tray :”
These are set during the import operation.
The values of these tabs can also be taken over by the Equipment Case of
the PFD tray after the second import step. For this, the Equipment Case
receives a reference to this simulation tray. (See SECTION 51.4.2.2.3:
“...|EC|08|CCS|TRAEC TRAY LAYOUT (GENERAL)”.)
The attributes of the tab have been preconfigured in the StandardDB with the
values given below, but these can also be set in the planning view as well.
• Edit group “Path... ”:
Specifies precisely where underneath the process unit the PFD objects that
are created in step 2 are to be located. The pathing is relative to the SIM
Simulation Data folder.
Terminology
It is necessary to distinguish between PFD objects in the narrower sense and
in the broader sense.
Only the objects for the equipment and for process streams are placed on a
PFD diagram (and hence are provided with graphic information). Equipment
and process streams are PFD objects in the narrower sense.
The other base objects that are introduced in the following sections are only
to be regarded as PFD objects in the broader sense.
They are created in the second import step ([CREATE PFD OBJECTS]) and fulfill
the function of data containers. The data stored in them relates to the equip-
ment and the process streams respectively, which is why they are also created
underneath these objects (and to some extent pass data on to them). The sole
exception: pure components. They are administered separately in the planning
view, but likewise have a relation to the PFD objects through their implemen-
tation pointers to the components.
Symbols
A symbol for diagram type PFD must exist on the Symbols tab.
Elements
Most of the objects possess the following elements on the Elements tab:
• PFD Equipment (BLC objects): sub-objects (components, accessories)
• Equipment Case objects:
• An Equipment Case element for the main case and the subcases
(edit group Virtual : N times ).
Must exist for the simulation import.
• If default run cases are required:
One Equipment Case element each for the default run cases DESIGN, MAX
and MIN (edit group Virtual : Off or Default )
• Base objects: from the corresponding sub-node of ...|PO|EC (set up in the
same way as ...|PO|EQ)
• Equipment Rating object:
Object that stores the case-specific dimensions of the equipment. Must be
created manually.
Base object: from the corresponding sub-node of @1PE|PO|ER (set up in the
same way as ...|EQ)
Edit group Virtual : N times
Linked attributes
Tab “TD| Mechanical data ”:
Attribute “TD.ND0301| Equipment Case ”:
• Here you determine the active run case. All the Equipment Case objects that
are located underneath the equipment are offered.
The attributes of the “TD| Mechanical data ” and “PD| Process data ”
tabs are linked with the Equipment Case that is selected here, and their
values are taken over from the active Equipment Case.
• The OnChange() and FillCombolist() scripts that were prepared in the
StandardDB at the attribute must not be deleted.
• In the simulation import, the attributes of the Equipment Case are linked in
turn with those of the simulation object.
51.4.2.2.2 “...|EC|02|COLEC”
Base object for the Equipment Cases of the column.
Properties
Name :
Automatically generated via the text mask at the base object
Description :
The same as the description of the assigned pure component.
Implementation :
The pure component that is assigned on creation. Is set automatically. It is
identical to the object that is referenced underneath SD.ND0048 .
Tab “PD| Component data ”:
• “PD.ND0139| Material from simulation ”: Link to the underlying
simulation component. Is set automatically on creation.
Note:
The MAP object can also be used outside of the simulation import. In that
case the user must be able to set the attribute manually. However, that does
not make any sense in a simulation import; you should not replace the
reference that is generated automatically.
• The remaining attributes of the tab are linked with the simulation
component that is referenced in PD.ND0139 , the values are taken over
automatically from there:
• Properties window of the attribute, Link tab:
Link type : By linked object
Specification name : PD.ND0139
Specification : Name of the attribute from which the value is taken over.
Value : Dynamic
Before version 8.2: Static (compare SECTION 51.4.2.6: “@1PE|PO|SO|PS
PROCESS STREAM”)
• Tab General :
Edit mode : normal
(It is possible to set new values manually, the linking is then broken)
Tab “SD| Pure Component data ”:
• “SD.ND0048| Component ”: Link to the assigned PFD pure component.
Is set automatically on creation.
Note:
The note for PD.ND0139 .
• The other attributes of the tab are linked with the pure component that is
referenced in SD.ND0048 , its values are taken over automatically from
there.
Configuration of the attributes:
Analogous to tab “PD| Component data ”, and in addition:
• Tab Link : Always get linked value : activated
• Tab General : Edit mode : Not editable (value set by script)
(It is possible to set new values manually)
Tab “SYS| System ”:
Here are located attributes for specifying the object class (SY0001 , value:
Material Pointer) and for changing the unit system (NSYS ).
“...|MAS|MA0000 Component”
In the planning view this “blank” pure component is used in both the first and
the second import steps.
MA0000 is always used in the first import step, when importing a file from a
simulator to create the simulation pure components. (Compare Step 1: Pure com-
ponents and components, P. 51-10.)
The simulation pure component takes as its name the name that the pure com-
ponent had in the simulator.
MA0000 is also used in the second import step, if Comos cannot find a match-
ing pure component in the pure components library for a simulation pure com-
ponent. (Compare Step 2: Pure components and components, P. 51-14.)
The name of the simulation pure component is entered at the PFD pure com-
ponent in the following properties:
• Name
• Description
• Attributes ISD.ND0001 and ISD.ND0013 .
...MAS|MA[number]
In the planning view these pure components are used in the second import
step, when a simulation pure component is to be converted into a PFD pure
component for the first time. (An explanation is given in Step 2: Pure components
and components, P. 51-14 as to what happens if the pure component exists
already.)
Comos reads the name of the simulation pure component and checks whether
there is a pure component underneath @1PE|PO|SO|MAS for which the follow-
ing applies:
One of the names entered in “ISD.ND0013| Name from simulation ” is
identical to the name of the simulation pure component. (The attribute can
contain multiple designators, separated by commas and without blank spaces,
whose spelling is identical to that of the name in the simulators. The attribute
must already have been set in the base data.)
If such a pure component is found, it is created in the planning view in the AMA
folder underneath the process unit.
If no such pure component is found, Comos uses the “blank” MA0000
Component object. (See “...|MAS|MA0000 Component”, P. 51-41).
• Import of a subcase:
As a rule, only the PFD material stream for the imported subcase is created,
underneath the already existing process stream. More detailed information
is given in SECTION 51.3.2: IMPORTING SUBCASES.
Properties
Name :
The name of the run case that had been input at the import object
(ID.ND0140 )
Class : Position
Subclass : material stream
• Mapping tables are entered as elements on the Elements tab (base object:
@System|@O|@Mappingtable).
• The mapping tables then define which attribute of the PFD material
stream is linked with which attribute of the simulation material stream.
The process stream in turn obtains the values of its “ASD| Actual stream
data ” tab from the material stream. See SECTION 51.4.2.6: “@1PE|PO|SO|PS PROC-
ESS STREAM”.
Tab “System”
Name :
The same as the name of the simulation material stream
Class : Position
Subclass : Pipe
Tab “Elements”
The following elements must be created:
• An element for a material stream with the following properties:
• Option Virtual equals N times .
• Base object link: to |@1PE|PO|SO|MS Material Stream
This element is required to create the main case and the subcases.
• If default run cases are desired: At least one element for a default material
stream.
Three default run cases (DESIGN, MIN and MAX) have been
preconfigured in the StandardDB.
Properties:
• Option Virtual : Off
The material streams are created automatically together with the process
stream
• Base object link to |@1PE|PO|SO|MS Material Stream
• An element for segmentation of the process stream must exist:
• Name : SEG
• Class : Element
Subclass : Pipe
• Option Virtual equals N times
Tab “Connectors”
Two connectors of type P&ID must be prepared here:
• Input, Name: I1
• Output, Name O1.
Precondition:
In the StandardDB a base object has been prepared underneath the
@System|@D|@DocumentTypeMapping node whose name is the same as the
file ending of the PRO/II simulator (hence PRZ) and which possesses a base
object link to @1PE|DS|@O|PRZ.
Effect:
The document is created automatically; the link to the source file is set
automatically (the user can decide whether to use a copy or whether a link
is to be set up).
The source file is referenced automatically on the PROII tab
The tab differs in the following ways from the Aspen Plus import object:
• There is no attribute for the import file (it is referenced on the ProII tab)
• ID.BUTTON1 and ID.BUTTON2 :
As for the Aspen Plus import object, but with its own OnClick()script.
• ID.BUTTON3 : Place PFD Equipment
(This step does not exist in the Aspen Plus import operation.)
• ID.BUTTON4 : Place PFD Streams
As for the Aspen Plus import object, but with its own OnClick() script.
• The names of buttons BUTTON1 to BUTTON4 may not be changed, since
the OnMenuCreate()script of the import object uses these names.
• “ND0140| Design Case ”:
Unlike with the Aspen Plus import, in a PRO/II import there is no base
object for the subcases. Instead, the PRO/II import objects are nested.
• Import object of level 1 (main case):
Enter the main case.
The main case and the default cases (in the StandardDB: DESIGN, MAX
and MIN) are created (underneath the PFD equipment: Equipment Case
objects, underneath the process streams: material streams).
• Import object of level 2 (subcase)
A subcase is created.
• DESIGN is preconfigured as the main case in the StandardDB.
• This attribute should not be left blank, since otherwise the PFD objects
cannot be created.
• No attribute for the number of the PRO/II version that is used.
In contrast to the Aspen Plus import object, the the PRO/II import object has
the following attribute:
• “ID.ND0249| Import into document ”:
If the PFD objects are to be placed on another PFD in steps 3 and 4 than on
the PFD that had automatically been created underneath the process unit.
Can be set by the user in the planning view (optional)
The attributes of the tab are preconfigured in the StandardDB with the values
given below, but they can also be set in the planning view.
• Edit group “Paths ... ”:
Specifies underneath which objects the PFD objects that had been created in
step 2 are to be located.
More detailed information is given in SECTION 51.4.1.5.1: “...|AXSI ASPEN XML
SIMULATION IMPORT”.
The tab functions in the same way as the tab of the PRO/II import object, but
it has fewer attributes.
Compare the section on the PRO/II import object, see section Tab “IP Import
Options”, P. 51-49.
51.5.1 Overview
Functions controlling the exact sequence of the import operation are defined
on the Script tabs of the following objects: The base objects of the import
objects, the base objects of the simulation objects and the buttons that start the
import steps.
In the StandardDB these functions only call the standard import operation.
However, the standard import can be modified by extending the functions via
script. That way, one can, for example, import attributes that are not consid-
ered by the standard import, or change the way the attributes are mapped in
comparison to the standard import.
In the script, the usual Comos script functionalities are available to the full
extent (for example, retrieving attribute values).
SECTION 51.5.2: IMPORT OBJECTS: BUTTON1 TO BUTTON4 and SECTION 51.5.3: SIMULA-
TION OBJECTS give an overview of which functions have been defined at which
objects, which functions are involved, and what the call of the standard import
looks like.
The remaining sections describe how to extend the standard import operation.
On the ID Import Data tab, the import objects have four buttons (Aspen
Plus: 3 buttons) that start the individual import steps.
Each of these buttons has an OnClick() script that controls the import step in
question.
The following commands within the OnClick() script start the standard
import:
• PRO/II and HYSYS:
• ID.BUTTON1:
Workset.lib.pe.Simulation.StartImport ThisObject
Starts the first import step.
StartImport() creates an instance of ProIICOMImport, calls its
Import() operation and passes the CDevice of the import object as
parameter. See Note, P. 51-65.
• ID.BUTTON2:
Workset.lib.pe.Simulation.CreatePFDObjects ThisObject
Starts the second import step.
• ID.BUTTON3:
Workset.lib.pe.Simulation.PlaceObjectsOnPFD1 owner.owner,
Nothing
Starts the third import step.
• ID.BUTTON4:
Workset.lib.pe.Simulation.PlaceStreamOnPFD1 owner.owner
Starts the fourth import step.
• Aspen Plus: Import object level 1 (...| AXSI)
• ID.BUTTON1:
If GetSpecOwner.SystemTypeName = "Device" Then
File = owner.Specifications.Item("ND0123").value
If File<>"" Then
If right(File,3) = "xml" Then
Set SI = createObject("ComosAspenXMLImp.AspenXMLI
mp")
SI.Import GetSpecOwner
End If
End If
End If
Creates an instance of AspenXMLImp, calls its Import() function, and
thus starts the first import step. (Compare Note, P. 51-58.) The import object
is passed as parameter.
• ID.BUTTON2:
The same as for PRO/II / HYSYS.
• ID.BUTTON3:
owner.Workset.lib.pe.PlaceStreamOnPFD owner.owner
Starts the third import step.
• Aspen Plus: import object level 2 (...| AXSI1)
• ID.BUTTON1:
Set PEMod = CreateObject("ComosPEModul.PEModul")
PEMod.CreatePFDCase owner.owner
Starts the first import step.
• ID.BUTTON2:
Set PEMod = CreateObject("ComosPEModul.PEModul")
PEMod.CreatePFDCase owner.owner
Starts the second import step.
If necessary, the scripts can be modified by means of additional commands.
However, they should not be deleted unless the standard import function is to
be replaced completely by an import function of your own.
However, the actual modification of the standard import function takes place
in the user script blocks of the simulation objects.
51.5.3.1 Overview
Each object underneath @1PE|PO|SIM defines multiple functions on the
Script tab. These functions control what happens to this object during the first
two import steps.
The start of the function body calls the standard import function for the object.
The standard import function can be extended in the subsequent lines (see
SECTION 51.5.4: ASPEN PLUS: CLASS ASPENNODE, SECTION 51.5.5: PRO/II: CLASS PROIIN-
ODE and SECTION 51.5.6: HYSYS: CLASS HYSYSNODE).
This allows you, for example, to change the attribute mapping so that it differs
from the one in the standard import, or to import new attributes.
The call for the standard import operation should not be deleted.
Exception: The standard import operation should not be executed at all for
this object but is replaced completely by a script that is defined in the function.
This involves the following functions:
• [SimulatorName]Import(Node As Object):
This function is called for each simulation object shortly before the end of
the first import step. See SECTION 51.5.3.2: IMPORT().
A reference to the node object of the simulation object is passed as
parameter.
In this function you can add scipt that imports attributes that are not
considered by the standard import. These attributes must be available at the
simulation object and its corresponding PFD object. If that is not the case,
they must be created in the base data beforehand.
If you want to modify the attribute mapping defined in the standard import,
you should first add a script that undoes the value assignment carried out in
the standard import dll, before reassigning the attributes as required.
In both cases the following applies: In order to pass the modification of the
standard import on to the PFD objects, the attribute linking between
simulation object and PFD object must be adjusted accordingly (link type:
linked object or mapping table). If new attributes were added, you may also
need to modify the report templates of evaluation reports that should work
with these attributes.
• [SimulatorName]ImportDone(Node As Object):
This function is called once the Import() function has been executed for all
the simulation objects. It is responsible for post-calculations.
A reference to the node object of the simulation object is passed as
parameter.
Example: Conversion of the molar density in mass density.
See SECTION 51.5.3.3: IMPORTDONE().
• SimulatorImport(DevSimObj As IcomosDDevice):
This function is called for each simulation object in the second import step.
A reference to the import object is passed as parameter.
See SECTION 51.5.3.4: SIMULATORIMPORT().
• SimulatorImportDone(DevSimObj As IcomosDDevice):
This function is called once the SimulatorImport() function has been
executed for all the simulation objects. It is responsible for post-
calculations.
A reference to the import object is passed as the parameter.
See SECTION 51.5.3.5: SIMULATORIMPORTDONE().
51.5.3.2 Import()
• Aspen Plus:
UserScriptBlock1: Function AspenImport(Node)
• PRO/II:
UserScriptBlock2: Function ProIIImport(Node)
• HYSYS:
UserScriptBlock3: HYSYSImport(Node)
51.5.3.3 ImportDone()
• Aspen Plus:
UserScriptBlock1: Function AspenImportDone(Node)
• PRO/II:
UserScriptBlock2: Function ProIIImportDone(Node)
• HYSYS:
UserScriptBlock3: Function HYSYSImportDone(Node)
51.5.3.4 SimulatorImport()
All interfaces:
UserScriptBlock4: Function SimulatorImport (devSimObj)
51.5.3.5 SimulatorImportDone()
All interfaces:
UserScriptBlock4: Function SimulatorImportDone (devSimObj)
Standard import:
Set SimulatorImportdone =
Workset.lib.pe.simulator.importdone(devPFDObj,devSimObj)
The first two import steps can be modified via class AspenNode from the
ComosAspenXMLImp.dll.
Background:
Note
In the AspenXMLImp.dll there is also a second class: class AspenXMLImp.
This class is instantiated in the OnClick() script of the ID.BUTTON1 button of
the Aspen Plus import object (compare SECTION 51.5.2: IMPORT OBJECTS:
BUTTON1 TO BUTTON4). Next, the following function of the AspenXMLImp
instance is called in the script:
Function: Sub Import(ByVal devSimulator As IComosDDevice):
This function starts the import operation. A reference to the Aspen Plus
import object is passed as the parameter (hence an instance of CDevice
@1PE|PO|SIM|XXSI|AXSI or @1PE|PO|SIM|XXSI|AXSI1).
51.5.4.1 Properties
ComosDevice
Public ComosDevice As IcomosDDevice
Pointer to the simulation object whose script is executed at thr moment. (On
the Script tab this is identical to the ThisObj command.)
Example:
Node.ComosDevice.spec("PD.CD0055").Value
AspenXMLNode
Public AspenXMLNode As MSXML.IXMLDOMNode
• AspenXMLNode.NodeName As String
Returns the name of the current XML node as a string.
Example:
Can be used to execute code only for a particular node.
If Node.AspenXMLNode.NodeName = "BlockRadfrac" Then
…
End If
IsLogActive
Public Property IsLogActive() As Boolean
Allows you to turn the log texts on and off. This way, the administrator can
determine which error or warning messages are to be included in the log text.
Example:
Activate the log text while a sub-object is being created. If the required XML
sub-node does not exist, an error message is written to the log text.
Node.IsLogActive = True
Node.CreateSubObjects "B_TEMP", "Stage", "Tray"
Node.IsLogActive = False
51.5.4.2 Read()
Public Function Read(ByVal strAspenXMLAttribute As String,
ByVal strComosSpecName As String)
As Boolean
Reads a single value from an XML node and writes it to a Comos attribute.
XML values defined by “*” (no value or default value) are skipped during the
import operation.
Parameter “strComosSpecName”
Type: String
Name of the target attribute.
Parameter „strAspenXMLAttribute“
Type: String
A combination of:
Name of the XML node + a more precise definition of the source value.
The definition of the source value can be made up from several blocks:
• “domain”:
Defines the unit group
If the source value involves a numeric value with a unit, a “domain”
attribute must exist at the XML node. The attribute must be part of the more
detailed definition of the source value.
Exception:
Multiple unit groups exist in one node. In that case “domain” has the value
“MultiDomain” and is not specified in the definition of the source value.
• Dimension:
An XML node can have a one dimensional or a multi-dimensional data
field. The individual dimensions are defined via sub-nodes. Each dimension
possesses a collection of “items”.
If one item was determined for each dimension, the associated value can be
determined from the “Value” sub-node.
This results in the following notation for strAspenXMLAttribute:
[XMLNodeName](domain:[value], [NameDimension_1]:[value from
“items”],[NameDimension_2]:[value from “items”], ...)
The precise definition of the source value is optional and depends on the struc-
ture of the XML node. The round brackets are mandatory. They are also
required if the definition of the source value is dispensed with. The text in
square brackets must be replaced by the specific values.
If one dimension is unspecified, Comos cannot determine which value is to be
selected. A log entry is made.
A number of examples are given below. The target attribute is PD.CD4711 in
all the examples.
Function call:
Node.Read "TEMP_OUT(domain:TEMPERATURE, SUBSTREAM:MIXED)",
"PD.CD4711"
51.5.4.3 ReadArray()
Public Function ReadArray
(ByVal strAspenXMLAttribute As String,
ByVal strComosSpecName As String)
As Boolean
Reads from an XML node a one dimensional data field and writes it to the
XValues of a Comos list attribute. XML values defined by “*” (no value or
default value) are skipped during the import operation.
Parameter strComosSpecName
Type: String
Name of the Comos list attribute.
Parameter strAspenXMLAttribute
Type: String
Analogous to the strAspenXMLAttribute parameter of Read(). The sole dif-
ference:
One dimension remains undetermined. It does not matter which dimension
that is.
If two or more dimensions are not specified, the function call is under-deter-
mined. If all the dimensions have been determined, then Read() would be the
correct function call.
Examples
• Result: Two values are written into the XValues of list attribute
PD.CD4711, and in our example they are the values from stage 3.
• Result: Eighteen values are written into the XValues, and in our example
they are the values from NPOINTS 2.
51.5.4.4 CreateSubObjects()
Public Function CreateSubObjects
(ByVal AspenXMLNodeName As String,
ByVal AspenXMLSubNodeName As String,
ByVal NamePrefix As String)
As Boolean
This function creates a new simulation object underneath the current Comos
Device, provided that the simulation object that is to be created does not exist
already (checking is based on identical names):
AspenXMLNodeName:
Name of the XML sub-node underneath which you can find the names of the
new objects.
AspenXMLSubNodeName:
Name of the sub-node of the second order (child of the sub-node that had been
defined via AspenXMLNodeName). This name determines which CDevice is
used for the creation (“XYZ”). The values of this node determine how many
objects are created and what names they have.
NamePrefix:
Any desired combination of alphabetical letters that is prefixed to the object
name.
Example:
Node.CreateSubObjects "X", "COMPONENTS", "C_"
51.5.4.5 XMLValueExists()
Public Function XMLValueExists(ByVal XMLInfoStr As String) As
Boolean
Example:
Can be used to only execute commands if a particular value is present.
bValueExists = Node.XMLValueExists("DUTY_OUT2(HCURV_NO:2)")
The first two import steps can be modified via the ProIINode class from the
Pro2Lib601.dll.
Background:
An instance of ProIINode is created for each simulation object during the
import operation. As is the case with AspenNode, this instance is a temporary
object that serves as a link between Comos (the target object) and PRO/II (the
source object) and that is only available during the import operation.
In the same way as for the Aspen Plus import operation: The import functions
that had been defined on the Script tab (see SECTION 51.5.3.1: OVERVIEW) for each
simulation object are called in the first two import steps and the ProIINode
instance that had been created for this simulation object is passed as parame-
ter.
The import calls can be extended by means of the functions and variables of
the ProIINode instance, thus modifiying the standard import function of the
first two import steps.
The functions and variables of the ProIINode class are introduced in the fol-
lowing sections.
Note
In the Pro2Lib601.dll there is also a second class: The ProIIComImport
class.
This class is instantiated in the OnClick() script of the ID.BUTTON1 button of
the ProII import object (compare SECTION 51.5.2: IMPORT OBJECTS: BUTTON1 TO
BUTTON4). Next, the following function of the ProIICOMImport instance is
called in the script:
Function: Sub Import(ByVal ObjSimulator As IComosBaseObject):
This function starts the import operation. A reference to the PRO/II import
object is passed as parameter (cast to its IComosBaseObject base type).
51.5.5.1 Properties
ComosDevice
ComosDevice As IComosDDevice
Pro2Objects
Pro2Objects As Dictionary
The source objects. This involves a collection of PRO/II objects that each rep-
resent an interface of an overall object.
Thus, multiple PRO/II objects are converted into just one Comos object.
Pro2File
Pro2File As Object
Pointer to the PRO/II file object from which the data is to be imported.
(Not: The file written from PRO/II and made available in Comos as a copy via
link!)
For example, if you need more data for the current object than is read by the
standard import function.
Pro2Server
Pro2Server as Object
Pointer to the PRO/II File Server. This allows queries to the file to be
imported.
CompCalcDev
CompCalcDev As IComosDDevice
Pointer to the CompCalc simulation object, underneath which the pure com-
ponents were collected.
isStream As Boolean
Returns TRUE if the current has the PRO/II class “Stream” or is a temporary
stream.
MaterialCDev As IComosDCDevice
MaterialCDevice As IComosDCDevice
Pointer to the base object that is used for all the components:
@1PE|PO|SIM|Sub|MAPSIM Component Simulation Objects
(It must not have any other value.)
Pro2Components As Collection
Reference to a collection of ComosDDevices that is located underneath the
CompCalc simulation object.
51.5.5.2 Read()
Function Read
(ProIIClassName As String,
ProIIAttributeName As String,
ComosSpecName As String,
[index As Integer = -999])
As Boolean
Reads a single value from PRO/II and writes it to an attribute of the Comos
object that is managed by the ProIINode instance.
Parameter:
• ProIIClassName:
Determines from which of the objects that are referenced in Pro2Objects a
value is to be read.
• ProIIAttributeName:
Identifies the source attribute from which the value is read.
• ComosSpecName:
Identifies the target attribute of the object that is refernced in ComosDevice .
Notation: “NameOfTab.NameOfAttribute”
• Since some values in PRO/II do not have a measurement unit, the
measurement unit of the starting value can be passed in the function call.
This is done by appending the string “/NameComosMeasurementUnit” onto
ComosSpecName, whereby the name of the Comos unit of measure is passed
exactly as it had been defined in the Comos unit system.
Example:
Unit group Molar Volume: Name “M62”
Unit: Cubic meter/Kilomol, Name: “M62.25”
Parameter ComosSpecName: “SPH.CD0199/M62.25”
• index:
Optional. Makes it possible to read a value from an array.
Example
Node.Read "SrBulkProp", "SolidCritVolume", "SPH.CD0199/M62.25"
51.5.5.3 ReadArray()
Function ReadArray(ProIIClassName As String,
ProIIArrSizeAttributeName As String,
ProIIAttributeName As String,
ComosSpecName As String)
As Boolean
Reads a one dimensional field from PRO/II and writes it into a list attribute in
Comos.
Parameters:
• ProIIClassName:
Identifies the object from whose source data field values are read.
• ProIIArrSizeAttributeName:
Specifies the name of the attribute that contains the value of the source data
field.
Blank string: No value is passed.
• ProIIAttributeName:
Identifies the source data field.
• ComosSpecName:
Analogous to Read(). The attribute must be of type “List”. The name of the
column into which the data field is written must be passed as well.
Notation:“NameOfTab.NameOfAttribute.NameOfColumne”
Example:
Node.ReadArray "SideColumn", "NumberOfPumparounds",
"PumpAroundTrayFrom", "TPA.ND0081.ND0072" 'Pumparound
'from tray
51.5.5.4 ReadArrayToFewSpecs()
Function ReadArrayToFewSpecs
(ProIIClassName As String,
ProIIArrSizeAttributeName As String,
ProIIAttributeName As String,
ComosSpecNames As String)
As Boolean
Reads a one dimensional field from PRO/II and writes it into multiple
attributes of the Comos object that is managed by the ProIINode instance.
Parameters:
ProIIClassName, ProIIArrSizeAttributeName and ProIIAttributeName:
Analogous to ReadArray().
ComosSpecNames:
Contains the name of the target attributes. They are passed in a string, sepa-
rated by commas.
This function is used if values are stored in a data field in PRO/II that is split
into two data fields in Comos.
Example:
Node.ReadArrayToFewSpecs "HcurveCalc", "NumberOfPoints",
"CriticalPresLV", "HC.ND0114.CD0015v,
HC.ND0114.CD0015l/P11.32" ' Critical Pressure
51.5.5.5 ReadSI()
Function ReadSI
(ProIIClassName As String,
ProIIAttributeName As String,
[index As Integer = -999])
As Double
Returns the value of an attribute from PRO/II as a numeric value. The func-
tion is called if, for example, you need the value within control flow struc-
tures.
There are differences between PRO/II and Comos in the use of SI standard
systems. If there is a difference, then the SI standard system used by Comos
is taken as the basis. This means that the value of the unit specified by the
PRO/II standard system is converted into the unit specified by the Comos
standard system.
Parameters: See Read().
51.5.5.6 GetComosSpecArray()
Function GetComosSpecArray(ComosSpecNames As String,
ComosSpecCount As Integer)
As String
Help method.
Parameters:
• ComosSpecNames As String:
Comma-separated list of Comos attributes.
• ComosSpecCount As Integer:
Number of attributes that are passed in ComosSpecNames.
Return value:
String array: Each field contains one of the attribute names that were passed
in ComosSpecNames.
ReadMainComp()
Function ReadMainComp
(ProIIClassName As String,
ProIIAttributeName As String,
ComosSpecName As String,
[index As Integer = -999])
As Boolean
ReadStreamComp()
Function ReadStreamComp
(ProIIClassName As String,
ProIIAttributeName As String,
ComosSpecName As String,
[index As Integer = -999])
As Boolean
ReadTempStream()
Function ReadTempStream(StreamID As String)
ReadTrayStreams()
Sub ReadTrayStreams()
The first two import steps can be modified via the HYSYSNode class from the
HYSYSImport.dll.
Background:
An instance of HYSYSNode is created for each simulation object during the
import operation. As with AspenNode, this instance is a temporary object
that serves as a link between Comos (the target object) and Aspen Plus (the
source object) and is only available during the import operation.
Analogous to the Aspen Plus import: The import functions defined on the
Script tab are called for each simulation object in the first two import steps
(see Overview, P. 51-54) and the HYSYSNode instance created for the current sim-
ulation object is passed as the parameter.
The import calls can be extended via the functions and variables of the
HYSYSNode instance and the standard import function modified for the first
two import steps.
The functions and variables of the HYSYSNode class are introduced in the fol-
lowing sections.
Note
In HYSYSImport.dll there is a second class: This is class HYSYSImport.
This class is instantiated via the OnClick() script of the ID.BUTTON1 button
of the HYSYS import object (compare SECTION 51.5.2: IMPORT OBJECTS: BUTTON1
TO BUTTON4). Subsequently, the following function of the HYSYSImport
instance is called in the script:
Function: Sub Import(ByVal objSimCase As IComosBaseObject):
This function starts the import operation. A reference to the HYSYS import
object is passed as parameter (cast to its IComosBaseObject base type).
Result of the call: The simulation objects are created underneath objSimCase
and an instance of HYSYSNode is created for each simulation object.
51.5.6.1 Properties
ComosDevice
ComosDevice As IComosDDevice
Components
Components As Object
HYSYSObject
HYSYSObject As Object
NodeType
NodeType As eNodeType
SpecLog
SpecLog As IComosDSpecification
Reference to ID.ND0122: The attribute at the import object to which the log
text is written.
The property is used to control the output during the import operation.
XPos
XPos As Double
YPos
YPos As Double
51.5.6.2 HYSYSClass()
Function HYSYSClass() As String
51.5.6.3 LiquidPhase1()
Function LiquidPhase1() As Object
51.5.6.4 LiquidPhase2()
Function LiquidPhase2() As Object
In the same way as for LiquidPhase1().
51.5.6.5 Read()
Function Read(strSpecName As String, hyAttribute As Variant,
[strHYSYSUnit As String], [strParam As String])
Reads a single value from HYSYS and writes it to an attribute of the Comos
object managed by HYSYSNode.
strSpecName:
Target attribute
hyAttribute:
The HYSYS object.
strHYSYSUnit:
Optional
The value that is passed here is set as SI unit. Then the value is converted into
the unit that has been set for the target attribute.
If a number is passed: The value of the HYSYS object is multiplied by this
factor.
Blank: The default unit for this HYSYS object type is determined and used.
strParam:
Optional
Only if the target attribute is a list. The index for setting the XValue.
51.5.6.6 ReadPhase
Sub ReadPhase(strchapter As String, hyFluidPhase As Object)
51.5.6.7 VapourPhase()
Function VapourPhase() As Object
Analogous to LiquidPhase1().
- PR1 Process_Example
- ABS Boundary Streams
- AMA Components
- APU Process Units
- PU001 Process Unit_Example1
- PFD.1 PFD diagram
- AEQ Equipment
- APS Process Streams
- AXX Miscellaneous
- SIMD Simulation Data
Starting point: The SIM Simulation Data folder underneath the process
unit.
The import is always done for a particular run case. In the default planning
structure, an import object is created first of all for the main case (the import
object of level 1). Then, additional import objects (level 2) can be created
underneath the level 1 import object, which then import additional run cases.
See SECTION 51.3: TECHNICAL SEQUENCE for more detailed information regarding
the technical background to the configuration of the base data.
Open the Properties window of the import object and select the
“Import Data ” tab:
Currently there is only the option to create a link to the source file (not a
copy).
• “Stream/tray/stage compositions ”:
Determines for simulation components which attributes are imported to the
PD Component Data tab.
• “Column trays/stages ”:
Determines whether only the data of the column is to be imported, or the
data of the column and the trays, or else the data of the column, trays and
components.
If a different setting is required for an import operation than the one that had
been preconfigured by the administrator, this must be set before the first
import step.
However, in most cases it will not be necessary to change the settings here.
The following properties of the import object are filled with information from
the simulation run:
• “ID.ND0118| Description simulation run ”
• “ID.ND0119| Date simulation run ”
• “D.ND0120| User information ”
• “ID.ND0121| User ID ”
• “ID.ND.0294| Aspen version ”
If this link is left empty, the process unit is used underneath which the import
object is located.
If another main case than the one preconfigured at the base object of the
import object is to be created, then its name must be entered:
“Import data ” tab, “Design Case ” attribute:
Select the [CREATE PFD OBJECTS] button on the “Import Data ” tab. PFD
objects are created for the simulation objects.
Result:
The PFD equipment is given the same name as that of the simulation object.
The PFD process stream is given the same name as that of its simulation
material stream.
• Block equipment, for example a column:
If the administrator has configured the base data correspondingly, an entire
assembly is created automatically. (For example: column, heat exchanger,
pump, valve and vessels). The PFD objects are automatically connected
with one another as is specified in the assembly.
• Case objects (Equipment Cases) for the main case and the default run cases
are created underneath the equipment. They are given the same names as the
cases:
• Material streams for the main case and the default run cases are created
underneath the process streams. The material streams correspond to the run
cases of the equipment and are given as their Name the names of the cases:
• The components are created underneath the material stream that had been
input at the import object as the main case (“Import data ” tab,
“ND0140| Design Case ”).
Components also contain case-dependent data.
Each component has a pointer to its associated pure component:
You can use the context-sensitive mouse menu of the component to navigate
to its pure component: | NAVIGATE| IMPLEMENTATION.
• If the base data administrator has retained the default configuration of the
import object, the pure components are created underneath the process unit,
in the AMA Components folder:
• A copy of the PFD template predefined in the base project underneath the
assembly is created at the same time as the PFD objects. This copy is stored
underneath the equipment simulation object.
• The entire template can be placed in one step by dragging any desired item
of PFD equipment that is part of the assembly onto the PFD diagram:
The copy of the PFD template is deleted afterwards. Thus the collective
placing function is not made available twice.
Without assembly:
• The equipment simulation object has no reference to a PFD assembly. The
PFD equipment must be dragged manually from the Navigator onto the PFD
diagram.
After placing the equipment, the connected process streams are also placed
automatically via [PLACE PFD STREAMS] if the following applies: On the Sys-
tem tab of the process stream, the SYS.ND0385 Visible in mass balance
attribute must be activated.
Streams whose connected equipment has not been placed are not placed,
either.
Streams whose connected equipment is located on different diagrams are seg-
mented:
The segments are placed, each with a page reference to the other diagram:
Importing subcases
In order to import another run case than the one specified in the initial import
(i.e. the main case), create an import object for a run case (import object level
2) underneath the import object of level 1:
Call the context-sensitive mouse menu of the import object level 1, | NEW
| AXSI1 ASPEN XML-SIMULATION IMPORT (CASE):
Open the properties of the run case import object and select the “Import
data ” tab:
Set the import file and enter the name of the new run case, for example
TEST_2.
If the import options should differ from the preconfigured import options, you
must switch to the “Import options ” tab and change the settings. (In the same
way as for the import object of level 1, see Setting the import options, P. 51-76).
Then return to the “Import Data ” tab and select [START IMPORT].
The file is imported and simulation objects are created underneath the run
case import object. General information from the simulator (date of the sim-
ulation run, etc.) and entries regarding possible errors or incorrect configura-
tions are written to the import object .
Select the [CREATE NEW CASE] button:
Comos checks whether the objects located underneath the run case import
object have already been imported for another run case. For this, not only the
import object of level 1 is searched, but also all other import objects of level
2 that are located in parallel to the current import object. The check is done on
the basis of identical names.
Equipment:
• The equipment has already been imported once. Result: The associated PFD
object already exists and a new case (Equipment Case) is created underneath
the PFD object.
• The equipment is imported for the first time. Result: A new item of PFD
equipment is created and underneath the equipment the new case
(Equipment Case).
Material streams and components:
• The material stream has already been imported for another run case. Result:
The associated PFD process stream exists already and underneath it is the
corresponding PFD material stream.
The material stream for the current run case is created in parallel with the
existing material stream. It receives the same name as the current run case.
The PFD components are created underneath the material stream.
• The material stream is imported for the first time. Result: A new PFD
process stream is created. The process stream receives the name of the
simulation object of the material stream.
A PFD material stream is created underneath the process stream and
receives the same name as the current run case.
The PFD components are created underneath the PFD material stream.
Pure components:
• The pure component already exists in the AMA Components folder
(regardless of whether it was imported or created manually):
No new pure component is created. Nothing else is done, since pure
components do not contain case-specific information.
• The pure component does not yet exist in the AMA Components folder: The
pure component is created in the folder
The user is asked to decide whether to use a copy or whether a link is to be set
up. It is recommended that you create a copy (select [YES] in the dialog win-
dow):
| PROPERTIES:
Opens the Properties window of the document.
• Tabs General and ProII :
General properties that are set automatically by using drag&drop. For
example, on the PROII tab you can find the path to the import file.
• Tab Specifications :
Tabs that control the import operation. As a rule, the base object has already
been preconfigured by the administrator. However, sometimes it is still
necessary to make some changes manually.
For example, object-specific and simulator-specific import entries can be
made on the “Import option ” tab (see Configuring the import options, P. 51-86).
| OPEN:
Starts the simulator. (This has the same effect as double-clicking on the
import object.)
|START IMPORT,
| CREATE PFD OBJECTS,
| PLACE PFD EQUIPMENT ,
| PLACE PFD STREAMS:
Start the individual import steps. They are called in this order.
The import steps can also be started in the Properties window, via the buttons
of the same names on the “Import data ” specifications tab.
• “Stream/tray/stage composition ”:
Determines which attributes are to be imported for the simulation
components (on the “PD| Component Data ” tab).
• “Column trays/stages ”:
Determines whether only the data of the column is to be imported, or the
data of the column and the trays, or the data of the column, trays and
components.
“Pro/II import options ”:
If you do not work with the planning structure predefined in the StandardDB,
it is also necessary to determine underneath which process unit the PFD
objects are to be created:
Import object, “Import data ” tab, “Import into process unit ”. (In the same
way as for the Aspen Plus import operation, compare Step 2: Creating the PFD
objects, P. 51-78)
In the Navigator, the results of the second import step can, for example, look
as follows:
You can also place the equipment on another diagram. To do this, a reference
to the desired diagram must be set at the import object on the “Import Data ”
tab at the “Import into Document ” property:
(For example, if you are working with another planning structure than the one
preconfigured in the StandardDB via the project settings.)
Comos uses the coordinates exported from PRO/II for the placing.
stream is segmented and the segments are placed. A page reference is added
on the diagrams. (In the same way as for an Aspen Plus import, see Step 3: Plac-
ing the PFD streams, P. 51-81.)
Importing subcases
Proceed as follows to import an additional case in addition to the main case:
Create a second import object underneath the import object of level 1.
This is done by simply dragging the prz file that contains the new run case
from a Windows Explorer window onto the import object of level 1:
As was already the case when creating the import object of level 1, the user is
asked to decide whether to use a copy or whether a link is to be set up. It is
recommended that you create a copy.
An import object of level 2 is created underneath the import object of level 1:
The import object that is created in this way automatically points to the file
that was dragged from the Explorer. It is based on the same base object as the
import object of level 1 and possesses the same properties.
If required, you can change the import options preconfigured by your adinis-
trator. (The configuration is similar to that of the import object of the main
case, see Configuring the import options, P. 51-86).
Now the first import step can be executed: Call the context-sensitive mouse
menu of the import object and select | START IMPORT.
The file is imported and simulation objects are created underneath the import
object. General information from the simulator and entries regarding possible
errors or incorrect configurations are written to the simulation objects.
The following properties must be set on the “Import data ” tab before execut-
ing the second import step:
• The new run case must be input in the “Design Case ” attribute:
Here, the same process unit should be input as at the import object of level 1.
Now call the second import step: | CREATE PFD OBJECTS.
If an object is imported for the first time, then the corresponding PFD object
is created as well. If an object had already been imported for another run case,
only the run case object is created underneath the associated PFD object. (In
the same way as for the import of a subcase from Aspen Plus, see Importing sub-
cases, P. 51-83.)
The remaining import steps (| PLACE PFD EQUIPMENT and | PLACE PFD
STREAMS) only need to be called if, with regard to the main case, new equip-
ment or process streams were imported.
If the objects are to be placed on a diagram other than the first diagram located
underneath the process unit, this diagram must have been specified before-
hand by means of “Import into document ”. The setting should match that at
the import object of level 1.
Importing subcases
Analogous to PRO/II (Importing subcases, P. 51-91).
52 PE and CM modules
• Open the SO1 Base objects project and click the Process tab in the
Navigator.
• Within the Navigator tree, expand the @Template Copy templates node,
and then expand the PE Process Engineering node.
• The PE Process Engineering folder contains a node “02 P&ID+CM
Templates“ consisting of different types of equipment folders:
– Next, assign the newly created object an appropriate base object; drag
the base object from the node @1PE|PO|EQ (e.g. for a vertical vessel,
drag “@1PE|PO|EQ|03|VES|VES01 Vessel“ ) into the Base object
field in the properties window of the newly created object.
• Then create a new unit (to contain the 3D objects) under the newly created
PFD equipment object by right-clicking the object and selecting |New
|General |New Object, and assigning it the base object
“@1PE|US|FI|TMP|EQT Equipment Template.“ This creates the unit
EQT1 Equipment Template under the PFD equipment item.
• It is mandatory to rename the unit to @PEASSEMBLY .
Having created the unit to contain the 3D objects you can now start placing
objects (to prepare the template) in the 3D Model space as described in the
Comos CM manual.
For example, the vessel and cone objects shown below can be used to design
the template for a vertical vessel:
Having grouped the 3D objects together in the Model space, the next step is
to link the PFD objects to 3D objects as described in SECTION 52.2.3: CREATING A
MAPPING TABLE AND LINKING PFD OBJECTS TO 3D OBJECTS.
To establish links between the PFD equipment and the 3D objects for the tem-
plate by means of a Mapping-table:
• Create a Mapping-table object under the CM node containing the 3D
objects. To do this, select and right-click the CM node and select |New
|@Mappingtable :
After creating and setting the DimLen object as described earlier, it can be
linked to PFD attributes in the same way as other 3D objects, but the main
point to take note is that the DimLen object groups many different objects
together, and its dimensions (e.g. length) are only controlled by the target
attribute XV002. Thus, to link the length of the DimLen object to a PFD
attribute, use the PFD attribute as the source attribute and XV002 as the target
attribute for the mapping table.
The next step involves the mapping of PFD and P&ID as well as CM connec-
tors. The PFD connectors must be mapped onto the P&ID connectors (mostly
found in nozzles) to enable them to be represented correctly upon conversion
from PFD to P&ID. In addition, connector mapping is an essential require-
ment for the Auto-routing facility in Comos FEED CM.
Please note: Each of the “I “ and “O “ fields (e.g. I1, I2, 03 and 04) on the
PFD/PID Connecting Mapping tab actually represents a particular PFD
object connector, for example, the I1 field shown above represents the I1 PFD
connector shown below:
• Drag each nozzle connector from the P&ID object (under the PID node in
the Navigator) into the corresponding “I “ or “O “ fields on the PFD/PID
Connecting Mapping tab to map the P&ID and PFD connectors in
question.
For example to map a P&ID nozzle connector to a PFD connector I1, simply
drag the P&ID connector from the Navigator into the I1 field as shown below:
Please note: As a general rule, P&ID objects do not directly possess connec-
tors, but their connectors can be accessed from attached nozzles. Thus, unlike
PFD connectors, nozzles must be placed on the P&ID objects before being
able to access their nozzle connectors, also known as P&ID connectors.
The additional connector fields (001 to 014) are for user-defined or newly cre-
ated connectors. They can be used in the same way as the “I “ and “O “ fields.
• Click [OK] or [Apply]. You’re done!
To correctly prepare 3D templates make sure you follow all the steps
described under SECTION 52.2: PREPARING 3D / CM TEMPLATES FROM SCRATCH.
• To make the prepared 3D templates available to all users, you need to follow
the steps described in SECTION 52.4: AVAILABILITY OF P&ID AND 3D TEMPLATES.
• Drag each nozzle connector from the 3D object (under the CM node in the
Navigator) into the corresponding “I “ or “O “ fields on the PFD/CM
Connecting Mapping tab as shown in the illustration below:
• Use the equipment symbols on the symbol bar of the document to design the
equipment template. Note that you can also use base objects located in the
the “PI |PI EN Piping and Instrumentation“ node to design the templates.
• Change to the Navigator and move the objects/equipment that are
automatically created parallel to the PID document (i.e. at the same
hierarchy level) to lie under the “PID Template for PID“ node.
• Save the P&ID template.
• The last step involves the mapping of PFD and P&ID connectors. This can
be achieved in the same way as described in SECTION 52.2.5: CONNECTOR
MAPPING
Please note: The query object must be given the name “@Templatelist.“
• Open the query object and assign it a suitable Start object and Base
object. Suitable Start objects are located at |@Template |PE |02 | , on
the Process tab. For example, the following illustration shows the Start
object for a vertical vessel:
Suitable Base objects for the query object are located at |@1PE |PO |EQ,
on the Base objects tab. For example, the Base object for a vessel is illus-
trated below:
• You can now expand the @PEASSEMBLY node to view the 3D objects in
the Navigator tree:
and group new objects in the Model space using the dimension object, or
you can simply delete the objects you do not need and then add new ones
before grouping them together.
• Having placed and grouped the objects in the Model space, the next step is
to establish links between the PFD objects and the 3D objects in the Model
space by means of a mapping table, as explained in SECTION 52.2.3: CREATING
A MAPPING TABLE AND LINKING PFD OBJECTS TO 3D OBJECTS and SECTION 52.2.4:
LINKING THE DIMLEN OBJECT TO PFD OBJECTS.
Please note: If the mapping table in the existing template is still available (i.e.
if it has not been deleted), you cannot create a new one. You simply need to
use the existing mapping table to link the PFD and 3D objects.
You’re done! The newly prepared template is automatically available for all
users.
This node contains the names and descriptions of all the base objects and tabs
that are used in the PE module. Thus the CN node can be used to refer to the
meanings/descriptions of PE objects. Before creating a new object or tab in
the PE module, it is strongly recommended that the objects and tabs should
first be created in this node to avoid duplicate object names.
All attributes that are in the PE module are (or should be) in this node. It is
strongly recommended that the attributes should first be created in this node
to provide unique attribute names. Furthermore, attributes that are created in
this way can be edited just once (i.e. at one point) and the changes take effect
wherever the attribute is being used.
On the context menu of a PE attribute, the command |Navigate |Catalog
Attribute leads to attributes of the sub-nodes of CA - in the nodes CD, ND or
SY.
– CD Chemical and Physical Data: Contains numerical attributes, so all
attributes with numerical data (with/without units) should be created here.
– ND Names, Descriptions, Numbers: For textual attributes such as text
fields for remarks and descriptions.
– SY System Attributes: Contains very special attributes. For technical
reasons these attributes should not be modified.
– Q1 Query CD: Offers quick search and query facilities for all attributes in
the CD node. For example, it can be used to find out about the description
and units of an attribute.
– Q2 Query ND: Similar to Q1 Query CD, but meant for the attributes in the
ND node.
52.6.5 QU Queries
This node contains all the equipment, simulation objects and stream objects
that are used in the PE module.
52.6.6.1 EQ Equipment
The base objects for all PFD equipment are found in this node.
This node contains the base objects for all simulation objects. It is subdivided
into BLC, STR, SUB and XXSI:
– BLC: Base objects for all common simulation objects such as columns,
valves, heat exchangers, pumps and reactors are found in this sub node.
– STR : Contains base objects for stream simulation objects and the
CompCal simulation object.
– SUB : Contains base objects for simulation sub objects, for example,
MAPSIM for material pointer simulation objects, and TRSIM for column-
tray simulation objects.
– XXSI : Contains the base object for the Aspen import simulation object.
For detailed information see SECTION 51.4.1: “@1PE|PO|SIM SIMULATION OBJECTS”.
To ensure that the process units in the block diagram are automatically added
to the APU folder of the process, the following conditions must be fulfilled:
• Click the Base Objects tab of the Base objects project (S01), and go to
@1PE |US |FI |PR Process . In the properties window of PR Process ,
on the System tab, in the Creation mode section, make sure
Subelements is switched on.
Note that the base object whose Subelements must be switched on is the
base object (i.e. the process) hierarchically above the block diagram in ques-
tion.
• Also switch on Subelements in the Creation mode section of the folder
(in this case, APU All Process units ):
Please note: the folder in question is the folder beside (i.e. at the same hierar-
chical level as) the block diagram.
• On the System tab of S01 |@1PE |US |FI |PR |the folder in question, the
fields Class and Subclass must have the entries Unit and Category
respectively.
• The process unit must be an element of this folder.
• In the Options window of the block diagram template,
SortNewObjectsInCategories must be availabe, and it must be True.
The base objects for balance streams and balance stream flags are located at
@1PE | PO | SO | BS, and @1PE | PO | SO | BSF respectively.
stream. In the example below, if the DESIGN Temperature field is the source
field, and the MAX Temperature is the target field, then the mapping table
will appear under the MAX material stream as illustrated below:
The query for the Material stream list tab is located in the base project SO1
| @System | @0 |@PE | MSL.
Alternatively, a local copy MSL_Local can be created from within a planning
project in |@System |@0 |@PE |MSL_Local
53 Isometric module
With the Isometric module, you can create different types of piping isometrics
that serve as basis for prefabrication or erection (construction isometrics,
spools). When generating an isometric drawing, a 3D pipe model is calculated
in the background. The module works with pipe classes.
All examples and explanations are based on the StandardDB supplied with the
installation CD, example project COMOS_ISO Engineering example.
Licenses
You must have a license for the Isometric module (available from Version
8.2). The license includes all 3D functionalities that are needed to calculate
the 3D pipe model in the background.
As the module works with the Pipe Parts Catalog (PPC), you must also have
a PPC license.
Database
In already existing customer databases, the pipe parts catalog (PPC) must
have been imported.
Pipe classes
With the help of the component catalog included in the pipe parts catalog,
pipe classes should have been prepared. The pipe classes are also managed in
the pipe parts catalog.
The following figure explains the interaction between pipe classes, PPC and
isometric drawings:
Planning procedure
Different planning procedures can be used when creating piping isometrics.
At present, Comos assumes the following planning procedure:
The isometric drawing is created based on the previous planning data, e.g.
using a P&ID diagram and a mounting diagram. Then it is computed. Finally,
it can be viewed in the 3D space.
An alternate planning procedure would be to base the isometric drawing on a
Comos P&ID process flow diagram. In this case, the P&ID objects must have
been linked with the PPC in advance. In the basic planning, the design engi-
neers use P&ID objects that are connected in the background with PPC
objects. The P&ID drawings can then be transported to the 3D space and from
there can be mapped to an isometric drawing. (For detailed information on the
linking between P&ID and PPC, see user documentation FD Interaction bet-
ween P&ID and PPC, P&ID and 3D.)
Project properties
The following settings must be made in the planning project:
Tab Links :
– Attribute Project structure : @J| @G Project settings, general
Simplifies the design of the planning structure. On the Unit tab, creates a
structure where category objects are automatically available under the sub
unit, which automate and simplify the management of components.
Category 03 Pipes: Collects all pipes. An isometric drawing is offered in
the mouse context menu of the pipes.
The remaining attributes of the tab need not be set for the planning
procedure described in this documentation.
Tab Module options| Pipe classes/Viper :
– Definition of norm : @3D|@PPC|@Standardization Characteristics
– Definition of pipe classes : @3D|@PPC|@01
– Standard catalogs : @3D|@PPC|@CatStd
– Standard table “Nominal width” : @3D|01|05
– Symbol bar “Pipe class” : @3D|@Menu
– Rating for grid routing : @3D|2|AR|01
If no base object references are entered here in the planning project, the
software automatically takes the values set in the base project. (Please Note:
Since this does not involve inheritance, the references entered in the base
project are not visible in the user interface of the planning project.)
If the structure of the base data differs from the structure of the StandardDB,
other objects must be referenced accordingly.
Miscellaneous
Moreover, the base data must be prepared by the administrator according to
the project requirements.
For detailed information, see SECTION 53.3: REPORT/ DATA SHEET.
The planning on which the isometric drawings are based should have been
completed.
In the P&ID planning and when constructing a piping isometric drawing, you
must work with a three-level pipe structure. This pipe structure was explained
in detail in SECTION 57.2.1: PIPE STRUCTURE.
The base objects of the top two levels are managed under this node.
In SECTION 53.7: PIPE STRUCTURE FOR PIPING ISOMETRICS, you will find information
on the base object of the third level that is used in piping isometric drawings,
as well as isometric-specific deviations as regards the first and second level.
The icon is added to the icon bar. In the isometric drawing, it used to place
those components of the selected pipe class whose function code begins with
the numbers set as Name .
Example:
Function code for general elbows:
21XXX
Usually, many planning projects will use the same pipe classes. Therefore, the
pipe classes are maintained centrally in the base project. If the settings
required in a planning project deviate from the settings in the base project, the
following should be done: Generate a local base object in the planning project
by copying the pipe class used otherwise, then customize this local pipe class
accordingly. Such a local copy can be easily generated through in the Pipe
class management.
For detailed information on the structure of the Pipe class management, see
SECTION 53.8: PIPE CLASS MANAGEMENT.
53.2.2.3.1 Structure
The component catalog is structured according to standard systems:
- | @3D| @PPC| @CTS Part Components
The catalog is divided by component types. For better orientation, e.g. when
working with the Object Debugger, the name structure is based on the func-
tion code of the components.
Example:
Base object @3D| @PPC| @CTS| 1| 54| 55| 1| 01| B| 0010
[][]-Relief valve-DIN 3202/T2-PN 10-St 35.8 I
First of all, naturally from the component symbol itself. Sub symbols are
added to this symbol:
• Symbol for contact faces and connection types
Which symbols are added is defined in the component properties: By means
of the Symbols tab and through specifications on the GD 3D Geometry
tab, to which standard tables are assigned in which, in turn, scripts for
graphic symbols are defined.
Where these sub symbols will be added to the component symbol is
controlled by the component base object – by defining connector points for
the sub symbols.
• optional: tag symbols, e.g. position numbers
• optional: other text variables, e.g. *V*P E:Z (insertion point for the valve
drive).
Connector points
Connector points are defined in the component symbol. The connector points
determine where other symbols will be added – for example, the symbols of
connection types and the contact faces, but also of dimensions.
Following types of connector points are available:
1. Logical connector points: CX[Number]
Purpose: Logical connector points correspond to the connectors in the
planning objects. Each logical connection of a symbol on a report thus has
a counter part in the planning object. Logical connector points are
required when data is to be transferred from one object to another object.
As a rule, the components that are placed on the isometric drawing do not
themselves define logical connectors. Instead, they define placeholder
connectors. The symbols inserted at these placeholder connections then
define logical connectors. (See Example: Blocking valve, P. 53-9.)
Exception: All components (except pipes) must have a logical connector
point for the point of origin (CX0). CXO has no direct equivalent in the
Navigator and is used when setting graphic symbols, e.g. when setting a
dimension.
2. Physical connector points: CP[Number]
Purpose: To define connector points for graphic report elements (e.g.
dimensions). They exist only on the report, not in the Navigator.
Please note: No pipes can be connected to CP connectors.
Are addressed on the isometric drawing with Ctrl or Shift.
3. Placeholder connectors: C#[Number]
These connectors are needed to add additional symbols to the symbol of
the component, e.g. symbols for connection types and contact forms.
If a C# connector on the isometric drawing is not connected, the user can
move it with its grab point. Through that, pipes and elbows can be
extended from their unconnected end:
Note:
All symbols (component, contact face, connection type) must be drawn in
non-rotated presentation (0°).
3. Configure the standard table for connection types
In the StandardDB: |@3D|01|BC|02 Connection types
Scripts for symbols of connection types are stored in this standard table.
If necessary, select the row of the desired connection type and customize its
symbol for the ISO diagram type.
Example: Flanged end connection type:
Point of origin of CP# Point of origin of CX#
• CX#:
Connector point for the secondary component, which is defined through the
connector table and is created when placing the primary component.
4. Base object of the blocking valve: Configure symbol:
Base object of the blocking valve, Symbols tab: Open the Symbol Designer
and design the component symbol for diagram type ISO :
Add connector points at which the connection types and contact faces will be
inserted:
Marked in the above picture: The insertion point (point of origin) of the sym-
bol added via placeholder C#2.
Insert the *V*P text for tag symbol:
Marked in the above picture: The insertion point (point of origin) of the tag
symbol specified by means of the text variable.
Below you can see a schematic overview of the connector points and sub sym-
bols that will be inserted through these points.
Tab GD 3D Geometry :
Specification “VC14 Contact face 1 ”, “VC24 Contact face 2 ”, ...:
The standard table for contact faces must have been assigned to this specifi-
cation (|@3D|01|06 Contact faces). Select the desired contact face.
• Connected components:
• By means of the Connector table of the Pipe class management, it is
determined if connector components are to be created and if yes, which
ones (e.g. gasket and counter flange).
• On the isometric drawing (graphic):
The logical connector points (CX#) defined at the symbol of the
connection types are connected with the logical connector points of the
connected components.
• In the Navigator (database-side):
The connectors (CX1, CX2) prepared atthe base object of the valve will
be joined with the connectors of the connected component.
53.2.2.3.4 Tabs
The components must have specific tabs to support the basic functionality and
extended functions of the isometric drawing.
The required tabs are prepared under:
@3D|@Y Catalog specifications|CHP|PP Tabs Piping and
@3D|@PPC|@Normierung Characteristics
The base objects from the component catalog inherit these catalog tabs. The
inherited attributes are then configured at the base objects.
Provides the component with the 3D geometry. For all 3D-relevant attributes,
the 3D mode must be activated: Properties window of the specification, tab
Link , 3D Mode: On .
The specifications on this tab must be available, so that the 3D model is gen-
erated correctly in the background of the isometric drawing.
Some specifications (nominal diameter, connection type, etc.) are also impor-
tant as regards the pipe class management.
Miscellaneous
• VSTD System standard :
Assigned standard table: @3D|01|NSYS System standards
When switching from one standard system to another one, this specification,
in combination with the |@3D|@PPC|@Normierung node, ensures that the
values of the 3D attributes are converted correctly.
• UseSymbolOnly In the report: only use request symbol :
Not relevant for isometric drawings; only relevant if PPC objects are already
used in the background during the P&ID planning phase. See the
documentation FD Interaction P&ID - PPC - 3D.
• VPCL PCL :
Mandatory field. Assigns the object to a pipe class.
3D mode: On
• VFLG Flange standard system :
3D mode: On
• WMF : Drawing for the component dimensions
Display type: Image selection
3D mode: On
• LAYER Layer
Optional. Determines a group of objects that are displayed and hidden
together in the 3D space. Assigned standard table: @3D|00|Layers Levels.
3D mode: On
• VCOL Color
Optional. Determines the color with which the component is shown in the
3D space.
3D mode: On
• Unified Code :
3D mode: On
The specifications from this group define which base objects are to be used to
generate the tag symbols.
The base objects of the tag symbols are located in branch @ISO|A Tag sym-
bols.
Where the tag symbol will be added on the component symbol is determined
by a *V*P text. (See Anchor points for tag symbols, P. 53-8.)
“SYSISO.IPOS Position no. ”
Generation:
The position number can be set manually (usually on the base data) or by the
system (in the report template: PositionNrAutoOn = TRUE). More on this in
SECTION 53.2.3.1.4: “...| 01 SEAL”, “...| 06 POSITION NUMBER”, “...| 09 WELDING POINT”.
Can also contain the value of the specification VDM.N.N4 BTRN (see
SECTION 53.2.2.3.9: “VDM DATA SHEET”).
Example:
@3D|@PPC|@CTS|1|21|1|01 WeldElbows:
SYSISO.DIM3 : -0-
SYSISO.DIM4 : P1-0-P2
If these specifications are missing or are blank, the anchor points are set in
dependence on the connection types (see SECTION 53.2.4.2: “|@3D|01|BC|02 CON-
NECTION TYPES”).
The StandardDB is configured in such a way that the tag symbols for
position numbers, welding points and gaskets can be created via the mouse
menu. The mouse menu can be extended so that the other tag symbols can
be created with it as well.
In the symbol of the allocated component, a text variable is used to specify
where in the component symbol the tag symbol will be added. If this variable
is missing, the tag symbol is always placed at the center. (See Anchor points for
tag symbols, P. 53-8.)
The tag symbol remains connected with the symbol of its component. When
the component is moved, it will be moved along with it.
Is not available in the StandardDB in the mouse context menu of the isometric
drawingsometric drawing. Must be created manually. Can only be placed on
pipes.
The following pages explain how to configure the base object of the spool
mark.
Working with spool marks on the isometric drawing and interaction between
isometric drawing and spool documents are described in SECTION 53.6: SPOOLS.
“General” tab
Class : Data set
Subclass : None
Effect:
The spool mark is created only as report element, not in the Navigator.
“Symbols” tab
In the StandardDB, a symbol is prepared for a spool mark for the ISO drawing
type.
The symbol is always added at the physical connection points (CP connectors)
of the components defined as start and end component.
“Symbols” tab
ISO drawing type: Define a symbol for the check object. Insert any text vari-
ables that display more exact information on the object with which the check
object will be linked.
The Isometric module uses standard tables from the following branches:
• |@SYSTEM:
The tables from this branch must not be deleted, extended or changed.
• |@3D 3D/ISO Catalog:
The tables here must not be deleted. However, some can be extended.
The standard tables that are of special significance for the Isometric module
are described in the following chapters.
53.2.4.5 “@SYSTEM|@NORTHARROWANGLE”
Determines the angle of the north arrow on an isometric drawing.
Column Value1 :
The value that is used internally.
The standard table is assigned to the base object of the isometric drawing,
SYSISO tab, NA_ANGLE specification.
53.2.4.6 “@SYSTEM|SLOPEINPUTTYPE”
Defines the following three types of slope details: Percentage, Degree, Ratio
Columns Name , Description , Value1 : Used internally by the system.
The standard table is assigned to the properties of the isometric drawing ,
SYSISO tab, SLOPEINPUTTYPE Type of slant input specification.
Construction isometrics and spool isometrics use the same report template in
the StandardDB:
Base project, Documents tab:
CRp|@ISO|PISO.3 Isometric DIN A3.
Tabs
See SECTION 53.2.3.5: “|@ISO|O|ISO DOCUMENTS”.
Application
Application = ISO
Enables the basic functions.
D3toIsoAutoOn
D3toIsoAutoOn = TRUE
Generates an isometric drawing from a 3D drawing. Must be at False, if you
are going from an isometric drawing to 3D.
SymbolType
SymbolType = “ISO”
Sets the diagram type.
IsoEnabled
IsoEnabled= TRUE
Switches the Connection tool to the technology required for the isometric
drawings.
SymbolRotationByDimension
Initial situation:
Mark a dimension by right-clicking twice. Its grab points will be displayed.
At the same time, the dimensions and components framed by it will be
marked.
SymbolRotationByDimension = TRUE
If you change the alignment of the selected dimension with its round green
grab points, this also changes the alignment of all symbols for which the fol-
lowing applies:
• the symbols are framed by the selected dimension (components and
dimensions) and
• the symbols have the same alignment as the selected dimension.
Use the round gray grab point, to only rotate the originally selected dimen-
sion.
SymbolRotationByDimension = FALSE
DimLevels
Evaluated when generating dimensions automatically (mouse context menu
of the isometric drawing: |DIMENSIONS|CREATE|...).
Standard configuration in the DB:
Dim DimLevels(3)
DimLevels(0)="SYSISO.Dim" & "|" &"1;2"
DimLevels(1)="SYSISO.Dim" & "|" &"3"
DimLevels(2)="SYSISO.Dim" & "|" &"4;5"
MainDimensionAutoOff
MainDimensionAutoOff = TRUE
If False:
The dimension types assigned to the dimension level 1 are created automati-
cally when drawing the pipes (in the StandardDB: length of pipe, space offset
dimension, coordinate tags).
DimensionTextHeight
DimensionTextHeight = 4.0
PositionNrAutoOn
Is evaluated when the following tag symbols are generated on the construction
isometric drawing via the mouse context menu (these tags all read the position
numbers of their component):
@ISO|A|01 Seal, ...|06 Position number and ...|09 Welding point
If the compression key is activated, components with the same key receive
the identical position numbers. See BOMCompressionKeys, P. 53-32.
• PositionNrAutoOn = FALSE:
(Default)
The position numbers are issued by the user (either in dependence on the
nominal diameter, or the same number for all nominal diameters).
For detailed information on the tag symbols see SECTION 53.2.3.1.4: “...| 01 SEAL”,
“...| 06 POSITION NUMBER”, “...| 09 WELDING POINT”.
PositionDefaultStartNr
Start number for the automatic generation of position numbers (Default = 1).
Is equal for all number ranges (tag symbols for position numbers, welding
points and seals).
PositionDefaultStep
The increment for the automatic generation of position numbers (Default = 1).
Is equal for all number ranges.
PositionIsMissingAliasNr
Number that is entered in the bill of material if a component does not have a
position number. (e.g. -999)
BOMCompressionKeys
Defines a compression key for the bill of material entries. That is, components
that have identical values in the specifications defined here, will be summed
up in one row in the bill of material.
If PositionNrAutoOn = TRUE, the compression key can also have effects on
the automatic generation of position numbers (see below).
In the options script, the following compression keys are already preconfig-
ured:
• Pipe class, nominal diameter and designation:
Dim BOMCompressionKeys(3)
BOMCompressionKeys(0) = "GD.VPCL|VALUE" ' Pipe class
BOMCompressionKeys(1) = "GD.VC11|VALUE" ' Nominal diameter
BOMCompressionKeys(2) = "VTX.VST03|MEMO" ' Designation
GraficalTexts
The script below controls:
• Which tag symbols are offered in the mouse context menu of the isometric
drawing.
• When one of the mouse menus is called: Which specification of the
components will be evaluated to determine the base object of the tag
symbol.
• Which label the report element of the tag symbol receives for system
internal usage.
Dim GraficalTexts(5)
Construction isometrics
The following topics are described in the Quickstart Isometric documenta-
tion:
• Create an isometric
• Structure of an isometric drawing:
Menus, Construction are, Bill of material, Drawing header
• Draw pipe run:
Preparatory steps/preferred components, draw in axis direction and in
special direction, set branch
• Place components:
Preparations/preferred components, eccentric components, fittings, branch
components, special components, connection components
• Enter component data
• Dimensions:
Dimension types, dimension levels, manually or automatically create
dimensions, fully define isometric drawings, calculate the isometric
drawing
Spool documents
See SECTION 53.6: SPOOLS.
In the StandardDB, the report template is configured in such a way that a bill
of material is automatically shown on the isometric drawingsometric drawing.
The structure of the bill of material varies depending on the configuration of
the report template.
The bill of material contains all bill of material relevant components that were
placed on the isometric drawing.
“Pos” column
This column reads the position number stored at the component in
SYSISO.IPOS.
If the position number is blank, the error number entered in the option script
is mapped (PositionIsMissingAliasNr).
This also applies if in the options script, the PositionNrAutoOn variable is at
TRUE. Thus, updating the bill of material does not lead to generation of a posi-
tion number for components that still have no position number.
“Quantity” column
Shows the number of components. If no compression key is activated, “1” is
always entered here.
For pipes: Reads the pipe length from the GD tab. If the compression key is
activated, the length of the pipes summed up in one row are be added up.
“Designation” column
The text entered at the components in the VTX.VST03 Designation text
specification appears here. This specification will usually be set in the base
project by the base data administrator, generally using TValue calculation for-
mulae.
These formulae dynamically compute the values of specifications that are s
pecified only during the construction phase (e.g. the nominal pipe size of a
pipe or the construction angle of a pipe bend). These formulae are then eval-
uated in the planning project.
Compression key
In the options script of the report template, you can determine which specifi-
cations to use as compression keys. All components that have the same values
for these specifications will then be summed up in one row in the bill of mate-
rial (e.g. pipe class, nominal diameter and bill of material designation). The
bill of material becomes shorter and clearer.
53.4 Slope
Definition
A pipe with slope is a pipe in X/Y direction with such a slight inclina-
tion/slope in the Z-axis that it still classified as a horizontal pipe, and not as a
pipe drawn in a special direction.
• Direction of slope:
Is indicated by an arrow. The slope is always shown at that end of the
dimension line into which the slope goes.
The dimension was created with the mouse context menu:
Direction of slope is the same as the pipe construction direction.
The dimension was created manually:
Direction of slope is the same as the dimension construction direction.
• Value of slope.
As initial value “0” is entered (no slope).
• A text field G is shown in the menu bar of the isometric drawing. Enter the
slope and confirm with [!]:
• The length of the dimension is not changed by the slope, as the dimension
is a projection onto the pipe level.
The concrete value of the slope must be entered separately for each dimen-
sion:
• Select dimension.
• Enter the slope value and confirm with [!].
Maximum value (not parameterizable):
Percentage: 17.632 %
Degree: 9,999 °
Ratio: 17,632/100
• The new value is shown next to the old one:
0%->10%
Direction change:
• Select dimension
• Enter the new value and place a minus sign before the value (e.g. “-5”).
Confirm with [!]:
• The slope direction is turned around. I.e. the arrow now points in the other
direction and the slope is displayed at the other end of the dimension.
To clarify that the old value had another direction, a minus sign is placed
before the old value.
• On calculating the isometric drawing, the new value is written to the
dimension:
53.5.1 Overview
The tag symbols with the following base objects all read the position number
of their component:
• @ISO|A|01 Seals
• ...|06 Position number
• ...|09 Welding point
This is done in the symbol of the tag object, by evaluating the following text
variable:
%N ComosDevSpec('SYSISO', 'IPOS', 'displayvalue')%
When the tag symbols are generated via the mouse context menu, they are cre-
ated for the following components:
• ...|06 Position number:
Is generated for all components that are placed on the isometric drawing,
have a DocObj in the Navigator and are bill of material relevant. Following
components thus get no tag:
• Components that were set to not bill of material relevant.
• Some components that, on placing another component, were
automatically created with it through the connector table.
Example:
A flange is placed on a pipe on the isometric drawing, both components
have a butt weld end as connection type. The pipe class is configured in
such a way that the pipe and the flange are linked with one another
through a welding.
Result: The welding is created in the Navigator under the flange, but
receives no independent DocObj, rather hangs on to the DocObj of the
flange. (It is selected automatically with the flange) The welding receives
no tag symbol with the base object 06 Position number.
• A separate number range is managed for the three tag symbols. However,
all number ranges use the same rules for generating the numbers, i.e. they
have the same start number and increment (see PositionDefaultStartNr, P. 53-32
and PositionDefaultStep, P. 53-32).
• The component from the beginning/end of a pipe run was selected when
calling the context menu:
The components of the complete pipe run are numbered, beginning with the
selected component. Branches are excluded.
• A component connected to a branch component was selected when calling
the context menu:
Only that part of the pipe run that is between this component and the
beginning/end of the pipe branch is numbered (away from the branch).
• No component selected (context menu is called for the isometric drawing):
all the components on the isometric drawing are numbered.
• The same applies to automatic deletion (mouse context menu |LABELING
SYMBOLS|DELETE|...).
• If the compression key is activated, components with the same key receive
the same position number. (See SECTION 53.5.3.2: COMPRESSION KEY.)
manual:
• Report template: PositionNrAutoOn = FALSE
• The user enters the number at the component assigned to the tag symbol
(into the specification SYSISO.IPOS). Usually, this will be done in the base
data.
Special case:
The position number is issued manually, but depending on the nominal diam-
eter.
Prerequisites:
• PositionNrAutoOn = FALSE
• Component properties, VDM Data sheet tab: In the nominal pipe size
dependent table (specification V ), a component number is entered for the
nominal pipe size currently selected at the device (N4 BTNR column).
• Base object of ...|06 Position number, tab Scripts: USerScriptBlock1
The SetPositionNr()function provided in the StandardDB is available.
The script evaluates the component number that is entered for the current
nominal pipe size at the allocated component and writes it into the
SYSIOS.IPOS specification:
'stop
If s <> "" Then
specName = "SYSISO.IPOS" ' Get spec for position number
Set sp = Device.spec(SpecName)
sp.Value = Clng(s) ' Place the position number on Spec
End If
End Sub
• Exception:
The compression key can be disabled for individual tag symbols. See
Deactivating compression for individual base objects, P. 53-44 .
As not all combinations are practical when configuring the position number,
some recommendations here.
PositionNrAutoOn = TRUE:
• Case 1:
• Report template: BOMCompressionKey:
Pipe class, nominal pipe size and designation set as compression key.
• To keep the example simple, it is assumed that all placed component
groups have the same pipe class, nominal pipe size and designation
respectively.
• Base objects of tag symbols ...|01, ...|06, ...|09:
ISO ISO tab, specification BOMKEYENABLED = True
Result:
• ...|01: all gaskets: 1
• ...|09: all welding points: 1
• ...|06: all pipes: 1, all bends: 2, all T-pieces: 3, ...
• Case 2:
• Report template: BOMCompressionKey:
Pipe class, nominal pipe size and designation set as compression key.
• It is assumed that all placed component groups have the same pipe class,
nominal pipe size and designation respectively.
• Base objects of tag symbols ...|01, ...|09:
ISO ISO tab, specification BOMKEYENABLED = FALSE
• Base object of tag symbol ...|06:
ISO ISO tab, specification BOMKEYENABLED = TRUE
Result:
• ...|01: first gasket: 1, next gasket: 2, ...
• ...|09: first welding point: 1, next welding point: 2, ...
• ...|06: all pipes: 1, all bends: 2, all T-pieces: 3, ...
• Variations for case 2:
Like case 2, but only ...|01, only ...|06 or only ...|09 excluded from
compression. Or the compression is deactivated completely.
PositionNrAutoOn = FALSE:
• Case 3:
• Report template: BOMCompressionKey:
SYSISO.IPOS as compression key.
53.6 Spools
Purpose
Spool documents are derived from construction isometrics. They divide a
construction isometric drawingsometric drawing into fabrication units. The
units can then be given to service providers for implementation.
The construction isometric drawing remains the quality-relevant construction
document. It must be fully completed (i.e. fully calculated) and is locked
when generating the first spool mark.
Note:
Technically, through detours, it is possible to make certain changes even after
generating the spool marks. Therefore, it is recommended to stick to the work-
flow described in this documentation and not to use all functions offered in
Comos (e.g. don’t use | UNLOCK mouse context menu).
Before generating a spool document, you create spool marks that define for
which area of the construction isometric document the spool applies.
Starting with the selected component, Comos begins to search for the next
stop components, i.e. for the components whose function code is included in
ISO.FunctionCodeRanges:
Name
Generated automatically: “S[counter]”. Can be changed, but must be unique.
Is used as name of the relevant spool document.
Description
Can be selected freely. Is saved as Description 2 of the relevant spool docu-
ment.
After saving with [OK], the spool marks will be displayed on the diagram.
They always point in the direction of their allocated connector (i.e. from the
connector to the centre of the component).
A message box opens in which the user must explicitly confirm the generation
of the marks (or cancel it).
Example
The command |SPOOL|SET SPOOL MARK is called for a pipe. The inlet of the pipe
is not linked, the outlet is connected to a flange.
In the base object of the spool mark, flanges are defined as stop objects:
The mark can be connected with any component. Limitations on the function
codes that exist during the automatic creation via the mouse context menu are
lifted.
Intersections with other fabrication units are identified and prevented auto-
matically.
If the spool marks are moved manually, it can happen that a mark no longer
points in the right direction. The direction can be rotated by means of the
mouse context menu of the mark (see next chapter).
|SPOOL|...
• ...|DELETE
The spool pair is deleted. If there is a spool document for the marks, it is
likewise deleted.
In addition, the fabrication drawings of the components placed on the spool
document are deleted. (To be more precise: All documents that are located
beneath these components and that have the same report template as the one
referenced at the base object of the mark in the ISO.FTZ_TEMPLATE
specification.)
• ...|CREATE DOCUMENT
A spool document is created under the construction isometric drawing.
Document properties: see SECTION 53.6.2.2: PROPERTIES OF THE SPOOL DOCUMENT.
• ...|ROTATE MARK
Is called after manually moving the mark so that it no longer points in the
right direction.
The specification ISO.REFLECT_ALLOWED must be activated at the
base object.
• ...|HIGHLIGHT
The components placed on the spool document are marked yellow. Helps in
checking.
• ...|PROPERTIES
The properties of marks (Name, Description) will be opened.
For administration of the base object see SECTION 53.2.3.5: “|@ISO|O|ISO DOCU-
MENTS”.
Report template:
As specified at the base object of the mark in the ISO.SpoolDocTemplate
specification.
In the StandardDB: The same report template as for the construction isometric
drawing (|CRp|@ISO|PISO.3 Isometrie DIN A4).
Name :
Same name as the mark
Description :
Same description as of the report template.
Description 2 :
Same description as of the marks.
The spool document is blocked. I.e. no construction relevant changes can be
made.
However, with the tools of the menu bar, you can place free text and free
graphics to place comments.
Example: Bend
Length for the second leg of a bend: from CX0 to CX2 -> the bend must have
a specification FT.PL2 . In the menu bar, the PL2 field is offered:
In the field, enter the adjusting length for the leg and confirm the value with
[!].
Permitted values: >0 and 0
• Value >0:
On the spool document, the adjusting length is written to the dimension in
following notation: <Length>PL=<adjusting length>
• Value “0”:
No adjusting length set; the old adjusting length is deleted
Inserting comments
Use the tools for free text and free graphics to add comments on the document
(from the menu bar of the spool document: Icons for [LINE], [ARC], [TEXT]).
Automatic creation
Prerequisites:
• At the base object of the spool mark, the specification
“ISO.AUTO_MANUFACTORING Create production drawing
automatically ” must be activated.
• At the base object of the spool mark, a reference to a document group must
be entered:
Specification “ISO.FTZ_TEMPLATE Template for installation
diagram ”.
All templates benath that document group are rated as fabrication drawing.
When opening a spool document for the first time, Comos checks for all com-
ponents placed on the spool whether there is a fabrication drawing under their
base objects.
If such a document is found, it is automatically copied beneath the component
in the planning view.
For administration of specifications see SECTION 53.2.3.3: “|@ISO|C SPOOL SYM-
BOLS”.
Manual creation
In the Navigator, from the mouse context menu of the component.
Automatic deletion
When you delete the spool document or the spool marks, all fabrication draw-
ings of the components placed on this spool are deleted as well.
Level 1
The pipe object of level 1 must be created manually. It is not created automat-
ically when using the Connection tool.
Generally, you proceed as follows:
First create the pipe object, then, beneath it, the isometric drawing.
If required, the isometric drawing can also be created beneath another owner.
The pipe object must still be created manually (also possible in the Select
owner dialog window that pops up when creating a new pipe run with the
Connection tool).
Level 2
The pipe branches must be generated manually (in the Select owner dialog
window).
They are not created automatically when drawing with the Connection tool.
As a rule, you will create a separate pipe branch for each pipe run that you
draw on the isometric drawing.
However, the pipe branches are never placed on an isometric drawing! They
are merely used as owners of the concrete pipes and placed components gen-
erated while drawing. See Level 3, P. 53-56.
Level 3
If you are working with the Connection tool on an isometric drawing, concrete
objects are generated: pipe bends, welded, flanged or screwed on pipes etc.
These concrete objects are the counterparts of the abstract segments from the
P&ID drawings. They, too, must have a pipe branch as owner.
As only concrete pipes are generated while drawing the pipe run, the user
must explicitly determine which pipe branch to set as owner. To do that, the
Select owner dialog window opens automatically.
If necessary, the pipe branch can also be created in the dialog window (under
the pipe object under which the isometric drawing is located).
The base objects of these concrete objects come from the PPC:
@3D|@PPC|@CTS|1|10 pipe.
53.8.1 Opening the Pipe class management and selecting a pipe class
In the latter case, the Load pipe class dialog opens first.
Depending on the project requirement, here either select a pipe class created
in the base project, or a pipe class created locally in the planning project:
The local pipe class is usually a copy of a pipe class from the base project, cus-
tomized to the special requirements of the project.
2. Tab Engineering project : Select the @01 node and call the | PASTE mouse
context menu.
A local base object is generated, which is a copy of the base project pipe
class.
The upper part of the dialog shows which pipe class is selected. You can
switch between pipe classes any time (with the [...] button or using
Drag&Drop from the Navigator).
In the lower part of the dialog, there are several tabs that define the pipe class
properties.
On this tab, you see which components are included in the pipe class and in
which nominal pipe size range the components are available. Within one pipe
class there are usually several components of the same type that have been
defined for the same nominal pipe size:
Setting branch components for several pipe nominal size combinations at the
same time
To assign values for several combinations of nominal pipe sizes in one step,
press down the left mouse button and drag it over the cells you want to change.
The cells are selcted. Then right-click and select the desired branch compo-
nent from the mouse menu.
A dialog opens where you can assign the letters and colors:
Default branch
If no branch is determined for one of the nominal pipe size combinations,
Comos places a t-piece and the connector components of the t-piece defined
in the connector table.
In pipe class Beispiel (Engl: Example), the list of special components speci-
fies that weld neck flanges are to be connected to the butt weld ends of each
t-piece starting with function code 711. Not only the component type is spec-
ified, but also the exact weld neck flange base object:
The weld neck flange entered in the StandardDB in the lower list has a butt
weld end as connection type and a flange end with the contact face E.
When you place the T-piece on the pipe, Comos first checks if secondary
components are entered for the T-piece in the lower connector table. As the
function code of the placed T-piece begins with 711, this is the case.
Then, Comos checks the connection types of all participating components.
With the help of the upper connector table, Comos then determines which
other secondary components need to be created.
The following steps are carried out when the the tee is connected to the pipe
through its first inlet:
– Check T-piece:
Inlet 1 has a butt weld end as connection type. A weld-neck flange (=
weld-neck flange_1) is to be connected to the inlet.
– Check weld-neck flange_1:
The inlet has a flanged end with form C, and the outlet has a butt weld end.
The exact base object of the weld-neck flange is specified by the lower
connector table.
– Check the pipe: has a butt weld end as the outlet.
– The following connection types meet:
• Butt weld end (t-piece) – butt weld end (weld-neck flange_1)
Result: create weld (welding_1) -> current preferred component used
• Butt weld end (pipe) – flanged end form C (weld-neck flange_1)
Result:
Create counter-flange (weld-neck flange_2) -> current preferred
component used
• Join weld-neck flange_2 with weld-neck flange_1:
Flanged end, form C (weld neck flange_1) – flanged end, form C (weld-
neck flange_2)
Result:
Create flat gasket -> preferred component used
Butt weld end (weld-neck flange_2) – butt weld end (pipe)
Result:
Create weld (welding_2) -> preferred component used
The Test tab works together with a query. With the help of the query, you get
a quick overview of whether a component type is included in the pipe class
with a specific nominal width.
Simply select a function code and the nominal pipe size and the pipe class is
searched automatically:
The remaining tabs are defined at the base object of the pipe class, and contain
general information on the pipe class properties.
From the | @3D| @PPC| @01 PipeSpec node, the pipe classes inherit the fol-
lowing tabs:
• C1 Dimension and C2 Use limit : fill as needed.
• C3 Remark : self-explanatory
• GD Geometry :
• GD.VFCD Function Code : Set the Pipe Class entry.
• GD.CPIPEOWNER Base object for pipe and
GF.CSTREAM Base object for pipe branch :
The pipes and pipe bends etc. included in the pipe classes and placed on
the isometric drawing must be located under an owner structure that
corresponds to the Comos pipe structure.
These two attributes can define other base objects for the first and second
level of the pipe structure, than what is defined in the project properties
(on the Module options | Process engineering tab).
As default, the same base objects are entered here as in the project
properties of the base project.
54 Overview Comos PT
SECTION 55: CROSS-MODULE PT TOOLS
55 Cross-module PT tools
The result is that all the signals that are in the tree structure underneath this
object are displayed:
The dialog elements in the command area have the following meanings:
Name A new name can be input here.
Label A new label can be input here.
Descr. A new description can be input here.
In/Out Changes the input/output variant of the signal.
Dropdown list A signal type can be selected from the drop-down list.
change Changes the signal by setting the values specified in
the command area.
Example: Cards with channels are to be used in the cabinet layout. The chan-
nels are created on the cards on the Elements tab.
The Create mode of the cabinet has been set to Elements .
The Virtual mode of the elements (of the cards) has been set to Off .
Application:
Drag a planning object into the Under object field.
Objects appear in the lower list if there are more checked-in elements within
the planning object than the base object had provided for.
Mark one or more objects and right-click on them.
| ALLOCATE AUTOMATICALLY
If this is possible, the channels of other cards are allocated.
| CREATE UNDER NEW OWNER
A new card planning object is created and the marked channels are allocated.
Any existing implementations are retained.
56 Interfaces PT
56.3.1 Scope
In Comos there is an interface to export objects from and import objects to the
Siemens tool “HW Config” (= Hardware Configuration). This includes the
“symbols” of the Simatic project.
This transfer of data also includes the hierarchical structure.
The schematic drawing of the entire system from HW Config and the graphic
illustration of the Simatic objects are not transferred. Comos has its own form
of display for the Simatic objects, which stays close to the form of display
used at the moment in HW Config.
The interface is bidirectional and is based on the command interface (COM
interface). Consequently data transfer is only possible on workstations on
which both Comos and SIMATIC S7 or PCS7 respectively are installed.
Create a Simatic base object. An object such as this would be called “Station”
in HW Config. All the additional selection options for this object can be found
in the context-sensitive mouse menu:
• The cards are in the Analog modules and Digital modules menus.
• The racks and the Profibus parts are in the ZZZ accessories menu.
For that reason the name cannot be chosen freely, since the index in
HW Config follows strict rules, the so-called plausibilty checks. Thus as a
rule a power supply occupies slot 1 and the CPU occupies slot 2 within a sta-
tion.
If there is a difference between the Comos name of the object and the permit-
ted index in HW Config, the object cannot be exported and the export opera-
tion is terminated.
The channels are identified by means of addresses. These addresses are con-
figured in the Properties window of the card on the Addresses tab.
Addresses tab
In HW Config the addresses are managed in blocks of 8 and written with the
notation x.y. Thus y runs from 0 to 7; the next channel is incremented before
the decimal point and starts again from 0. The numbering thus runs 1.0, 1.1,
1.2 ..., 1.7, 2.0, etc.
This notation is also called “byte/bit notation.”
The inputs and outputs are each counted separately.
In Simatic the part before the decimal point (the tens level or the “byte”) can
be set manually. The “start address” is set in this way. This option exists in
Comos as well. The input start and output start input fields are located on
the Addresses tab:
The end addresses of the inputs and outputs are then found automatically.
The relevant input start and output start fields are compared when the
objects are imported or exported. The relevant program generates the actual
channel addresses.
However, in many cases the two fields described above are left blank. In that
case HW Config generates the addresses itself.
Technical implementation
Comos object Module (= card), Addresses tab, input start field
(ADR.AdrIn)
exchanges data bidirectionally with
Simatic object Module, Addresses tab, input start field.
Comos object Channel (element of a card), Addresses tab, output start
field (ADR.AdrOut)
exchanges data bidirectionally with
Simatic object channel, Addresses tab, output start field.
Double-click on the data exchange object. You will see the following inter-
face:
S7 Project
First select into the project that you wish to export the data to by means of the
[...] button:
In the next step you must make a selection in the Station field. There all the
stations in which there is the selected S7 project are offered:
In practice, the project often contains only one station and thus the Station
field can be ignored, since this one (and only) station is input anyway.
Alternatively, you can also create a new S7 station by means of the [NEW] but-
ton. The new station is available in HW Config after it has been created.
If you had created a new S7 project in the previous step, you have to create a
new station at this point, since new projects are empty.
Last of all, mouse-click on the [EXPORT CONFIGURATION] button. A progress
bar appears. All the information on the export operation is shown on the PRO-
TOCOL tab:
All messages arising from the export operation are shown if it did not run
without problems or errors. Section SECTION 56.3.8: TECHNICAL BACKGROUND
describes a number of typical application errors that would prevent an export
operation from running properly.
Please note: Both the part number (SECTION 56.3.8.2: ALLOCATION OF COMOS PLAN-
NING OBJECTS AND S7 OBJECTS) and the S7 class of the objects must be set for the
export operation(SECTION 56.3.8.3: EXPORTING COMOS PLANNING OBJECTS (ALLOCATE
S7 OBJECT CLASS)). HW Config expects both pieces of information. The corre-
sponding details have already been prepared beforehand in the base data in the
Release database from Comos.
Create a data transfer object under a S7 base object if there is not one already.
Open the data transfer object.
Mouse-click on the [IMPORT CONFIGURATION] button.
The details as to what actions took place while the import operation was run-
ning are given on the PROTOCOL tab.
[SYMBOL EDITOR]
Opens the Siemens Symbol Editor tool and loads the list of symbols for the
Simatic project.
Please note: The term “symbols” is used in Simatic with a different meaning
from when it is used within Comos. “Symbols” are a symbol for an address.
For that reason we also speak of symbolic addresses instead of “symbols”
within Comos. See SECTION 56.3.3.3: CARDS (ASSEMBLIES) regarding symbolic
addresses.
[HW CONFIG]
Opens the Siemens HW Config tool and loads the project
The data exchange object must later be located in the planning data under-
neath the object of the Simatic station.
This field controls what sort of S7 object is involved. If you are using the cur-
rent Release database from Comos, this field has already been set correctly. It
may be necessary to set a corrected value in older databases. The correct value
should be set in the base data and then it should no longer be possible to set it
in the planning data.
Please note: When exporting from Comos, the order / part number must be set
as well as the S7 class, as described in the next section.
Technical implementation
Comos object channel, general field Description
exchanges data bidirectionally with
Simatic object Symbol, Comment column.
No comments
Special case when importing Simatic objects into Comos: If the Comment
column of the Simatic symbol is blank, then the text from the Symbol column
is written into the Comos Description field.
In other words: If the Comment field is blank, then the general rule from sec-
tion Comos description for HW Config name, P. 56-8 is used accordingly instead. (In
this case the texts in the Comos Description field and in the Comos
Symb.address field are identical.)
57 P&ID module
All the devices included in this node possess specific basic properties that are
explained in the section SECTION 57.1.1.1: BASIC STRUCTURES PI|PI EN.
In addition, there are objects that bring in additional properties and capabili-
ties. These special objects are described individually in the following sec-
tions.
57.1.1.1.1 Labeling
The sorting does not directly comply with the standard, but instead attempts
to offer the most important departments of 26004 and 2401. In other words,
the catalog in PI does not make up a closed labeling system that can be used
at once.
In addition, most of the base objects possess ID characters in compliance with
the standards 26004 and ISO 10628. (Formerly: DIN 28004/DIN2481)
57.1.1.1.2 Symbol
All simple devices possess one or more symbols on the Symbols tab. As a
rule, diagram types “RI ”, “RI1 ” and “RI2 ” are provided with symbols:
Text symbol
Many of the @1RI branches already possess a “text symbol” at the topmost
level.
This text symbol is inherited by all lower base objects but it is not evaluated
in all base objects. It is only evaluated for those base objects that call up the
text symbol by means of *V* P Textpkt1*. Otherwise see SECTION 45.4.2.1:
TEXT SYMBOL regarding the technical side of text symbols.
Layer “10” is any desired number and is only used to bundle specific items of
information. Any other layer that is desired could also be input. Depending on
the individual data structure, it is necessary to take care that you do not acci-
dentally use a layer here that is to be used in some other way.
Header “e72” is any desired description and is only used to bundle specific
items of information. Any other layer that is desired could also be input. But
please note that certain headers are reserved for internal system use. Thus, for
example, Header.Class = “eZ” means that the text cannot be moved.
Standardfall
Objekt1
The “target attributes” of the substance
Objekt2
data search via connector I1 for an
object, and from the SD tab of this
SD Stoffdaten SD Stoffdaten object they take the value of the corre-
sponding attribute (operator is “=”).
Spec01 Spec01
statische Verknüpfung
In the standard database linked
attributes are labelled via the connector. A corresponding tooltip appears
when the mouse cursor hovers over an edit field:
When the cursor settle in the edit field and you press F1, then details on
exactly how the link is defined appear in addition.
Measuring functions work somewhat differently in this respect, see
57.4: FUNCTIONS.
SECTION
57.1.1.2.1 All
@1RI catalog P&ID |– @RI-B
Class: Data
These objects do not constitute planning objects but are only to be found on
the report. The objects of this branch belong to pipes and must be placed in
such a way that a connection is made to a pipe.
The menu for pipes is offered in the mouse menu.
01 Pipe break
A base object for a graphic break. Drag the base object onto the pipe (the pipe
turns yellow):
02 Page reference
This allows connections that go across pages to be collected together visually
at one place in the report.
1. Create a page reference on the first report.
2. Create a page reference on the second report.
Thus you do not use an object on two different reports (as you would do
with pipes), but instead each report has its own object page reference.
3. The pipes are connected to the page reference object on each of the
reports. If not enough connection points are visible, you can drag out the
symbol to make it bigger. Do this by single-clicking twice on the symbol
of the page reference. A grab point appears in the bottom right-hand
corner:
57.1.1.2.4 @RISYMBOL
These base objects possess symbols that are called up in the symbols of
@V2 Fittings.
GD Geometry tab
Is only required for 3D mode.
Use nozzles
The nozzle object must be created as an element to allow objects to be pro-
vided with nozzles. Do this by opening the Properties window of the object
(for example, of the vessel) and there check the Elements tab.
Nozzles can be created on the report by one of the two following methods:
• Recommended: Make a connection to the object on the report and then a
dialog window appears. One option in this dialog window is to create a
nozzle.
• Alternative: Select the Navigator in the mouse menu and then drag the
nozzle onto the report. Please note: If a nozzle is created in the Navigator,
then it is always aligned to the right initially. If the nozzle is to point in
another direction, it must first be rotated. Only then can the nozzle be placed
on the object.
57.1.2.1 General
A number of different unit structures have been defined in the standard data-
base. Depending on which project structures had been selected from the prop-
erties of a planning project (Links tab, Project structure attribute), these
unit structures are then made available in the planning view through the | NEW
mouse menu of the project root.
The unit structures are located in the base data under the following branches:
• Installation/ Building/ Production according to EN/DIN:
PI| EN| U| A| 01 Installation/Building/Production
• Installation (AKZ):
@U| AKZ| AKZ01| ?? Plant
The structures according to EN and ANSI follow the usual planning structures
of the chemical industry.
Here are a number of Evaluation Reports. Apart from the signals list (see
SECTION 64.5.1.2.6: “PFPA.1 SIGNAL LIST AND PFPA.2 SIGNAL LIST (HARDWARE)”) this
involves lists whose report templates are located in the base project under
CRp| PI| PPB Device, label lists.
• PI| EN| U| A| 01| 01 Main unit and PI| ANSI| U| A| 01| 01 Main
unit:
P&ID reports can be created in the structures underneath the main unit.
• PI| EN| U| A| 01| 01| 01 sub-unit and PI| ANSI| U| A| 01| 01| 01
sub-unit:
– P&ID reports are created underneath the sub-unit.
– A number of folders (“categories”) are created automatically
underneath the sub-unit when the sub-unit is created.
The EE/I&C Engineering folder is not required until the I&C planning,
as a rule. The positions are created underneath it, and the functions are
created underneath them in turn. All that P&ID planners have to do is to
place the functions on a P&ID diagram: if you then input a function code,
a position is created automatically for the function, and both are moved
into the EE/I&C folder by means of the category function. Compare also
SECTION 57.3.2: CREATING POSITIONS; there is more information on the topic of
the EE/I&C folder in SECTION 64.2.1.1: FOLDER “EE/I&C ENGINEERING”.
– Placement overview “QDev010 objects with DocObj”
This query in the mouse menu of the sub-unit is an example of how you
can collect information.
Class:
The default setting is Pipe , but you can also set it to All, for example.
Start object:
The sub-unit is automatically set as start object.
Placing filter
There is a [PLACING FILTER] in the symbol bar of the query. Here you
should input diagram type RI2 (RI 10628). After that you can switch
between ALL, PLACED and UNPLACED in the placing filter.
Application example: you search through all the objects that have not
been placed yet and distribute them on the reports.
AKZ structure
Folders that inherit from the same base objects as those of the structures
according to EN and ANSI are likewise created automatically underneath
level 6 (@U| AKZ| AKZ31 00 Sequential number).
57.1.3 @P Positions
57.1.4 @F Functions
57.2 Pipes
57.2.1.1 Overview
Comos stipulates a three-level pipe structure. The P&ID module and the Iso-
metric module differ from each other in the third level:
- Pipe
- Pipe branch
- P&ID: Segment, Isometric: concrete pipe object
As a rule, these objects are generated when using the Connection tool in an
Interactive report, and are automatically created in the Navigator in the plan-
ning view.
On placing a component on a pipe run in the diagram, the pipe run is divided,
the details of the devision depending on the settings in the component (See
SECTION 57.2.2: SEPARATING PIPES WITH COMPONENTS.)
Iso structure
Since pipes are normally generated during the P&ID basic planning, the base
objects for the Comos pipe structure are located in the |PI Piping and
instrumentation node in the StandardDB.
Exception:
When constructing pipe runs on an isometrics, the objects that are created at
the third pipe level come from the Pipe parts catalog (|@3D|@PPC|@CTS Part
components).
The following sections explain the pipe structure from the point of view of
P&ID planning. Deviations regarding the construction of pipe isometrics are
described in SECTION 53.7: PIPE STRUCTURE FOR PIPING ISOMETRICS.
In the planning data, the pipe is the owner of the pipe branch. It can contain
as many pipe branches as necessary.
Elements tab:
Objects that are typically created under a pipe should be prepared on this tab.
That is, a pipe branch should be entered as element of the pipe (see
SECTION 57.2.1.3: SECOND LEVEL: PIPE BRANCH). This way even reports (e.g. an Iso-
metric) can be made available in the planning view.
Class : Position
Subclass : Pipe
Creation option : normal
Creation mode : Free
Connectors tab:
An input I1 and output O1 of type P&ID. The connectors must be named I1
and O1!
Elements tab:
A segment must be prepared on this tab to be able to work on P&ID diagrams
(see SECTION 57.2.1.4: THIRD LEVEL: PIPE SEGMENTS (P&ID))!
The pipe branch is generated automatically when you work with the Connec-
tion tool on the P&ID. In the planning view, the pipe branch must be located
under a pipe. If there is no pipe yet, it is created automatically.
Pipe branches remain placed on the diagram until objects of the third pipe
level are created underneath them (for example by placing a component and
thus segmenting the pipe branch, see SECTION 57.2.2: SEPARATING PIPES WITH COM-
PONENTS).
Class : Element
Subclass : Pipe
Creation option : normal
Creation mode : Free
Virtual : N times
Inheritance mode : Active
Connectors tab: See pipe branch
The base object of the segment is entered on the Elements tab of the pipe
branch.
Pipe segments are created when you place a component with the
“SYS.PIA602| Pipe cut mode: Segment separative ” attribute value on a
pipe branch on a P&ID diagram. They are created below the pipe branch and
are connected with the component through their connectors.
Segments are abstract objects that represent a logical view of the pipe.
When working on an isometric, however, Comos does not create segments on
the third level of the pipe structure, but concrete pipes (welded, flanged or
screwed on etc.) and uses other base objects accordingly. See SECTION 53.7: PIPE
STRUCTURE FOR PIPING ISOMETRICS.
When you draw a line on a P&ID diagram with the Connection tool or place
a pipe via the base object icon bar, a pipe object is automatically created in the
Navigator and under this, an object for a pipe branch. The pipe automatically
becomes the owner of the pipe branch. When fittings are placed on the pipe
branch, pipe branch is separated (or “cut”).
The components that are placed on a pipe can have different separation
modes. Depending on the pipe cut mode, new pipes and pipe branches or seg-
ments are created on placing the component:
SYS.PIA602 Pipe cut mode
Possible values:
• Segment separative :
Case 1: The component is placed on a pipe branch; there are no segments
yet.
Effect: Two segments are created under the pipe branch. The component is
connected with the segments through its connectors.
Case 2: The component is placed on a segment.
Effect: A second segment is created. The component is connected with the
segments through its connectors.
• Pipe branch separative :
Parallel to the pipe branch on which the component was placed (or, if the
component was placed on a segment: parallel to pipe branch of that
segment), a second pipe branch is created. This second pipe branch and the
original pipe branch (or the second pipe branch and the segment) are
connected with the component through their connectors.
• Pipe separative :
A second pipe is created parallel to the owner pipe of the pipe
branch/segment on which the component was placed, and under it, a pipe
branch. This second pipe branch and the original pipe branch/ segment are
connected with the component through their connectors.
Redundant segments are automatically deleted. E.g.: If a segmenting compo-
nent is deleted, the segments are deleted as well.
Do not confuse the segmentation / separation of pipes and the so-called “opti-
cal interruption”. The latter refers to the fact that a pipe is optically interrupted
on the report to improve the clarity of the drawing.
Example:
A vertical and horizontal pipe overlap. For the horizontal pipe, call
|OPTIONS|TO FOREGROUND from the mouse context menu.
The vertical pipe is shown interrupted on the diagram, but is not changed in
the database:
57.3 Positions
57.3.1 General
Positions are created in P&ID. They designate positions related to process or
control tasks. The position object serves as the folder, under which functions
and reports are located. In addition, vessels have been created with class Posi-
tion (sub-class Equipment ) in the standard database.
A P&ID position is described by:
• Class: Position
• Sub-class: None
These objects are available in the planning view through the | NEW mouse
menu of the position. However, many of the objects are not required until the
I&C planning. More details on these objects are given in SECTION 64.2.1.2:
“@POSITION”. See also SECTION 57.1.4: @F FUNCTIONS for more information on
functions.
Automatically
Sometimes positions are created automatically by Comos. This is done in the
following cases:
• Placing a function with a function code:
A function is placed directly on a P&ID diagram. (Directly = your base
object is placed on the diagram either by using drag & drop from the
Navigator, Base objects tab, or via the symbol bar; the function is not
created first in the planning view in the Navigator.) Result: The function is
created underneath the diagram.
If you now input a function code into the function, a position of the
corresponding type is created underneath the diagram. The function is
moved to underneath the position.
• Copy all:
All functions on a P&ID diagram that are located under a position are copied
and inserted back on the diagram. The result is that the newly created
functions are created underneath a new position.
(If you only copy a partial quantity, the functions are inserted underneath the
old position.)
• [ASSIGN OBJECT] in mode Define owner :
If you select a function on the P&ID diagram and assign a new owner to it
by means of the [ASSIGN OBJECT] icon button (mode: Define owner ), the
following objects are moved to underneath the new owner:
– the position that the function is located under
– all objects located underneath the position.
If the function had been located directly underneath a P&ID diagram and
did not as yet possess a position, first of all a position is created underneath
the assigned owner and then the function is moved to underneath the
position.
Manually
Positions can also be created manually in the Navigator by using the | NEW
mouse menu of the EE/I&C Engineering folder. See SECTION 57.1.2.2: REPORTS
AND ADMINISTRATION OBJECTS UNDERNEATH THE UNIT STRUCTURE regarding the
EE/I&C Engineering folder.)
The objects that have been predefined underneath the individual positions dif-
fer slightly.
of a position are statically linked with the corresponding attributes of the sub-
unit. These details are required later for selection of the signal. When a posi-
tion is created, all the static links are automatically updated (once only) by
Comos PT.
The attributes on these tabs are relevant in the I&C planning phase. They are
almost purely of an informational nature and do not trigger any automated
functions. See also SECTION 64.2.1.2.2: TABS / ATTRIBUTES.
57.4 Functions
57.4.1 General
The function describes the measurement or actuating task and the processing
function(s) in a position.
• Class : Function
• Sub-class :
• Instrumentation : describes a P&ID function
• Actuator : An object with this Actuator sub-class separates the pipe in
drag & drop.
• Actuator/Insertion : An object with this sub-class segments the pipe.
• Creation mode : free
• Creation option : normal
Functions are not created as a request (System settings tab, Option
Request ), this means that they are not implemented later. However, they
contain elements that can be created with the Request option.
In Comos the following four methods define a function in greater detail:
• The display of its symbol
• Measurement function: the function code (type of measurement function),
which leads to a base object change
• the number of process connectors, and
You can find the functions underneath the @F Function node in the Comos
standard database. The following functions have been predefined under this
node for the following standards:
• ... | A1 Functions acc. to EN/DIN
| 01 Measurement functions
| 02 Actuating functions
See SECTION 64.2.1.3: “@F FUNCTIONS” for more information on functions and the
objects to be created underneath them.
A measurement function with this base object does not initially possess any
function code. If it is placed on the diagram and connected with the process,
it is not given a process connector (and hence also no new tabs), as is the case
with the measurement functions of the levels underneath it.
If you input a function code, a change of base object takes place from this
level onwards. If the function had been connected with the process before the
function code was input, it furthermore gets a process connector afterwards.
See also SECTION 57.4.5.1: CREATING A PROCESS CONNECTOR.
The objects in branch @F| A1 Functions acc. to EN/DIN comply with
DIN 19227.
On this level of the unit structur according to KKS you can find a structure
that improves the bundling of the underlying measurement functions.
Actuating functions:
Concrete actuating functions (2-port valve, 3-port valve, etc.) are offered.
tion.
The attributes of the tab originally come from branch ET | Y Attributes
catalog | 0 Attribute collection | 01 System.
On the other hand, you can also select the function on the P&ID diagram and
set it by means of the mouse menu.
See Additional text variables, P. 57-39 for a more detailed description of the func-
tioning of the optional attributes.
In the standard database the tab originally comes from the following collec-
tion of tabs:
@F Functions | Y Attributes catalog| 1 Tab collection
| RI PI Presentation | 01 PI Presentation Measurement function
| RI Presentation and ...| 02 PI Presentation |RI Presentation for
ANSI functions respectively and ...| 03 PI Presentation Actuating
function | RI Presentation.
57.4.3.3 “IC110 Function data measuring point” and “IC110 Function data
actuating point” tabs
These tabs exist in functions from the base object level @F| A <number>
| 01 Measurement function and ...| 02 Actuating function onwards.
The most important attributes of this tab are:
• ICF100 Function : Identifies which function is involved. The specification
returns the Displayvalue or nothing, if no value has been set.
• ICF102 Output and handling and ICF101 Process with : Saves the
graphical settings of the symbol. Alternatively, this can also be set in the
P&ID diagram through the | GRAPHICAL SETTINGS context-sensitive mouse
menu. Compare SECTION 57.4.8: DISPLAY ON THE DIAGRAM and SECTION 57.4.3.2: “RI
PRESENTATION” TAB.
Fill in the other attributes on the basis of your technical knowledge. In addi-
tion, the tab also shows a number of attributes that cannot be changed; these
are given as background information.
Fewer attributes have been predefined in the actuating functions than is the
case with the measurement functions.
In the standard database the tab originally comes from the following collec-
tion of tabs:
@F Functions | Y Attributes catalog| 1 Tab collection
| IC110/210 Functions (F)| IC110 Function data| 02 Measuring
point| IC110 Function data measuring point and ...| 03 Actuating
point| IC110 Function data actuating point respectively.
57.4.3.4.1 General
These tabs are only created when the function is given a process connector.
See SECTION 57.4.5.1: CREATING A PROCESS CONNECTOR.
The number of process connectors controls how many tabs for substance data
and how many process connectors the function possesses.
Since in the course of actual planning work the substance data is input in the
P&ID stage, the base data is created in the PI branch:
| PI | Y P&ID Catalog attributes | D Catalog | 02 PI catalog
tabs| PI010 Substance data | 13 Substance data measurement
function| PI010
In the standard database the tab originally comes from the following node:
• 4-way valve
Process connector P1(P+)
Process connector P2(P-)
Process connector P3
Process connector P4
Here P+ stands for the inlet and P- for the outlet. The number of these tabs is
fixed and cannot be increased, unlike with the other measurement functions.
Regarding the actuating function, the function code has a purely informa-
tional character. There is no change of base object.
You can tell from the E&IC Options tab of the position or subunit whether or
not alarms with +/- or H/L are to be input. (No automatic mechanisms in the
event of discrepancies, see “E&IC options”: attributes “EMS102 H,L” and “EMS103
+,-”, P. 57-20.)
The tabs store information on the process connector. To a certain extent this
information is obtained automatically, through a controlled transfer of data
(see SECTION 57.4.5.2: DATA FLOW).
How many of these these tabs a function exactly possess, depends on how
many times it is connected with the process.
Actuating function:
The tabs are generated directly upon creation of the planning object in the
Navigator. The number of tabs depends on the concrete actuating function and
is strictly defined for this.
Measurement function:
The measuement function must have a function code, else the process connec-
tor cannot be created. In contrast to the creation process for actuating func-
tions, the user must “initiate” the creation of the tabs by connecting the
function with the process on the diagram or else by incrementing the number
of process connectors through its Properties window. See also SECTION 57.4.5.6:
NUMBER OF PROCESS CONNECTORS. The number of tabs is fixed in the case of mea-
surement functions with an inline device, but is variable for measurement
functions with a nozzle.
See SECTION 57.4.3.4: “PI01X SUBSTANCE DATA” AND “IC22X PROCESS CONNECTOR” TABS
and SECTION 57.4.3.5: 'PROCESS CONNECTION DATA” TAB for more information
regarding the tabs.
3. Right-click in a free area of the tab and select the | UPDATE STATIC LINK
menu.
4. The attributes match again and the attribute fields are switched back to
white.
It is, of course, not absolutely necessary that the data is transferred one to one.
You can also enter your own values; discrepancy with respect to the data in
the process coupling will then be indicated by means of the orange switching.
The flow of data is done at the attribute level. Please note: This involves two
attributes, in which only the contents are matched/compared!
The units of the linked attributes do not need to match one another. The values
are converted automatically.
Once the nozzle has been updated, the orange switching also appears in the
measuring function.
Used with:
All measuring functions except flow measurements (“F”)
Please note: Nozzles are created in the unit structure underneath the pipe
branch, not below the function.
The automatic creation of the process coupling can also be set separately for
measurement functions and actuating functions:
• Only for the creation of measurement functions:
EnableProcessConnectionSensor = True
57.4.6 Connectors
The standard database has been prepared in such a way that initially the func-
tions are created without connectors. The connectors are only created once the
function is joined on the P&ID diagram with the process coupling (by means
of the Connector tool or the Docking function). See SECTION 57.7.5.2: WORKING
IN THE P&ID DIAGRAM. In this case Comos decides automatically what type of
connector is to be created.
The following applies: The function always takes the type of connector from
the object that it has been connected to. The type of connector determines
what kind of connecting line is to be drawn.
“I” connector
Connectors with type P&ID are given the name “I” and hence are often known
synonymously as “I” connectors. Two connectors of the type that have been
joined together are connected with a solid line. See also SECTION 57.7.4: DATA
LINES AND ACTION LINES.
“W” connector
Connectors with type Single line. Simple effective line (= action line) are
given the name “W” and hence are often known synonymously as “W” con-
nectors. They are used to manage action line connections. These are connec-
tions between functions and devices that influence the process. They are
shown with a dotted line.
If there are several connectors of the same type, their internal numbering is
incremented (“W1”, “W2” and “I1”, “I2” respectively“).
See SECTION 57.7.4: DATA LINES AND ACTION LINES for more information concerning
connecting lines.
Connectors in I&C
In the I&C section the connectors are used in addition to transport signals and
data. To do this, the Signal from owner option must have been activated in
the Properties window of the connectors. See SECTION 64.7.1.4: CONNECTOR:
SIGNAL OF OWNER.
%N I1% to %N I4%:
Determines the possible connecting points at the symbol for connectors that
have been allocated automatically. (Automated I and W connectors are not
implemented by means of text variables and hence are not visible here.)
*V*P S:RI.ICF200*:
Evaluates attribute ICF200 Optional: Graphic for relevant adjustments ,
which is stored with base standard table IC| Y| 0| 02| ICF200 Graphic,
which only contains the values TRUE and FALSE. The following script is
processed if TRUE:
Function Geometrie (PARAM)
ResetToDefaults
Header.Class = "eS2"
Set p1 = Coord(0,0)
Font.Height = 6
DrawText p1, "*V*P S:RI.ICA110*", 0, 1
Set p2 = Coord(3.75,0)
Font.Height = 6
DrawText p2, "*V*P S:IC010.ICA103*", 0, 1
Set p3 = Coord(7.5,0)
Font.Height = 6
DrawText p3, "*V*P S:IC010.ICA101*", 0, 1
End Function
If the attributes are set to TRUE (meaning that the attributes have been
selected), then the subsymbols for alarm displays and relevance displays
respectively can be displayed in the diagram through scripts that are stored in
the standard tables:
• Alarm displays:
RI Presentation tab of the function: ICF201 Optional: Alarm diagram
is selected and values are input in the attributes for alarms (ICF202 ,
ICF202a , ICF202a2 , ICF202b , ICF202b1 , ICF202b2 ).
• Relevance displays:
RI Presentation tab: ICF200 Optional: Graphic for relevant
adjustments is selected. In addition, attribute ICA110 Safety relevant
(Graphic) is set to “Yes” and
IC010 Request and security tab: attributes ICA101
Quality/Environment relevant and ICA103 Calibration proofed
measurement are set to “Yes”.
The attributes can also be set in the P&ID diagram from the mouse menu:
| GRAPHICAL SETTINGS | ... See also SECTION 57.4.3.2: “RI PRESENTATION” TAB.
See SECTION 45: SYMBOL-DESIGNER for more information on sub-symbols.
The following forms of display have been predefined in the standard database.
Function code:
Is taken from the label (Label). Since this is empty for neutral functions, the
Name is displayed.
Device label:
As a rule, only the name of the position and of the function are displayed. The
Fullname of the position with unit or subunit is only displayed if the flow
sheet has been allocated to another plant or to another unit/subunit than the
function.
• Shared display/control
That is “type 4” according to DIN
• PLC
That is “type 5” according to ANSI
• Primary location
That is “type 4” according to ANSI
The attributes can be set in one of two ways:
1. Properties window
The display of the function on the diagram is controlled through the
Properties window of the Specification tab Function data function.
2. Mouse menu
The attributes that are responsible for display are set with the mouse
menu of the diagram:
Select the function on the diagram, | GRAPHICAL SETTINGS| OUTPUT AND
HANDLING mouse menu and ...| PROCESS WITH.
57.4.9 Scripts
The following scripts have been input at the base object of a function on the
Script tab:
“Connect”
Call: when joining the connectors, thus, for example, when connecting the
function on the P&ID.
Task:
Measurement function: Connect only calls up the SetCDev function from
UserScriptBlock1. Please note that if a function is connected with a process
device (pipe, piece of equipment), the process connector is automatically gen-
erated and connected dynamically. Thus in this case Connect is called up as
well.
Actuating function: Connect calls up ConnectedObjectAsChild. An “I” con-
nector or a “W” connector is created at the function, depending on the context.
“DisConnect”
Call: when disconnecting two connectors. If the number of process connec-
tors is thereby reduced, then the connectors are separated as well. Thus Dis-
Connect is called up as well. Only with measurement functions.
Task:
DisConnect calls up function SetCDev from UserScriptBlock1.
Commenting of line 4: Workset.Lib.Elo.DelChapterByConIndex
"PI010",Connector
Safety prompt for a case in which measurement and actuating functions have
been mixed (there are separate branches in the Release DB). “PI010” is the
substance data of the actuating function. This tab is not required for the mea-
surement function and can be dispensed with.
“OnEditOk”
Call: when the [OK] or [ACCEPT] buttons are pressed in the Properties window.
Only for measurement functions.
Task:
Measurement function: OnEditOk only calls up function SetCDev from
UserScriptBlock1.
“OnReferencedByDevice”
Call: when creating the function and at each change of base object.
Task:
Measurement function: when the function is created, it takes the first letters
of the label of the position and thus becomes a suitable measurement function.
If a mask is defined for the label at the base object, the mask wins out.
After that, SetCDev is called up from UserScriptBlock1. The base data can
be simplified in this way: The same neutral functions are always located
underneath the positions and the appropriate measurement function is created
as a result of automatically taking over the label (and the subsequent change
of base object in UserScriptBlock1).
Actuating function: Analogous to the measurement function, but here the
actuating function takes the first letters of the label of the position and
appends a “V” onto them.
“UserScriptBlock1”
Measurement function:
Call:
1. If the label has been changed. The label is taken over into attribute
ICF100 Function . This attribute is queried in SetCDev.
2. If the number of process connectors has been changed. The process connec-
tors are controlled by the CProcess number of process connectors
attribute.
Task:
1. The script determines which position base object becomes the owner of the
function (in the case of functions according to EN/DIN: @P|02, for functions
according to ANSI: @P|03 etc.).
2. The script passes on the label and the number of process connectors to the
SetCDevBySpecs function. The result is that there is a change of base object
if necessary:
The label has determines which base object underneath @F Functions
| A1 Neutral function | 01 Measurement functions will be used for
the function planning object.
The number of process connectors then controls whether the direct successor
is used or whether to go one level deeper.
Example for density:
“UserScriptBlock2”
Task: Inserts the following attributes into the mouse menu for the functions:
ICF101 Processing with
ICF102 Output and operation
57.5 Vessels
PFD vessels can possess hierarchically subordinated objects, such as nozzles.
(These objects are also hierarchically subordinated in the Navigator, under-
neath the vessel.)
If the vessel is marked on the diagram, then all the objects of the diagram that
are hierarchically subordinated are automatically marked as well. (“Auto-
matic multiple selection”)
If an automatic multiple selection is made, the “Properties” mouse menu com-
mand continues to be available. The command opens the properties of the ves-
sel.
The properties of the hierarchically subordinated object are available if the
subordinated object itself has been marked (individually).
In the Comos standard database vessels have class Position , sub-class Equip-
ment . (See also SECTION 57.3: POSITIONS regarding positions.)
Base object for In the Base object for Pipe/streams field you can
Pipe/streams stipulate project-wide which base object is to be
allocated to the pipes or streams. This option can then
be redefined in individual cases by an allocation in
script form in the options block of the report
template. This then applies for all reports that are
based on this template.
Syntax:
CObjectFullNameForPipe =
"Obj.SystemFullName"
Example:
CObjectFullNameForPipe = "@1PE|OB|10|BL"
SetPipeFlagOnCreate
BOOLEAN, Default = FALSE. If TRUE, the default pipe flag is displayed
automatically on generating a pipe.
If blank P&ID reports open relatively slowly (five seconds or longer), you
should check the following setting:
Properties window of the report, deactivate the “Substance stream bar - appa-
ratus“ tab and the “With apparatus head“ and “With substance stream bar“
options (no tick should be visible).
Certain options such as line thickness, color, line type or also the position in
the substance stream bar can be controlled by means of attributes. This is done
by creating a Specification-tab (under the base objects) with the name “RI”
that contains specific attributes.
For pipes this would be, for example:
BREADTH
Type of Display Edit
Description Line thickness
Name BREADTH
Value [List]
Format, length, unit -
Type Numeric
Standard table @LOGO_BREADTH
Edit mode Can be edited - normal
Base specification @3 |@RI |@PIPE |RI |BREADTH
Table 57-1: PFD / P&ID attribute BREADTH
COLOR
Type of Display Edit
Description Color
Table 57-2: PFD / P&ID attribute COLOR
COLOR
Name COLOR
Value [List]
The value “- 1” is input into the attribute if a
color is set manually. The Windows color code
is stored internally. The color that had been allo-
cated to the object on the Interactive Report then
applies. The color value in the attribute can of
course be reallocated at any time. This color
value corresponds to the Logocad color code
and is taken from the corresponding standard
table of values.
Format, length, unit -
Type Text
Standard table @LOGO_COLOUR
Edit mode Can be edited - normal
Base specification @3 |@RI |@PIPE |RI |COLOR
Table 57-2: PFD / P&ID attribute COLOR
LNTYPE
Type of Display Edit
Description Line type
Name LNTYPE
Value [List]
Format, length, unit -
Type Text
Standard table @LOGO_LNTYPE
Edit mode Can be edited - normal
Base specification @3 |@RI |@PIPE |RI |LNTYPE
Table 57-3: PFD / P&ID attribute LNTYPE
PS
Type of Display Edit
Description Position in the substance stream bar
Name PS
Value [List]
Format, length, unit -
Type Alphanumeric
Standard table @AppKpf
Edit mode Can be edited - normal
Base specification @3 |@RI |@PIPE |RI |PS
Table 57-4: PFD / P&ID attribute PS
@IRF_RI
To manage the text functions that are made available in the Symbol editor.
@LOGO_BREADTH
Line thickness
@LOGO_COLOUR
Colors
@LOGO_LNTYPE
Line types
@PIPECONSYMBOL
Page reference symbol for pipes
@PIPEENDSYMBOL
Pipe end symbols
@CONNECTIONTYPEI
When a data line is generated, the graphic properties for the line are read from
the standard table for system project @ConnectionTypeI. Changes in the stan-
dard table do not affect data lines that have already been created, but only new
ones that are created from then on. The values are given in the table in the fol-
lowing order:
Value1= Label (subtype of type single line)
Value2= Line thickness in mm
Value3= Line type
Value4 to Value6= RGB colors (order: R-G-B)
Process units are organizational units that are used to resolve a user-defined
process technology task.
Pull the process units onto the diagram with drag & drop. The process units
are symbolized with captioned boxes.
Open the properties window to change the name that had been generated auto-
matically:
The size of the symbols for the process units can be changed.
Substance streams are managed as Comos objects and possess as such all the
usual properties (attributes, connectors, etc.). Substance streams are thus
aligned objects, they begin at the first mouse-click point, end at the second
mouse-click point and are given a direction arrow (direction of flow).
57.7.5.1 Overview
First of all the function needs to be created. Functions can be created within
the Navigator in two ways:
1. Mouse menu of a position according to DIN/IEC: | 04 ASSEMBLY GROUPS
(FUNCTIONS WITH SIGNALS)
This menu creates measurement functions with signals. (This menu item
will usually be used if functions are still missing at the beginning of the
I&C planning phase.)
2. Mouse menu of a position according to DIN/IEC: | 01
MEASUREMENT FUNCTIONS, | 02 ACTUATING FUNCTION and | 03
NEUTRAL FUNCTION or the corresponding menus of a position according to
ANSI:
Measurement functions and actuating functions, plus neutral functions,
are made available here.
The function is created in the Navigator underneath the position.
See SECTION 57.3.2: CREATING POSITIONS regarding the creation of positions.
In both cases, the function still needs to be equipped with a function code and
needs to be connected to the process. This is done by linking the function to a
process coupling by means of process connectors. Place the relevant function
on a P&ID report or alternatively you can work within the Navigator.
In the case of actuating functions it is also necessary to take into consideration
whether the associated actuating device still needs to be created.
Alternatively, the function can also be created directly on the P&ID diagram.
See SECTION 57.3.2: CREATING POSITIONS.
Measurement function
Open the P&ID diagram that is located underneath the subunit and drag the
function from the Navigator onto the diagram by using drag & drop. Link the
function with the process by means of the Connector tool.
If the administrator has prepared a process coupling at the base object of the
function as part of the preparation for the project (see SECTION 57.4.5.5: AUTOMA-
TICALLY CREATE PROCESS COUPLING), the process coupling is automatically created
as well when the function is connected (nozzle, or inline device in the case of
flow measurements). The function and the process coupling are automatically
joined with one another through their connectors (see also SECTION 57.4.6: CON-
NECTORS).
The result of the connection: new tabs are created at the function, on which
the data regarding the process connector is saved, See SECTION 57.4.5.1: CREA-
TING A PROCESS CONNECTOR and SECTION 57.4.5.2: DATA FLOW.
Actuating function
The same applies to the actuating function: the process coupling (= valve) can
be created automatically when connecting with the process. But since the
valve still needs to be prepared further, the following procedure can be used:
• Drag the desired valve from the icon bar of the diagram, if it does not exist
there, from the base data onto the diagram. Valves are located under the
following branch in the base data of the standard database:
PI Pipes and instrumentation| EN | D Catalog P&ID| 04
Valves| 60 Valves, respectively PI| ANSI| D| 04| 60 Valves
• Select the valve on the diagram and prepare it further by using the
| GRAPHICAL SETTINGS mouse menu. Provide the valve with a drive (select
one from the | GRAPHICAL SETTINGS| ACTUATOR mouse menu):
The valve and the drive are created in the Navigator underneath the report.
• Next, create the actuating function. In the standard database, no icons for
actuating functions have been predefined in the icon bar of the P&ID report.
Thus simply click on the desired position in the Navigator and select an
actuating function by using the | NEW mouse menu of the position. The
actuating functions are sorted within the menu by the valves that are to be
created underneath them:
Alternatively, you can also switch to the base data tab of the Navigator and
drag a suitable base object onto the diagram from under branch @F| A1| 02
Actuating function (or @F| A2| 02 Actuating function ANSI
respectively) by means of drag & drop.
• Join the actuating function with the drive unit of the valve on the diagram
by using the Connector tool. A dotted objectless line is drawn – a so-called
“action line”.
Caution: you need to check for yourself whether the connection points in the
right direction.
The objects are automatically connected in the database as well through
their connectors. See also SECTION 57.4.6: CONNECTORS.
The result of the connection is that the function now possesses a process
connector. See SECTION 57.4.5.1: CREATING A PROCESS CONNECTOR and
SECTION 57.4.5.2: DATA FLOW.
After connectin actuating function and valve, the valve and its drive are
moved underneath the function in the Navigator.
The result of the connection: new tabs are created in the function, storing the
data on the process connector. To some extent, these tabs receive the data
from the process. See also SECTION 57.4.5.1: CREATING A PROCESS CONNECTOR and
SECTION 57.4.5.2: DATA FLOW for further information.
The individual processes can be run once the basic flow sequences have been
described in the form of process units and substance streams.
Open a process unit by double-clicking on it.
The result is that you are given a new diagram on which only the selected pro-
cess unit can be seen. The incoming and outgoing parts are shown by broad
arrows:
All the elements can be positioned within the process unit, these being process
units, substance streams, instrumentation.
Once you have completed all the inputs, close the window by clicking on the
Close symbol (a cross) and reply with Yes to the Save query.
Whether or not the objects on the inside of a process unit are displayed at the
higher level depends on the object used or the setting. However, the objects
on the inside of a process unit can only be changed when the process unit is
opened by double-clicking on it.
When base objects are dragged onto a P&ID, the planning objects that are
generated as a result are initially located underneath the report. However, on
a long term basis the planning objects ought to be sorted to make up a mean-
ingful structure.
The result is that the marked planning objects underneath the report are
removed and sorted under the unit.
Thus the hierarchical structures of P&ID planning data are often set up on the
basis of the “Unit | Class” scheme (for example, in the KKS [German power
station labelling scheme]): here the topmost levels are units and sub-units, fol-
lowed by a structural level “Sequential number”, and then the object or device
classes depict the subsequent levels in the tree structure.
The various modes of the “Assign object” tool are documented in Quick Start
P&ID.
57.7.7.2 Categories
Labelling a unit as a “category”
With the help of “Categories”, components can also be divided automatically
into these classes instead of just being assigned globally to a unit. Categories
fundamentally use two items of information: specific units are labelled as cat-
egory and specific objects are given a fixed item of information, this being the
category that they would belong to.
There is the sub-class “Category” for class Unit. A unit will only be treated
as a category if it possesses this sub-unit, otherwise it will not be.
Stipulate within the objects which base object they will belong to
An attribute is created in the base data for the P&ID base objects:
Categorie_Name
Input in this attribute the name of the unit / category that the object is to belong
to.
Search strings can be created and executed for pipes and pipe segments that
display planning objects. Use the | SETTINGS | SEARCH TEXT mouse menu to get
to the screen.
Measurement functions and data lines (multiple connections without objects)
can be connected to one another through cross-references if you create on
each page the corresponding connections that are open on one side. Subse-
quently these can be selected and called up via the | CONNECT | MARK popup
menu, and the other connection is allocated via | CONNECTION CONNECT WITH...
These connections can be broken as usual with | BREAK ...
The GRAPHIC OPTIONS mouse menu can be used in a user-defined way if the
corresponding variable has been defined by a script in the base object.
For example:
DIM ADDTOGRAFICALPARAMETERRI (4)
ADDTOGRAFICALPARAMETERRI (0) = “AUSLEGUNG.RI_VENTA”
ADDTOGRAFICALPARAMETERRI (1) = “AUSLEGUNG.RI_ARMSTELLV”
The result is that the corresponding attributes appear in the mouse menu. You
can find further examples under valves and fittings in the example database.
57.8 Interfaces
The interfaces can be addressed via the corresponding base objects:
@1PE | US | FI |SIMD Simulation Data
| Aspen Simulation and
| Pro II Simulation.
Prepare import
The import operation is based on the control table in the base project
@1EA Catalog EE | Import
that you can open via | ADMINISTRATOR | BASE DATA | STANDARD TABLES.
The attributes from ECAD are allocated to the Comos attributes in this stan-
dard table. There is no technical necessity for a 1-to-1 matching. The standard
table is made up as follows:
Column 1: Name
Each row of the standard table requires a unique name, but it does not matter
what the name is. As a rule, the name of the attribute is used here.
Column 2: Description
This stipulates how the Comos attribute is to be described, i.e., which entry is
to be given in the “Description” field. Please note: This column is not updated
automatically. If the descriptions of the attributes are changed, the new
descriptions must be input here manually. In any case the value in this column
is solely used for information purposes, the import procedure also functions
if incorrect entries were made here.
Column 3: Symbol
(Not used for ECAD import. In general, a symbol that is used for the Comos
object can be created here.)
Column 4: Value1
Full name of the Comos attribute used in the import (including the name of
the tab). The Comos attributes are in the base project in:
@Y Catalog spezifications |ET Electrical engineering
|1 General chapters
Column 5: Value2
Name of the allocated ECAD attribute.
Column 6 and subsequently: Other imports that have no meaning for ECAD.
If necessary, you can adapt the this list to meet the requirements of a particular
company.
Preconfigured import
When text files are created in ECAD format, each line of text has an initial
marker (“tag”). The following tags are recognized and imported:
• NO (main components)
• TD (technical data)
• ZB (accessories); can be controlled via options, see below for more details.
• DD (= attributes under manufacturer on the Product Data tab)
K1 data records (channels) are also imported. The following types of
channels are recognized to date: COIL, MAIN, AUX, PRIM, SEC, UNI and
PCL.
File
Select a vrg file.
Target
Set within the Target field by drag & drop underneath which branch the data
is to be created. In other words: You must import one block of manufacturer
devices at a time under the relevant branch for the request object. New objects
are created underneath this target node or else the attributes are updated in the
case of existing objects.
The import procedure (adapting the data structure and the attribute values) has
been set up in such a way that the import function can also be used to update
data that has already been imported.
The options
Read accessories
Lines with the ZB tag are imported and created under the main components
(NO tag).
Accessories are devices that are available for a specific other device but are
not administered individually. Accessories are thus used as an element on the
Elements tab of another device from the „catalogs“. The main reason for
adding accessories to another device as an element is that you can thus auto-
matically create complete ordering lists.
Log all
A log file is created when an import operation is carried out. This file is
located in the same directory as that of the file to be imported. The file name
of the log file is made up of the name of the file to be imported, a sequential
number and the file extension “.pcl”. The log file is always created from
scratch each time.
Off: Only errors are logged.
On: The entire import operation is logged, giving the details of which objects
were created, what information was written into them, etc.
ASCII-ANSI character set conversion
An ASCII character set is converted to ANSI by means of the Windows rou-
tine.
The import process is shown with a progress bar display.
You determine in the two top edit fields which objects are to be investigated
(initial quantity). An entry must be made in both fields to do this:
Owner : This field determines in which branch a search is to be made for the
objects.
Prototype : The lower field is an example and determines what kind of fields
are to be searched for.
In the simplest case you drag an object into the lower Prototype field; this
automatically sets the current owner of the prototype in the upper Owner
field.
However, in principle the two fields are independent. You can select a start
object in the Owner field and then the prototype that is entered in the lower
can be taken from a completely different branch.
At the very bottom you can see which text mask the system has determined.
These details are only given for information and cannot be changed. The
details of whether a text mask has already been defined in the base object, and
if so, which one, are given in the Base object column.
Details of which mask is used as the basis for the renumbering of the text
masks are given in the Edit mask column. In other words: Even if no details
have been given in the Base object column, an entry can be seen in the Edit
mask column. In this case the system has attempted to determine an Edit
mask by itself.
59 Electrical Engineering
All the devices in this branch possess certain basic properties that are
explained in the following section, SECTION 59.1.1.1: “SIMPLE” DEVICES.
In addition, there are objects that bring with them additional properties and
capabilities. These special devices are explained in detail individually in the
following sections.
These DIN letters are also created as well for the planning objects. There is a
text mask on the System tab of the base object for this purpose. Here is an
example for a general PLC:
The letter “A” used in compliance with DIN is also used together with a count
to make up a name in a planning object.
59.1.1.1.2 Symbol
All simple devices possess one or more symbols on the Symbols tab. Dia-
gram types “DETAIL ”, “GRPLAN ” and “SLINE ” are provided with symbols
as a rule:
These symbols can be modified if required. Please note that the symbols are
inherited down the hierarchy.
The scripts may not be modified in the case of DESIGN diagram types. Here
they do not use symbols, but instead a form of automatic display calculation
for 2D design plans.
The symbols for the diagram types initially have a fixed size and are opti-
mized for a particular grid and scale. However, various options can be used
so that the symbols can also be used on reports with a different grid and a dif-
ferent scale.
Each symbol has a placing point that is used for positioning on the grid. The
placing point is only seldom at the top left-hand corner, but is created such
that the connectors lie on the grid.
Text symbol
A text symbol is created at the topmost node in branch @1EA:
This text symbol is inherited by all base objects underneath it, but it is not
evaluated in all base objects, however. It is only evaluated in the case of base
objects that call up the text symbol by means of *V* P Txtpoint*. See
SECTION 45.4.2.1: TEXT SYMBOL for more information concerning text symbols.
Thus the object function allows additional graphics to be incorporated via the
base object structure. The SystemFullName of the base object is used as the
parameter, whereby the individual hierarchy levels are separated by periods
(full stops) as appropriate. Example: @1EA.A001.
Placeholders can be rotated just like any other type of text so that they are eas-
ier to read. Normally a rotation of the text in this way has no effect on the
object to be placed, and hence the object always appears in the direction of the
template.
If the rotation of the text is to affect the rotation of the object to be placed, the
following option must be activated in the project properties:
Tab Module options sub-card | Detail :
Option Consider rotation of *V* variables .
Attributes that can be set centrally are also managed centrally. There is the
“catalog” @Y Catalog attributes | EE Electrical Engineering for
this purpose. The catalog attributes are only called up for EE devices:
The real devices are incorporated at the “lower levels” and the Request prop-
erty is deactivated there.
Use the | ADMINISTRATOR | BASE DATA | ECAD COMPONENTS IMPORT command
to import manufacturer devices. See SECTION 58.2: IMPORTING ECAD COMPONENTS.
Goal
A logical potential is an additional piece of information concerning an elec-
trical connection, in just the same way as the information on the wire.
As opposed to potential objects (physical potentials), potentials do not pos-
sess any connectors of their own. The information has its origin in a connector
(a protective device, as a rule). They are passed on to the connections by
means of cross-references and terminals. (This passing on of information can
be switched off by a parameter in the project options.)
Application
• Create the logical potential as a planning object.
• Open the device in the Navigator or the Properties window of the device.
• Drag the logical potential onto the connector or
drag the connector onto the logical potential.
Effect:
• The logical potential is shown at the connector within the Navigator. The
| COLUMNS | LOG. POTENTIAL mouse command on the Connectors tab in the
Properties window of the device must be used first of all. The logical
potential is displayed in the new column.
• In the diagrams the label of the logical potential appears at the potential
object (mode: read) and at all open connections.
Mouse-click on the Allocation tool (the box with the arrow pointing
downwards)...
... and drag the potential onto the connection:
You are then given all the connectors located at this potential. Only one con-
nector is available in the example, this being connector A1T1 . This one con-
nector is offered in the box.
You will of course get nothing if there are no connectors at the potential yet.
In the above example precisely one connector is available. You can simply
mouse-click on one of the connectors to produce the connection.
Please ensure that you use the Allocation tool for this.
Naming syntax
The name of the logical potential that has been set is input on the Connectors
tab in the Log. potential column. Another character can be input before the
name, this often being a minus sign. This involves a prefix, and thus the sep-
arator that was input in the project options.
An asterisk can appear after the name. The asterisk only appears for exactly
one object: the “start object”, namely, the object from which the logical poten-
tial has its origin. Thus you can tell at once whether the information about the
logical potential was only taken over (“inherited” via the connector) or had
been defined here.
Connectors / display
Logical potentials do not have any connectors, since they are not intended to
be placed on a report.
If nonetheless a logical potential is to be placed on a report, then the informa-
tion that is output at the end of the cross-reference is taken from description
@System |@Connection. If you wish to see another text or an additional
graphic or format the text differently, you then need to change the correspond-
ing entry in this description. See also SECTION 59.1.4.3.3: BASE PROJECT @SYSTEM
|@CONNECTION.
Goal
Physical potentials are set on the report or in the database like a busbar: as
many outlets as are wanted can be made available at any desired point, since
all of them have the same current potential.
The potential is often created under a location, since the potential has to sup-
ply the location with electricity. However, in principle a potential can be cre-
ated anywhere.
Connectors
A typical feature of potentials is that they do not have a fixed number of con-
nector points but can be connected to any desired number of devices. For that
reason potential objects are only set up with one connector and as many aux-
iliary connectors as there are to be devices to be connected to the potential are
created.
Thus auxiliary connectors are created automatically as a rule:
• Alternative 1: Create on the report a new outlet for the physical potential by
making a connection.
• Alternative 2: Drag a free devices connector onto the Connectors tab of the
potential.
Auxiliary connectors can of course also be created manually by means of the
mouse menu.
Differing from the above, the label can be switched on or off at either side by
means of the mouse menu:
| OPTIONS...
LABEL RIGHT Turns on the label at the right-hand end. The
name is displayed if there is no label.
LABEL LEFT Turns on the label at the left-hand end. The
name is displayed if there is no label.
Prolongation
Potentials can have a prolongation that extends beyond the grab points. This
prolongation is controlled by the variable PotentialProlongation in the
options script of the template file. The default setting for the variables is zero.
The prolongation is only visible when the label is switched off at the relevant
line ends. Do this by marking the potential and selecting the | LABEL RIGHT
(the hook is turned off) or | LABEL LEFT command as appropriate from the
mouse menu.
Goal
Application on the report as a relay or contactor, including a tabular listing of
the connector points (contact mirror).
The name of the base object must be included in description System project:
@System | @ELO_KSP. If an object possesses the Contactor / Relay sub-
class, Comos then compares the name of the object against this list. The object
on the report is only given a contact mirror if this name can also be found in
this description.
The symbol has no special features: it draws the display of the contactor/relay
and defines the connector points.
Initialisation
The contactor/relay object has various auxiliary contacts on the Elements
tab, which are created as virtual elements . The contact mirror only becomes
visible on the diagram once at least one of the virtual elements has been cre-
ated. Do this from the mouse menu with the | CREATE or | CREATE N command.
Display
The numbers and letters have the following meanings:
(6.3) Describes the sheet name and the path number, and
relates to the object that is joined to this connector. The
zone number is not specified, so this form of notation
states the column in which the object is to be found.
In the example on the left, the object is thus on page 6,
path 3.
13 The symbolized connector. The number is derived from
the designation of the connector.
59.1.1.4 O Other
Application
This blackbox has a symbol with four ready-made connectors. Additional
connectors are generated on the report if the blackbox is placed and drawn out
to make it bigger.
All connectors initially lie on the upper edge of the symbol, however, the sym-
bol can be rotated and thus the outgoing direction of the connectors can be
stipulated retrospectively.
No Comos connector is generated if a connection terminates as open. A con-
nector is generated automatically if a connection terminates at an RODevice.
Multiple placing:
The blackbox with predefined contacts can be continued over multiple
reports. A corresponding cross-reference is shown if a connection is made on
one of the reports to a grid point connector that has already been used on
another report.
Goal
ID segments (label segments) are rectangular areas in circuit diagrams that
group together objects belonging to one location for the purpose of clearer
labeling that is easier to understand. This abbreviation of the texts at the
devices also covers cables (class: Device , sub-class: Cable ).
These segments are stipulated in addition as the target for the automatic plac-
ing function (“AutoLoop”).
Application
1. Pull a base object of type ID segment onto the diagram by means of drag
& drop.
2. Single-click twice on the ID segment until the grab points are visible.
3. Drag out the ID segment until it is big enough to accommodate all the
desired devices (but also only these devices) within the rectangle:
If the labelling of the segment matches the labelling of the objects within it,
the labelling of the objects is shown in abbreviated form:
Direction of ID segments
Please note: Segments have a “direction”! If the segment is wider than it is
tall, we talk of an x-direction segment, and if the segment is taller than it is
wide, we talk of a y-direction segment. All the segments on a diagram should
have a common "direction".
This direction is used to determine in which direction the placed elements are
to be arranged: for example, with an x-direction segment the placed elements
are arranged horizontally.
ID segments are not selected if a selection frame is dragged out with the
mouse (multiple selection).
An ID segment can also be selected by single-clicking. When making a con-
trolled individual selection with <Ctrl> + left mouse button, the order deter-
mines whether an ID segment can be marked.
Settings
Right-click to open the Properties window of the ID segment:
59.1.1.5 W Cables
@1EA Catalog EE |– W Cables
59.1.1.5.1 Goal
Usually EE connections have no object. This means that the connectors of two
devices are directly connected together. A connection is drawn on the report,
but this connection itself has no counterpart in the database, but only the end
points of the connection have counterparts in the database through the connec-
tors.
In many cases it is necessary to define the connections more precisely. These
objects have been predefined for this purpose. Cable systems that can be spec-
ified down to the level of the wires have been provided.
59.1.1.5.3 Application
A cable can only be placed correctly on a report once the wires have been cre-
ated. There are two ways to get cables with wires:
• Select one of the basic cables and create the necessary wires yourself
• Select one of the fully configured cable objects in which the wires have
already been created.
Basic cable
The basic cable initially does not have any wires. You must open the Proper-
ties window and switch to the Technical data tab to create wires.
The following procedure is affected by whether you are working with a base
object or a planning object. However, a copy of the basic cable should first be
made in the base data before any new wires are created. In this way the orig-
inal basic cable thus remains unchanged.
Wire number
The total number of wires, including a grounding conductor if applicable.
Number of shields
The number of shields.
Separator
This separator is used when the Number of wires and the Cross section are
added to the Cable cross-section details.
With protective cc
Changes one of the wires that has been created into a grounding conductor.
The label is also changed.
Cross section
This is taken together with the Number of wires onto the System tab in the
Cable cross-section field.
Wire label
A number of color libraries have been prepared in branch ZZZ Other
objects. Here these are offered in the drop-down menu. The wires are cre-
ated according to the library, depending on the Number of wires . If the num-
ber of wires is greater than that of the predefined wires in the library, the
remaining wires are created numerically.
[CREATE CABLE]
Creates the wire elements on the basis of the relevant details. The details can
still be modified or supplemented later. If you mouse-click again on [CREATE
CABLE], the wires are modified or supplemented correspondingly.
Complete cable
Two cable systems have been prepared in the base data:
• VDE-compatible
Cables with stranding have also been prepared beforehand under the
0815 Telephone cables heading.
Calculation of cables
Once the Data options group has been filled in completely, you can then
mouse-click in the Calculation options group on the button with the question
mark (?). The loss values are then calculated automatically.
If wires have already been set in the database, this information is retained as
far as possible, but the remaining wires are set during positioning on the dia-
gram if only part of the information has been set. Thus the free wires are allo-
cated in the due order, and more precisely, in the order in which they are
shown in the unsorted list window.
59.1.1.5.5 Shields
Class Element , sub-class Wire
Additional shields
There are the following methods to create additional shields:
• Mark the cable (not the connection!) on the report and select the | NEW | SH
SHIELD command from the mouse menu. The new shield now “hooks” to the
mouse pointer.
• Open the Properties window of the cable on the Technical data tab to make
new inputs and mouse-click on [Create cable]. The new shield still has to be
placed on the report.
• Select the | NEW | SH SHIELD mouse menu within the Navigator. The new
shield still has to be placed on the report.
Stranding
The stranding is used in branch | Cables as per VDE | 0815 Fernmelde
cable.
59.1.1.6.1 Goal
Making terminal strips and plug strips.
Terminals and terminal strips can only be regarded as a unit in Comos. It is
meaningless to use a terminal strip without terminals, since only the terminals
can have connections. But it is also meaningless to think in terms of a terminal
without a terminal strip, since the terminal must be placed somewhere.
See also SECTION 59.7.2: STRIP TAB.
59.1.1.6.4 Terminals
Terminals typically possess two connectors. In Comos the two terminal con-
nectors are distinguished by the “internal” (%N I %) and “external” (%N O %)
sides.
The external connector is marked in the diagram by a point:
59.1.1.6.5 Bridges
Bridges connect terminals. This means that bridges can only be set within a
terminal strip. Thus there can only be connections, but not bridges, between
the various terminal strips.
Bridges can be created in the report:
SECTION 59.2.1.6: CONNECTIONS / WIRING FOR TERMINAL BRIDGES
59.1.4 Descriptions
Please note: Right at the bottom of the Descriptions dialog window there is
a Diagram type field. There you first have to switch over to DETAIL or to
one of the other EE diagram types.
The text functions given here are made available in the Symbol Designer
when you create a text and fold out the Text functions branch from within
the text properties.
The relevant description is offered according to which type of diagram the
symbol was created for.
The mode of working thus corresponds exactly to the procedure by which you
draw a symbol for a device. Switch in the third column to the required type of
diagram. Do this by right-clicking on the column header and selecting the
| SYMBOLS menu from right at the bottom:
Then double-click on the symbol. You can now make the desired changes.
The “symbols” created in @System | @Connection are displayed at the con-
nection break.
The individual entries mean as follows:
LOGPOTREFERENCE: If a logical potential is allocated to a connector, then
REFERENCE is no longer output at the relevant connection, but instead
LOGPOTREFERENCE. See SECTION 59.1.1.2.1: LOGICAL POTENTIAL,
SECTION 59.2.1.4: OPEN CONNECTIONS.
59.1.5.1.1 Attributes
See SECTION 59.2.1.1: PREPARING CONNECTIONS.
Individual commands
Application = “ELO”
In this case Xdoc_Elo.dll is used.
ContactMirror_X, ContactMirror_Y
SECTION 46.4.2.22: CONTACTMIRROR_X (DOUBLE), SECTION 46.4.2.23:
CONTACTMIRROR_Y (DOUBLE)
RestoreReferencesAfterCopy
46.4.2.56: RESTOREREFERENCESAFTERCOPY (BOOLEAN)
SECTION
Controlling connections
ConnectionHook
Controls the display of the connection hook. If a connection is also a bridge,
dynamic connectors are always shown in the form of a hook, regardless of the
script entry. See ConnectionHook (Double), P. 46-44.
ConnectionLineMode
SECTION 46.4.2.21: CONNECTIONLINEMODE (STRING)
ConnectionReference
Controls the display of cross-references and potentials.
ShowConnectionInfo
SECTION 46.4.2.61: SHOWCONNECTIONINFO (BOOLEAN)
SetWireNumberByCoord
SetWireNumbersByCoord(ByVal ReportDocument As REPORTLib.Docu-
ment)
All connection end points are provided with a unique number per quadrant
(“ladder”). This information is input instead of the quadrant label if the con-
nection possesses a logical potential.
DisplayConnectedWith
Allows the automatic execution of a script at closed connections. The prereq-
uisite for this is an entry in the @CONNECTION table with the StandardValue
CONNECTEDWITH. If a script has been stored for this StandardValue, it is then
then executed.
EnableButtonSpline
See SECTION 46.4.2.37: ENABLEBUTTONSPLINE (BOOLEAN)
EnableButtonANSICable
See SECTION 46.4.2.35: ENABLEBUTTONANSICABLE (BOOLEAN)
PreferredConnectionDirection
Controls the preferred direction of connection when a connector is joined to a
connection on the report.
ShowLineModeControl
See SECTION 46.4.2.62: SHOWLINEMODECONTROL (BOOLEAN)
• A text is created in a path on the Interactive Report (for example, at the top
edge of the report).
• Input the text.
• Activate the “Path text” checkbox.
• Confirm with OK, and a text frame appears.
• This frame must be dragged out to be as big as desired but should not be
wider than the path itself. All objects that are located completely within the
width of the frame (if you mentally extend the edges of the text frame
downwards) are given the path text.
Do not create two path texts within a path.
The path text only with those objects that do not have a description already.
In other words, an existing description is not overwritten.
' Path / zones variables
QuadrantOffsetTop = 0
QuadrantOffsetLeft = 0
QuadrantSizeX = 60
QuadrantSizeY = 60
QuadrantStartChrX = "0"
QuadrantStartChrY = "A"
QuadrantStepX = 1
QuadrantStepY = 1
For i = 1 to 5
Zone(i) = CHR(i + 64)
Next
End Sub
The following report templates for Evaluation Reports are used in EE.
59.1.6.1 PMA
• Terminal diagram (default, matrix)
• List of connections
• List of potentials
• PLC overview
• Marshalling diagram
59.1.6.2 PPB
• Electrical consumers
• List of shields
59.1.6.3 PQA
• Wires that have no connections
• Change after a revision
• Checking the required device against the manufacturer device.
• Connector with too many connections
59.1.6.4 PPC
• Parts list
59.2 Connections
These section covers how to drag connections onto reports and to control
them within Comos. This initially involves a form of graphic work that is
largely independent of the electrical engineering connection information such
as cross-section, color, bridges, etc.
If these fields have been set and no cable object has been allocated to connec-
tion on the report, the corresponding details are written to the relevant connec-
tors of the connected objects.
• “Magnetic” grid points: the Connector tool automatically snaps to the grid
point. This automatic snapping to grid points by a cable can be deactivated
by holding down the <Shift> key while holding down the mouse button and
moving the mouse.
• Connections can also be dragged over components, the connections being
separated and the object incorporated into the connections.
• The connections are closed when an object in the document is deleted.
• If an object is set to connections, the connections are separated, meaning
that the object is incorporated into the connections.
• The connections are changed correspondingly when components are
moved.
• Connection crossings at connection cables
Two other connections can also end at the same point when joining
connectors. A connection crossing is displayed to distinguish such a case
from a situation where a connection runs over another connection but in
purely visual form.
2. Connections that are open on one or both sides, and which can be cross-
referenced (e.g. potentials).
Reference brackets
If multiple open connections point to the same target, you can set a reference
bracket:
Reference brackets can also be connected with the aid of the mouse menu in
the same way as for other connections. First select from the mouse menu the
| CONNECTION | MARK... command and then the | CONNECTION | SET... command.
Goal
If connections are dragged onto a report, then initially all that matters is that
all the components that also to be connected physically are connected some-
where on the report.
In order to be able to do that, it is also permitted to make connections at any
desired point on the diagram to another connection.
In actuality, it is not permissible to make connections only to connectors / ter-
minals in plant design and construction. It is illegal to simply make connec-
tions anywhere to a cable.
The planning on the report can be done far more quickly if you can simply
make connections “anywhere”, but there is a gap in the information for the
actual cabling in industrial plant design.
This gap in the information can be filled by means of the “wiring informa-
tion”. For that reason the report also shows graphically at which components
a connection terminates in actuality.
Example
A simple form of motor switching with safety switches has been set up in the
following illustration. If you look at the connections of the separate safety
switch at the bottom in the illustration from a purely graphic point of view, it
is not possible to tell with which components it has been wired:
• And make the next clicks in the usual way so as to continue and terminate
the connection.
If the second mouse-click is offset to the left, the wiring correspondingly
points in the other direction.
The branches of potentials normally have no direction of wiring.
Please note that this action also changes the connector pin-outs in the planning
data!
In other words: the wiring of terminal 2 and terminal 4 was removed automat-
ically.
Please note that the wiring of the terminals is done on the basis of the position
on the report. It is of no importance that the terminals in the above example
have sequential numbers. If the terminals on the report had the names 3-17-6-
1 in relation to the order, the terminals would be wired in this order.
You only need to mark the connection and to change it over to a bridge by
means of the mouse menu.
Alternatives
It is simpler to set bridges in the database. Predefined columns for bridges are
already provided there, see SECTION 59.7.2.2: BRIDGES.
Goal
Document cross-references indicate on which report a connection is contin-
ued. Logically enough, document cross-references are only of interest if the
diagrams are so big that they cannot be drawn on a single report. Fundamen-
tally there are two types of cross-references:
• Cross-references from connections
• Cross-references from potentials
“Cross-references” should not be understood literally in the case of
potentials, since in a sense they “refer” back to themselves and thus make it
possible for a potential to reach across multiple sheets. See SECTION 59.1.1.2.2:
PHYSICAL POTENTIAL.
Write/read mode
A drop-down menu also appears when the Connector tool is called up:
• Read
The connections must be set in the database. The connection line on the
report searches for the corresponding connection in the database. The
connection line is consistent if the connection is found. With this option the
connection lines in the report have no effect on the database.
Consistent connection: blue
Inconsistent connection or
no connection in the database: red
• Read / write
As described above, if no connection was found, the connecting line
generates the connection between the objects in the database. With this
option the connecting lines write into the database if no connections had
been set in the database.
Consistent connection or
No connection in the database: black
Inconsistent connection (the connection in the database is connected with
another object): red
• Write
A connection between the planning objects is generated if no connections
were found in the database. If a connection to the object connectors had
already been input, it is deleted and overwritten. With this option the
database information is always overwritten by the diagram connection lines.
Color: green
• Connectors are joined in the planning data, but there are no associated report
connections
In general, this is not a problem. However, there can be an inconsistency if
only some of the connections involving connectors exist as connections on
the report.
• Report connections without associated connectors
In this case the report connections are marked in red (inconsistent).
Goal
To create a template that you can copy into the planning data and in which you
can reconcile the objects on the report with the objects in the planning data
with just a few mouse-clicks.
Implementation
The objects are marked as “connection-independent” on the report by means
of the mouse menu:
Marked objects of this type are shown in blue (synonymous with the display
of read-type connections in blue).
Example
The following example is easy to set up as a model and demonstrates the
points in question.
Next, the horn is joined to any desired terminal via the connectors in the plan-
ning data.
Now the horn has been connected in the planning data, but not on the report,
and the final step is to draw a connection in the report between the horn and
the terminal. The connection must have the “read” option:
Effect:
Auxiliary connectors
Example: A device possesses a connector and an auxiliary connector. For
example, there is a connector CP1 and CP1(1) at the device; from a technical
point of view, CP1 and CP1(1) have been short-circuited.
In the default case l a connector “2” now appears twice in the Properties win-
dow on the Connectors tab, since the connector and the auxiliary connector
possess the same label. This display is consequently meaningful since it
involves short-circuited connectors from a technical point of view, and these
are treated in the same way as connectors.
Both are connected to one terminal respectively.
There are connection-independent terminals on the report and these are con-
nected with the device. The effect: Both of the connections are marked as
inconsistent on the report:
Reason:
A piece of information is missing if two connection-independent objects run
together to a short-circuited connector: Comos cannot determine which of the
connection-independent terminals on the report is to be allocated to which ter-
minal in the planning data. The planning data is correct, but Comos cannot
transfer the planning data onto the report. For that reason the connection-inde-
pendent terminals are not allocated on the report and the connections are
shown in red.
Assessment in practice:
The case described above does not occur, since in practice the terminals are
usually connected on both sides. If the second connector supplies useful infor-
mation, Comos can allocate the terminals and the data thus becomes consis-
tent:
*
X01 X02
# = Connection-dependent Objects
K2.A1
* *V == Graphical
Unchangeable Objects
connection point
K2
# = Connection-dependent Objects
K2
You can create a similar case if you draw on the report more connections than
exist in the planning data.
Bridges
Bridges are not evaluated to produce a consistent connection logic.
59.2.2.1 Bridges
See SECTION 59.2.1.6: CONNECTIONS / WIRING FOR TERMINAL BRIDGES.
The cable object takes priority. If wire information already exists at the con-
nectors and a cable object has also been assigned to the connections, the infor-
mation of the cable object is then evaluated and displayed.
Disconnecting wires
Wires can be disconnected in the opened Properties window of the device:
• Mouse-click on the entry in the über column and select the Wire mouse
menu.
• Select the Disconnect sub-menu.
The wires are displayed in the database together with the allocated connec-
tions:
The shield can be made broader with the aid of these grab points. Do this by
left-clicking on the dot, holding down the button and dragging the grab point
to the new position.
In addition to these three designations (-W7 , (N)YM-J and 10x1,5) a rectan-
gular point appears for each of them so that the designation texts can be
moved.
In addition, a round dot can be seen at the far left. The shielded cable can
rotated vertically with the aid of this dot.
You can “open” the shield if the connections on the diagram are so far apart
that they cannot all be encompassed by the shield or if the connections are on
different reports, then:
• Select the shields individually (not the group)
• | SETTINGS | START OF THE SHIELDING.
(The hook should disappear.)
The result is that the rounded part at the left is removed from the diagram:
If you were to deactivate the | END OF THE SHIELDING command in addition, the
shielded cable would also be shown as open to the right. Thus you can always
tell from the diagram where the shielded cable is complete or whether it has
additional connections at another point in the diagram.
The action is confirmed with [OK] and the Properties window is closed.
| CONNECTION-INDEPENDENT
If this option is used with planning objects, the objects then only continue to
function as placeholders. They are shown in red in the Interactive Report.
The objects change on both sides according to the dependency, for example,
via the connectors. A chain of dependencies of this type is disconnected as a
rule because an object in the chain has been redefined.
See SECTION 59.2.1.9: CONNECTION-INDEPENDENT OBJECTS.
| LABEL VISIBLE
Turn the Device label on and off. As a rule, the device name plus the name of
the owner as used as the device tag.
The commands change the display of the device; typically the symbol is sup-
plemented by additional graphic components (hence ”additional symbol”).
Examples: @1EA | S Switches.
Application = “ELO.SLINE”
59.6.1 General
Only objects that meet the following criteria are taken into the above-men-
tioned lists:
1. The objects are in a direct ownership relationship, i.e., cross-references
have not been evaluated
2. Only objects that are within the unit structure or location structure
respectively on the unit or location side respectively are evaluated
Select the Report tab and from it allocate to the Report template field the tem-
plate CRP | AWR | PPC | PPC.1 Order list / Parts list by means of the button
on the right.
Sorting by
Determines the sorting criteria that are to be used later in the list. Check the
order!
[Reset]
Deletes all previous inputs for this options group.
Output with:
Terminal strips / plug strips
Determines whether output is to be done with or without strips and terminals
/ plugs.
Accessory
Determines whether output is to be done with or without the accessory.
Page break
Determines whether a page break is to be made when the contents of the first
of the sorting criteria change.
Unit
Selection between Yes , No or If differing with actual object .
Location
Selection between Yes , No or If differing with actual object .
List type
Determines the type of list, selection between ORDER LIST, MATERIALS LIST or
PARTS LIST.
Columns:
Item, material number, device description, manufacturer, unit price
All devices that can be ordered are listed, devices with the same part number
are grouped together for output, terminal strips and plug strips and accessories
are broken down by their own allocation and are listed.
Columns:
Item, number, order number, order text, manufacturer, price, total
The order list behaves just like the materials list, but here only real devices are
taken into consideration, i.e., the ISREQUEST option must be set to FALSE.
Columns:
Item, unit, location, name, description, manufacturer, order number, device
description, price
All the items are listed individually, terminals and plugs are grouped together
under a strip, sorted by type. Accessories are sorted underneath devices and
marked as such by a “+” (plus sign) in the Item column.
Joining connectors
The idea behind this procedure is to make the connectors of both devices vis-
ible in the Navigator and then to edit them by using drag & drop.
Use drag & drop to pull a connector onto another connector.
This procedure can only used to select items individually.
Disconnecting connectors
Connections can be disconnected in either of the two Properties windows that
are open.
The order and the choice of right or left is entirely up to you. The result is that
the dialog window looks very much like two opened Properties windows.
The procedure now is exactly like that described for the previous case.
The advantage of the Connect device dialog window is that chain connec-
tions can be set more quickly or that large numbers of connections can be han-
dled: The contents of the window are changed very quickly when a new object
is dragged into the dialog window. However, it takes a comparatively long
time to exchange information in Properties windows. The Connect device
dialog window saves working time if the object to be edited is changed fre-
quently.
Procedure
• Set a starting object by means of drag & drop.
• Write the desired texts into the edit fields
Cable type, Cross-section and Color .
• Select the desired option for Overwrite .
The dialog window writes the details into the system-internal attributes of the
connectors. (These attributes are thus not visible on a Specification tab of the
base object.)
The Wire cross-section and Wire color columns on the Connectors tab
can be made visible by means of the mouse menu. The information that had
been set in the dialog window or which had been set in the report via the
| SETTINGS mouse menu for the connections is displayed in these columns.
Retrospective changes
Overwrite
The Determine information for connection dialog window can be used
multiple times on planning objects. If the option has been deactivated, the
information in all objects that had already been processed earlier is retained.
If the option has been deactivated, the information on the cross section and
color is overwritten with the new details.
Please note: The connector and the logical potential created on the
Elements tab must have exactly the same names!
The Log. potentials column must be made visible by means of the mouse
menu so that you can see the result on the Connectors tab.
Logical potentials support the NestedLabel function. Effect: For example, if
there is a signal under a fuse, the label of the fuse is prefixed to the potential
label.
Schemes
Schemes can be saved for terminal and terminal strips.
59.7.2.2 Bridges
See also SECTION 59.1.1.6.5: BRIDGES.
The Connectors tab of the terminal strip is opened first of all to set a bridge.
The terminals that are to be connected by a bridge are selected on the tab:
Two categories of bridges are managed for each terminal, an internal (on the
left) and an external bridge (on the right). The internal bridge should thus
symbolize the internal connectors, namely, the connections running from the
terminal into the interior of the cabinet.
Select the mouse menu in the left-hand part of the lists window to get the
| BRIDGE (INTERNAL) menu:
And the corresponding counterpart when using the mouse menu in the right-
hand area.
The same types of the relevant bridge are offered in both menus. Each type of
bridge is symbolized by its own color:
These predefined colors can be changed, see “Global settings for bridges, P. 59-68”.
If bridges are set and deleted repeatedly, this can lead to display problems.
Select the | UPDATE (BRIDGES) mouse menu if bridges can no longer be dis-
played for any obvious reason.
59.8 Other
Please note: “Signal tracking” is read-only and does not require an EE/I&C
license.
For completeness, we will make a reminder once again at this point concern-
ing the querying of licenses: licenses are taken from the floating license for
the work session. If Comos is opened several times at a workstation, then sev-
eral licenses will also be made use of, depending on the action involved.
For reports there is the | OPEN READ ONLY command to prevent a license from
being used.
60.1 Request
Definition of request
• Each base object can be defined as a request if the Request option in the
Properties window on the System tab has been activated.
Request are created down to level A Indicating lamp. Under that level are
the manufacturer catalogs, here, for example, that of EAO LUMITAS. You can
find the manufacturer’s devices in the EAO LUMITAS catalog, here, for exam-
ple, a light bulb.
“Mixed” objects
It is not vital to first create objects with the Request option and then objects
under them without this option. Vice versa is also possible.
A number of object to handle measuring problems have been created under
the @F Functions | A General functions heading. The objects were cre-
ated without the Request option. However, the objects contain elements that
were created with the Request option.
60.2 Implementation
Types of implementation
• Request on request
Phoenix Contact
@1EA Catalog EE | A Assemblies, subassemblies | Phoenix Contact
Siemens AG:
@1EA Catalog EE | A Assemblies, subassemblies | Siemens AG
The Implement request dialog window uses a dialog area that can be desig-
nated as a “list window”. This area is used in a number of different dialog win-
dows. The vast majority of icons belongs to the “lists window” dialog area.
“List windows“ are no longer in use; instead, queries are used. The other icons
have the following meaning:
As explained above, each base object can possess the Request option. How-
ever, in most cases the base objects will possess the Device class. Select the
entry D Devices from the Class dropdown list.
The fields Start object and Base object can be set by means of drag & drop:
Drag the desired objects onto the field by using the mouse.
With Start object you determine which object is used as starting node when
searching for device requests.
The Base object field provides an additional filter to narrow down the
search.
The requests that have been found are shown in the list area, depending on
how the filter has been set. One or more objects can be marked in the list win-
dow, in the usual way.
Marked requests can now be allocated to devices from the base objects or to
the unit/location view. This can happen individually or collectively:
Correspondingly, the edit field Request will be set in the Properties window
of the newly created object.
An implementation presupposes that the device request and the manufacturer
device are reasonably similar. In certain cases Comos does not carry out an
implementation and informs the user accordingly by means of an infobox.
Technical implementation
The technical basis for the use of product data is a change of base object.
1. First of all, a base object that is to serve as the basis of the request
(“prepare requests”) is configured.
2. In addition, base objects are created for the manufacturer devices. Often
this is done by importing catalogues of manufacturer devices (“importing
manufacturer devices”).
3. A planning object in which the product data-related inputs are made
(“planning work”) is created on the basis of the request base object.
4. The request changes into a manufacturer device once all the required
inputs have been made:
4.1 If it involves individual or special production items in the planning
objects, then there are no manufacturer devices in the base data that
you could make a selection from. In this case the inputs in the
planning object can be used so as to create a manufacturer device in
the base data.
Although thus by definition the details in the previous planning
object and the new manufacturer device are the same, this step is
important. This step determines that the previous inputs are now
valid and relevant for ordering (“manufacturer devices created by
feedback“).
4.2 However, as a rule the manufacturer devices have already been
prepared in the base data. Comos offers from all the manufacturer
devices the partial quantity that matches the concrete planning
inputs in the product data-related attributes. The user decides for one
of the manufacturer devices offered and Comos sets this device as
the new base object in the planning object (“selection of
manufacturer devices”).
Limits
Supported CDevice Classes:
• Class Device
• Class Element
• Class Accessory
• Class Position
• Class Location
• Alternatively: Right-click in the white window area (not in the table) and
select the | NEW | RIGHT mouse command.
Click in the User/Group line on the [...] button:
Activate the Request option on the System tab in the base object.
Set operator
A field for the operator is made visible.
The operator stipulates what relationships between the templates in the base
object and the planning data are to be valid. The “=” character (equals sign)
was selected in the above example. This means that input in the planning data
must be exactly the same as the template from the base data so that the input
is valid.
Exactly which entries in the Operator list are available depends on the type
of display of the attribute. The operators have the following meanings:
None An input must be made on the planning page, but it does
not matter what kind of input.
=, >, < etc. Numeric comparison between the input on the planning
page and the template.
Within, Only applicable with range attributes. The input on the
Outside planning page must be respectively within or outside the
the values of the template from the base object.
Prefix Alphanumeric comparison. The input on the planning
page must be the prefix of the template from the base
object. This is very useful with order numbers. Within
the order numbers the first digits often give type details
and the remaining digits merely add additional ordering
details.
For example, if the order number for a motor is
M4x0815, where the “M” stands for motor and the “4”
for a four-pole connector, it is then sufficient to input the
prefix “M4” on the planning page to describe the
product adequately.
Subset Alphanumeric comparison. In a similar way as for
Prefix, you only need to enter part of the template from
the base object on the planning page; but in this case the
input can be made at an desired point in the template.
Please note: The display field that is made visible the amount of space avail-
able for the other areas of the input field. Check the size of the input fields and
enlarge the individual areas or even the overall frame of the attribute.
Switch to work mode via the mouse menu. You can now input values into the
attribute in the usual way:
Input values
The gray display field can be seen on the far right. No inputs as such can be
made into the display field, instead the inputs are taken over from the left and
displayed.
While the user can subsequently overwrite on the planning page the Minimum
field and the Maximum field, the details in the display field remain
unchanged.
You can set via an attribute how an attribute with the Combination (= pro-
duct request) property is to be displayed on the planning page.
In this case the attribute with the name ProdReqShow must exist in the base
object on the tab with the name SYS . This attribute must be created as a Com-
bobox with three states.
0 - Display request data and real unit data
(corresponds to the previous display)
1 - Display request data
2 - Display real unit data
The Properties window is not automatically updated when switching over the
Combobox. For that reason it is a good idea to explicitly initiate an update in
the OnChange script function:
Sub OnChange()
'After editing the unit or the value
Set App = Workset.Globals.AppCommand
App.Execute "RefreshDeviceForm", ""
End Sub
See also the script function with which you can control the output of the prod-
uct data in reports: SECTION 61.7: OUTPUT PRODUCT DATA.
Please note: In the long term there will only be one keyname for eCl@ss.
Effect: When an import operation is started, then first of all a branch with the
name of the manufacturer is created in the base data. The manufacturer
devices are stored underneath this node point.
If templates had been input at the base object for the request, then these tem-
plates are visible:
Details for the request
Otherwise the attribute can be edited in the normal way in the course of the
planning. The subsequent procedure to be followed depends on which type of
implementation is chosen.
Application
Make all the preparations described above.
Once all the required inputs have been made, click in the Properties
window of the planning object on the Create base object ”product
data” icon.
The icon can only be used if the user possesses the Product data function
right. In principle, this icon and the associated functionality can occur in the
case of objects of class Accessory , class Element and class Device .
Effect:
1. A base object is created in the project from which the original base object
came.
2. This new base object becomes the new basis of the planning object.
3. In this new base object the inputs that had been made for the planning
object are now taken over as the inputs.
4. The Request option is removed. A manufacturer device base object is
now allocated to the planning object, more specifically, the one which had
been created above.
5. Due to the allocation of a manufacturer device, the orange background
function now takes effect, see SECTION 61.6.3: DEVIATIONS FROM THE
MANUFACTURER DEVICE TEMPLATES (ORANGE BACKGROUND).
Application
Drag a branch of a planning project or a base object into the Start field.
Effect on a branch of a planning project:
1. All the planning objects lying underneath it are searched to see if product
data had been input into them.
2. A base object is created for each planning object in which product data
had been input. This base object is then located in the project from which
the original base object came.
3. This new base object becomes the new basis of the planning object.
4. In this new base object the inputs that had been made for the planning
object are now taken over as templates.
Please note: In the long term there will only be one keyname for eCl@ss.
Effect:
When the feedback is initiated (with the “Create base object” icon in the
Properties window or the [EDIT] button dialog window, as applicable), then
1. First of all, a branch with the name of the manufacturer is created in the
base data.
2. The new base objects for the manufacturer devices are created underneath
this node point.
When the dialog window is open, the planning object has already been entered
in the upper area (here: Test2).
Controls
The upper window area is based on a “planning objects default query”.
Determine property
This button is not typical for an object query, but only exists in this dia-
log window. This option evaluates the “Request” property (= IsRequest).
Request : Only planning objects that possess the “Request” property appear
in the upper list.
Device : Only planning objects that do not possess the “Request” property
(IsRequest = False) appear in the upper list.
Please note: The above option does not take into consideration whether the
planning objects possess any product data-related attributes at all. Thus too
many objects can appear in the list.
Under no circumstances select the | DELETE command from the mouse menu
while in the table so as to “clean up” the list, because that action would delete
the marked objects from the database.
Use the object query filter so that any unwanted objects are no longer dis-
played.
Update planning objects
Please note: This concerns the upper button. This button also exists for
the lower list window.
Effect: When options are changed, you must update the upper list with this
button. (The list is also updated automatically, depending on the settings.)
If columns had been deleted or inserted, the search must be carried out again
with this button. Effect: Those base objects whose attributes match the upper
selection appear in the lower list
Effect: This base object is set for all the above selected planning objects.
The dialog window remains open and you can edit the next planning objects.
Once a manufacturer device has been allocated, the inputs in the planning
object and templates from the manufacturer device base object are compared.
If your inputs do not match the templates that are visible in the additional dis-
play field, then the input fields are shown in orange.
A hint appears in the Tooltip if the mouse briefly hovers over one of the
orange input fields:
Symbol files
A symbol file contains all the symbols from the relevant one of the seven sym-
bol types within EPLAN. In other words: a component can appear in a maxi-
mum of seven different types of depiction.
• Variants in EPLAN symbols
Position changes (rotations) are controlled by variants. The rotated symbol
is thus not calculated but the relevant separate symbol is created for up to
four different angles of rotation.
This is no problem when importing, since each of the variant symbols can
be used and processed further.
However, rotated symbols cannot be exported, since there is no
corresponding form for rotated symbols in EPLAN. If a rotated variant is
exported to EPLAN, the rotation is ignored completely and the base symbol
is exported. if you intend to export to EPLAN, then you should only work
with unrotated variant symbols.
• Separate management of symbols in EPLAN
In EPLAN the symbol files are kept strictly separated from the base data and
the project data. Within the project data there is only a text reference to a
Plot frames
A plot frame is used to print out (plot) information. This roughly corresponds
to a Master Report in Comos.
However, document management in EPLAN is relatively limited and there
are only one or a few plot frames. Comos is different: here a large number of
reports can be used, and from a technical point of view, as many as you wish.
In Comos it is also not strictly necessary to work with Master Reports, since
a report that can be printed out can be generated.
Forms
Forms take in information and display it. The forms are used within a plot
frame and are then called plot forms. Forms are not Evaluation Reports from
the Comos point of view, despite what one might think from the name.
The EPLAN default forms are:
Cable plan
Terminal strips overview
Cable overview
Terminals connection plan
Parts list
Device list
Terminals parts list
Switch cabinet layout
Table of contents
Title sheet/cover sheet
PLC (SPS) overview
Compared to EPLAN, Comos has more options for handling information. For
example, you can collect data in object queries that is completely divorced
from any type of documentary display. Cosmos only makes a graphic repre-
sentation of the data in the reports.
Project data
EPLAN projects (i.e. planning data) fundamentally only exist in the form of
documents (“pages”). These pages contain all the planning details and also
anything from one to seven references (links) to symbol files. There is no sep-
arate form of data management such as there is in Comos in the form ofob-
jects.
In Comos there is also a document-oriented view of the planning data in the
form of the reports, but Comos reports and EPLAN pages do not match func-
tionally one to one. In SECTION 62.1.2: EPLAN PAGES IN COMPARISON WITH COMOS
REPORTS you can find a comparison of the most important properties from the
point of view of importing.
Binary files
Moreover, binary files can be managed within EPLAN. Comos can of course
manage binary files of all types, but these files cannot be imported from
Comos via the EPLAN interface. They have to be transported “by hand” to
Comos as required.
Page numbering
EPLAN projects (i.e. the planning data) fundamentally are only made up of
documents (“pages”). The identification of the planning information kept
there is done primarily through the designation of the documents; thus this
property has considerably greater importance within EPLAN than in Comos.
See SECTION : THE EXF TAB.
Page type
EPLAN pages always have an entry under “Type ”. What is meant by this is
the page type.
Type (EPLAN):
A = Circuit diagram (Logical, Interactive )
B = Free graphic (Graphic, Interactive)
C = Switch cabinet layout (Graphic, Interactive)
D = Plot frame generation (Graphic, Interactive)
E = Title sheet/cover sheet (Graphic, Interaktiv)
J = Table of contents (Graphic, Automatic)
K = Terminal plan (Graphic, Automatic)
L = Terminal parts list (Graphic, Automatic)
M = Terminal connection plan (Graphic, Automatic)
N = Cable plan (Graphic, Automatic)
O = Parts list (Graphic, Automatic)
U = Ordering list (Graphic, Automatic)
P = Device list (Graphic, Automatic)
Q = PLC page (Logical, Automatic)
FG device list
EPLAN page for PLC
Terminal strip overview
Cable overview
Title sheet/cover sheet
PLC overview
Form :
This field is not filled in manually as a rule, but takes over the text relating
to the form used when importing the EPLAN project data. The text is passed
back to EPLAN when exporting, and then EPLAN attempts to allocate a
form on the basis of the text.
Many pages in EPLAN have a form, but by no means all. For example,
EPLAN circuit diagrams have no form, but on the other hand a switch
cabinet layout does. Whether or not an EPLAN page possesses a form
therefore does not depend on whether this page is interactive.
The EPLAN documentation explains the criteria by which EPLAN pages do
or do not possess forms.
Page size
EPLAN pages do not use DIN sizes. The page sizes must be transferred as
well when importing EPLAN pages.
In the default release database supplied with Comos there are a number of
report templates that have already been set up with valid EPLAN page sizes.
As a rule these report templates are marked with the appendage “EPlangr”.
Multi-page documents
As far as we know at the moment, there are no multi-page documents in
EPLAN. Each document thus comprises exactly one page. The ownership of
the pages can be determined on the basis of the numbering. If pages are gen-
erated automatically (by a form), then multiple separate pages are created as
required.
In Comos there are multi-page documents.
In principle, “normal” Comos data can also be exported to EPLAN, but this
data is then placed as images or free graphics. Thus this data can no longer be
changed or edited within EPLAN. In practise, it is virtually impossible to
organize the original Comos data in such a way that a functional and consis-
tent EPLAN project can be created with it.
If you nonetheless wish to work further with EPLAN, then proceed as fol-
lows:
• Create a special EXF project within Comos.
See SECTION 62.2: PREPARE COMOS PLANNING PROJECT.
• Export all the required base data in EPLAN:
Article base data; Symbols; Plot frame; Forms
See the EPLAN documentation, you can find a schematic overview of these
procedures in SECTION : EXPORTING ARTICLE BASE DATA FROM EPLAN, SECTION :
EXPORTING SYMBOLS FROM EPLAN, SECTION : EXPORT PLOT FRAMES FROM EPLAN,
SECTION : EXPORTING FORMS FROM EPLAN.
Currently the first article number is read in Comos when importing the project
data and written in the device of the allocated symbol object in the first field
of the Article data .
The following steps are then carried out in the base objects of the
symbols:
3.1 Determine class / sub-class
The Class / Sub-class is set accordingly:
- Contacts (normally open, normally closed, etc.), component type from
[0 - 49]: class Element , sub-class None
- Coils, component type from [50 - 99]: class Device , sub-class
Contactors/relays
- Terminals, component type from [100 - 149]: class Element , sub-
class Terminal
- All other objects: Class Device
If no base object link is set, then the variants inherit from the symbol base
object from 3 the Specification tabs taken from @A Article and the
class/sub-class.
4.2 Transferring the EPLAN symbol to the Symbols tab
A symbol script is created from the data of the ExF symbol file and
stored in Comos at the base object of the relevant element on the
Symbols tab.
This is also done if a base object reference had been set!
4.3 Setting up a naming convention
If there is the corresponding data in the symbol file, a corresponding
text mask is created on the System tab.
This does not occur in the case of a base object link.
4.4 Creating connectors
In Comos symbols must possess connectors so that they can be
connected. This is done by creating the corresponding connectors on
the Connectors tab.
This does not occur in the case of a base object link.
Terminals
1. EPLAN terminals only possess one connector, while Comos terminals
possess two. In addition, the two Comos terminals are classified as
“inside” and “outside”.
The second terminal connector is created automatically and connected
graphically during the import operation. This is done by drawing a line
through the connector that exists and identifies the next connector (in
graphic terms) on the document.
2. A terminal strip is not input in the exf file for each terminal, but only for
specific terminals. The ExF label is not sufficiently unique to include all
the subsequent terminals of this terminal strip (up to the next terminal
strip).
For that reason the allocation of the terminals to the terminal strip is done
as follows:
This allocation is taken over if there is a unique allocation of the terminal
and terminal strip within the ExF data.
All other terminals are allocated on a purely graphic basis. This is done
Path texts
The path texts are taken over and created as report objects. The path designa-
tion is written in the description for all objects of the path.
Screening / shielding
EPLAN cables can have several forms of shielding or screening. The location
of the screen connection can be moved.
This functionality is to be implemented in Comos.
Connections
In EPLAN connectors are automatically joined when they are uniquely allo-
cated in graphic form (for example, vertically under one another without any
obstacles in between).
If you do not want an automatic connection of this type in a particular case,
then you have to place an “interrupter” between the connectors in question
between the two objects.
If a connection has to be “bent”, then “diversion points” must be placed, these
being objects that only go to one connection and continue on at a right angle.
All these functionalities are reproduced when importing and exporting.
PE connectors
PE connectors are not uniquely marked as such in the ExF data. The conver-
sion still remains open concerning this aspect.
Potentials
Potentials are always logical in EPLAN. Comos recognizes logical and phys-
ical potentials. All potentials are created as logical potentials in an import
operation. Physical potentials are changed to logical potentials during an
export operation.
If you right-click on the globe in the Units tab or the Locations tab, a number
of objects are offered to you.
A mixed system is made available on the Units tab: sub-units and also loca-
tions can be created underneath units.
Only locations can be created on the Locations tab.
This object structure directly implements the Page numbering function
from EPLAN and may not be changed. See SECTION : THE EXF TAB concerning
Page numbering .
Please note: if you export to EPLAN, the existing object structure, in connec-
tion with the Page numbering project option, has a decisive effect on the
page numbering created within EPLAN.
In other words: If you freely plan within Comos and then transport this data
to EPLAN, then you must pay close attention to ensure that the existing struc-
ture of the planning objects matches up with the Page numbering setting in
the project.
The labelling systems are based on the base objects in Import | @EXF EPlan
Im-/Export | @EX objects under mouse menu new.
This catalogue is a copy of the Comos EE catalog but without its links and ref-
erences. This means that this catalogue always has to be maintained sepa-
rately.
Circuit diagram
The circuit diagram has a document-specific symbol bar with the most impor-
tant symbols.
• PLC terminal
PLC terminals can be placed both on circuit diagrams and on PLC cross-
reference lists. The PLC terminal can be regarded as a type of channel. PLC
terminals are also called “end terminals that can have cross-references”.
Terminal setting tab:
The channel address is input in the PLC address field.
The channel type is input in the Connector type field.
• Terminal
“Normal” terminals possess no address, but can be allocated to a type of
channel. The type of channel can be stipulated on the System tab.
“Normal” terminals can only be placed on circuit diagrams, not on a PLC
cross-references list.
• Plugs
As for terminals.
62.4.3 Cross-references
Objects that have been placed several times in the circuit diagram are played
with cross-references. Example: an auxiliary contact of a protective motor
switch.
If symbols possess a cross-reference of this type, then the display of the cross-
reference can be controlled within the context-sensitive mouse menu for the
symbol:
• Mouse-click on the symbol
• Right mouse button | SETTINGS | COMPONENT TYPE
• Select the type of cross-reference
Start object
– Start object is a document: only this document is exported.
– Start object is a unit, location or document group: all the documents
located under it are exported. This also includes those documents that
only exist under the start object as a reference or link: the document links
are traced back to the original and this is exported as well.
– Start object is blank: all the documents of the entire project are
exported.
M Motors
M6 Motor with 6 connectors
N Amplifier regulators
P Measuring and test devices
Q Main power switchgear (power switches, protective
switches
R Resistances, potentiometers
SL Normally open power contacts
S Switches
T Transformers
U Modulators, converters
V Semiconductors, pipes
W Changeover contacts
WM Changeover contacts, middle
WR Changeover contacts, right
X Terminals, plugs, sockets
Y Electrically operated mechanical devices (solenoid
valves, brakes)
Z Termination, filters, rectifiers
O Normally closed contacts
B Transducers to convert non-electrical parameters to
electrical parameters and vice versa
Example: fuses.
There is a fuse F1 and a fuse F3 in the symbol file from EPLAN. The ID
character for protective devices (fuses) is F. The number of current paths
then follows: 1 for an individual fuse (1 current path) and 3 for the 3x fuse
with three current paths
• Symbols tab:
Note the following regarding the symbol:
– It must be a quad grid.
– The connectors must be located on the grid points
63.1 Overview
Diagrams of diagram type DESIGN are two-dimensional scale drawings in
which the size and location of components are shown. For this purpose, only
the external dimensions of a component and any actual connections are of
importance. DESIGN diagrams include:
• Control cabinet diagrams (so-called “design diagrams”)
• Installation diagrams
• Tray diagram (in preparation)
Placing a view
From a technical point of view, a view is a “projection”. This means that it is
first necessary to calculate what exactly is visible from one point of view
because objects could be concealed by other objects.
This calculation takes time. For that reason no views are placed initially on a
DESIGN diagram. The user decides for himself whether he requires a front
view, a view from above, etc. If you are planning a simple control cabinet,
then often just one view is enough: the front view.
Therefore, the first work step in a design diagram is always to place at least
one view:
This frame is a particular view and determines the area in which you will
work. Thus it is not permitted to let any objects “stick out” out of this view
frame.
However, this way you lose the option to display the design diagram in Viper
3D.
It is not possible to subsequently drag a view onto objects that have already
been placed. If you started without a view, then the report must also remain
so (or else have all its contents removed).
Multiple views
It is possible to place all six views on the report. However, that will greatly
increase the time needed for calculation of the report. Thus, only four of the
six views that are possible are prepared in the icon bar for the sample reports:
Please note: Each of the six possible views (“front view”, “side view left” etc.)
may only be placed once on a report. For technical reasons a user is not pre-
vented from placing a particular view multiple times on a report, but the
design diagram will not function correctly in such a case.
Selection of views
When you select a view, the grab points of the view are displayed. In addition,
some of the other views - but not all - also receive grabs:
For this reason objects that are used in DESIGN diagrams must possess six
different symbols. Six diagram types were created for this purpose, with each
diagram type relating to just one of the six views:
However, the symbols of these six diagram types are not created by drawing
them in the Symbol Editor. Instead they are the result of a script. If the dimen-
sions of the component are changed, the displays resulting from this are then
automatically made available as symbols.
On the Symbols tab of the base objects there aresymbol scripts for the
DESIGN...diagram types that must not be deleted.
When you place a view on a design diagram, then a corresponding @SEC-
TION...” planning object is created in the planning data underneath the report:
The main function of this view frame is to read one of the diagram types and
to display the corresponding symbol.
If the tab is missing, it can be created with the help of database adjustment,
(see SECTION 49.3: DATABASE ADJUSTMENT). To be able to use an object on a
DESIGN diagram, this tab must contain meaningful data.
“Device dimensions”
Contains the actual data of the component dimensions. Mass: This is evalu-
ated in the overall calculation of the mass.
The remaining attributes are self-explanatory.
The following options can be activated separately for the diagram (the report)
and for printing. These options are summarized as “Diagram <- Display ->
Printer ” to make it clear that the options on the left control the display in the
diagram and the options on the right the printing of the relevant information.
• Construction lines
Construction lines centered vertically and horizontally.
• Mounting distance
Dotted line around the external contour.
• Area for mounting
Dotted line within the symbol
• Drill holes
Display of the drill holes, if defined.
• M027 Mounting type/ M028 Instruction
Self-explanatory
• M029 Mounting
Controls whether another component may be placed on this one. An error
results in a warning message.
• M029A Cabinet type
Classifies an object. This attribute works together with the MKY Mounting
key tab. See ETK025, P. 63-12.
• LAYER Layer
Sets a layer. If this layer is hidden in Viper, the component is no longer
visible.
• Position of origin
Controls the point of origin of the cuboid and thus also the positioning of the
cuboid in 3D.
The default is centered vertically and horizontally.
• Values for cubical objects / Values for cylindrical objects
The user must make sure that he has filled in attributes that match the 3D
type.
Comos can evaluate the actual drill hole data of the installation planning by
means of an Evaluation Report. A report template is given in the base project
in branch Crp Report templates |ET |PDA Data sheets|-PDA.01.
In order to do so, the following details must be available:
Tab EBD Installation data : the Mounting instructions: Mounting type
attribute must be set to Screwed , Bolted, Pinned or Riveted .
The Evaluation Report should be located underneath the object of the mount-
ing plate. The system: The mounting rail is first of all given its own drill holes;
and after that the mounting rail transfers these coordinates to the mounting
plate.
Drill hole objects : [CREATE]
Creates planning objects for drill holes in the Navigator. However, these are
not placed automatically on the report but must be placed by the user.
63.2.3.2 Views
Each view has its own base object. The base objects of the views are located
in: ET |1 Modules |A Cabinet engineering |A Library objects
|V Views. See also SECTION 63.2.2: TECHNICAL IMPLEMENTATION OF VIEWS / SYMBOLS
FOR VIEWS.
ETK025
The table is used to monitor mounting in control cabinets.
Name Unique string
Description Any. This is the visible text in the Cabinet type
dropdown list.
Value 1 Relative installation height.
Value 2 Contains data for export to Triathlon.
MP = Mounting Plate; MS = Mounting Rail; BT =
Component; KK = Cable Tray.
Value 3 - Not used.
Value 10
Value = 1: cabinet frame, this is excluded from all control checks. The cabinet
frame be set to value = 1.
Value > 20 and not placed on the plate / rail. etc.: Message: Floating freely in
space. This warning message is also output in the following Evaluation
Report: base objects, ET |1 Modules |A Cabinet engineering
|A Library objects |0 Cabinet system |PQA.1 Check for consist-
ency.
Application = “ELO.DESIGN”
ConstructionMode = 1
In design diagrams it makes sense to work with the construction mode
(ConstructionMode = 1). This activates the extended placing points. In the
construction mode lines and dimensions snap not only to the grid but also to
the grabs of the objects.
ConnectionLineMode = “R”
Activates autorouting.
MainDocument.DrawingScale
This controls the scale of a diagram with diagram type DESIGN. Example:
MainDocument.DrawingScale = 1/10. This reduces the size of the display
of the symbols on the report. The report itself remains unchanged.
A report template has been prepared in the StandardDB:
CRP |ET | PED Design diagrams| PED.01 Design diagram
Icon bar
The icon bar is organized by means of specifiactions. The options script of the
report contains the following call:
Set SpS = Document.Specifications.Item("SYS").Specifications
etc. This calls the specifications that are located in the properties of the design
diagram on the SYS System data tab.
63.2.4 Examples
Two examples have been prepared in the mouse menu of the design diagram
(control cabinets): mouse menu of the report, |NEW |D CABINET ENGINEERING.
“01 Cabinet (example)” is suitable for beginners.
The example “51 LSC predesigned frame for PLC cabinet, type SPS 06” orig-
inates from the sample catalog for Lütze Systems:
ET |1 Modules | A Cabinet system |C Structures |L Luetze
Systems |B |S01 Cabinet, W 600
Circuit diagram
In practice, the circuit diagram will be created first. Its cabling is then trans-
ported onto a control cabinet diagram. The following gives a small example
that shows how to proceed without a circuit diagram.
Do this by creating a unit and selecting |NEW |NEWS DOCUMENT from the mouse
menu of the unit. Report template ET |PED|PED.01 is given to this document.
Next. select |NEW |NEW OBJECT from the mouse menu of the unit. Assign base
object ET | 1 |A |C |C |S01 to this object.
Placing views
First of all place one or more views as described before. If, for example, the
front view is placed as the first view, it is still blank. If the left-hand side view
is placed as the second view, a dotted line then appears in the front view. This
line represents the working height of the side view. And vice versa – when the
report is refreshed, updated or saved – the working height of the front view
appears in the side view.
Once a view has been selected, the edit field Working depth appears in the
icon bar:
The associated dotted line is shifted if you enter another value and update the
report.
Cabinet parts
Next, place the cabinet frame in one of the views; the cabinet frame is auto-
matically placed in the other views at the height of the working depth of the
views.
All the required objects are prepared in the mouse menu of the cabinet frame:
Create the objects in the Navigator and then place them in the design diagram.
Please note that the display of the cabinet parts differ, depending on the view
in which the cursor is currently located. For example, the back wall should be
placed in the front view or back view because it will only be shown as a line
in the other views.
Mounting parts
The rails can be created on the report and rotated as desired. However, only
horizontal and vertical fastening makes any sense.
Tray parts
The trays can also be created on the report and rotated as desired. And here
too, only horizontal and vertical fastening makes any sense.
If a tray is placed on the edge of another tray, then the other tray lights up in
yellow:
The two trays are then connected in the planning data. In order to connect
them, CX connectors are created and then automatically joined.
If the trays have been connected correctly in this way, they will be considered
during the autorouting process.
Slotted hole
Hole objects have been predefined in the icon bar:
Use the left-hand grab to change the height of the object and the right-hand
grab to change its length . You cannot rotate it.
The slotted hole does not create a planning object but only exists on the report.
There are further graphical auxiliary symbols in:
ET |1 |A |A |D
and in
ET |Z |Z
Deleting
| DELETE| OBJECT
The object is deleted from all view of all reports and the planning data.
| DELETE| IN ALL VIEW MODES
The object is only deleted from the views of this report.
Positioning EE objects
Almost all objects of the EE catalog (ET |D Devices) may be placed on
design diagrams.
Use drag & drop to move components into one of the view frames. Many of
the components are symbolized with a captioned box. These components are
displayed in the proportions that had been specified in the data of the Instal-
lation data specifications tab: group Device dimensions , attributes Width ,
Depth , Height .
As a rule, terminal strips are displayed in full in DESIGN diagrams when
placed, meaning with both free and occupied terminals.
• Mounting key: checks by means of the mounting key whether the object is
allowed to be placed on the component.
The width, mounting area and mountability of a component are specified on
its Installation data specifications tab. The mounting key is determined
through the Mounting key specifications tab of its base object.
Selection
A typical feature of DESIGN diagrams is that various objects lie on top of one
another, depending on the relevant direction of viewing.
If you click somewhere in the DESIGN diagram, then the component that is
in the foreground is selected first of all. The next click activates the grab
points (grabs) of this component. Then comes the object lying underneath,
then the grabs of this object, and so forth.
From a technical point of view, the coordinates of the placement point are
evaluated during the selection (the so-called “Z order”). Since DESIGN dia-
grams are logically three-dimensional (even if you have activated only one
view), the placement point of an object also has a three-dimensional coordi-
nate.
The actual order of the coordinates (and hence of the objects) is evaluated. If
a user places the objects in an order that does not make sense, the selection
will also be made accordingly.
If the base data is configured correctly (for example, by means of Mounting
key ), then there will be automatic monitoring during the placement. It is
checked whether the order is permitted, and if it is not, the user is notified
accordingly. However, the placement will not be prevented.
Hiding
Objects selected in a view can be hidden in this view by using the | OPTIONS
| HIDE mouse menu. They remain visible in all other views.
If a view on the report has at least one hidden object, the view object then
offers the | VIEW/SLICE | SHOW ALL OBJECTS mouse menu.
Construction mode
If the construction mode had not already been activated by means of the report
template, then do so from the mouse menu: click on the report, | OPTIONS
| CONSTRUCTION mouse menu.
Extended placement points can be activated with the “Construction mode”
option. In construction mode lines and dimensions snap not only to the grid
but also to the grab points of the objects.
Scale
There is the | OPTIONS | SCALE FACTOR command in the mouse menu of the
report.
It is used to reduce the display of all the symbols on the report. The report
itself remains unchanged. This setting overrules the corresponding setting in
the report template.
Please note that the view objects themselves also have the option to set a scale.
Please leave the default settings unchanged, since otherwise the calculation
times will increase excessively.
3D views
A three-dimensional display is also provided if a “2D/3D installation engi-
neering” (Viper Electrical Engineering) license is available.
Select within the Navigator the unit under which the design diagram is
located.
Click in the Comos menu on |VIPER 3D EDITOR |ELECTRICAL ENGINEERING.
63.2.5.5 Evaluation
Consistency check
The placing of components is checked by means of an Evaluation Report. A
visual collision check is possible with the “2D/3D installation engineering”
license.
Report template: |Crp |ET |PQA| PQA.13 Check for consistence
(cabinet).
The report for consistency checking has also been prepared in the context-sen-
sitive menu of the control cabinet.
63.2.5.6 Printing
A design diagram that had been produced in Comos can be exported and pro-
cessed further by the Triathlon program from Metzner GmbH.
A design diagram must be created so as to be able to use this interface. There
is the SYS.SYS99 button on the design diagram.
If this base object is used, the attribute [Export -> Triathlon ] can be found in
the document.
If the button is pressed, the report information is then written in a Triath-
lon-compatible data format. Currently the attribute of the button determines
where the file is written: Properties window of SYS99 Export , tab Script ,
function OnClick(): filename = "[path details]"
The filenames are normally:
<Report name>.ABP
<Report name>.VER
Tab “Symbols”
Only the DESIGN_XY view is specified for the duct, since it is the only view
that is important in practice.
ET |1 Module |B Installation engineering |A Base objects
|D Plan view
Objects (and the mounting data of these objects for 2D/3D) required for draw-
ing the ground plan are located here. For example walls, windows, etc.
Tab “Symbols”
Cable supplies are also used in SLINE circuit diagrams.
Categories have been prepared for this unit. When the unit created, the cate-
gories are automatically created below the unit. Objects placed on the instal-
lation diagram are automatically sorted into the categories.
Preparation
It is difficult to implement a functional example of an installation diagram
without a detail diagram. For that reason the above-mentioned example
project also uncludes a detail diagram.
Placing views
The ready-made reports do not have a view yet. If you were to work without
a view, then the DESIGN diagram type would be used instead of the
DESIGN_<suffix> diagram types.
Hence the first step must always be to place a view, normally the ground plan
from above.
Placing objects
Now you can either assign an existing DWG drawing or draw a ground plan.
Now place a cabinet and other objects in the ground plan.
Pay attention to the working height when placing the objects. If necessary, the
corresponding height level must be set beforehand: select the view object,
|VIEW/SLICE |SET WORKING HEIGHT mouse menu. It is a good idea to first draw
all the objects for a particular height before going on to the next layer.
Connecting objects
The connector tool works differently in the DESIGN diagram type as com-
pared to when in ELO.
The report template marks all the connections as “ready-only”. Thus, when
you draw a connection on the installation diagram, the corresponding plan-
ning objects must already have been connected beforehand (for example by
drawing a circuit diagram).
If that is the case, two objects on the installation diagram can be connected by
drawing a line with the connector tool. The moment that the line is completed
by means of the right mouse button, it is automatically converted into a tray:
• Either the default tray assigned to the document is created. That way a cable
tray with arcs and lines is created, for example.
• Alternatively, a tray can also be created in the Navigator and activated
before drawing the connection (overlaid with grey). Then the elements of
this tray are used to replace the connection.
When placing individual tray elements, make sure that the elements touch
correctly (an element is shown in bright yellow) so that the connectors join
the elements.
Assigning cables
The cables have already been created in the detail diagram.
Next, drag the existing cables into the ducts. Activate object assignment in the
symbol bar for this purpose and drag a cable onto a tray. A popup appears that
offers all the ducts under the tray, then select a duct from here and the cable
is assigned.
Monitoring
The installation diagram can be monitored with the aid of the Evaluation
Reports or in the Viper Electrical Engineering 3D display.
64 I&C sub-module
I&C is offered in Comos PT together with the EE module as sub-module
“I&C, Electrical Engineering (E/I&C)”. EE and I&C thus have many struc-
tures in common. If in doubt, EE provides the guiding structure. Example:
there are purely I&C base objects sorted within the EE branch in the standard
database.
The I&C sub-module offers all the objects and functions required to design
measuring points and to provide signals, channels and devices. It offers mech-
anisms for automation when creating I&C loop diagrams and possesses all the
reports and queries that are needed to monitor or print out the work. Mounting
planning has also been taken into consideration.
The I&C planning is based on options that had been created in the P&ID plan-
ning. Some of the base objects that are relevant in the I&C planning are hence
managed within the scope of the preparation of P&ID base data (for example,
positions and functions). We therefore refer at this point to the following sec-
tion: see SECTION 57.1: BASE DATA, LISTS, TEMPLATES.
The unit structure has already been created in the P&ID planning. See
SECTION 57.1.2: UNIT STRUCTURE for more detailed information on unit planning.
In the standard database there are numerous management objects and reports
that correspond to EN/DIN and ANSI respectively and also for the AKZ unit
structure, so as to make your work easier.
I&C engineers primarily work in the EE/I&C Engineering folder, which is
created automatically underneath the sub-unit. See SECTION 64.2.1.1: FOLDER
“EE/I&C ENGINEERING” for more information regarding this folder.
As a rule, positions and functions have already been completed within the
P&ID planning. In the event that any positions and functions are missing after
completing the P&ID planning, they can also be created in the I&C planning.
Creating positions: see SECTION 57.3.2: CREATING POSITIONS.
Creating functions and designing them (via function code, process coupling
and process connector): see SECTION 57.7.5: WORKING WITH FUNCTIONS IN THE PLAN-
NING VIEW.
If the unit structures according to DIN or ANSI that had been preprepared in
the standard database are selected in the planning view, the folder is created
automatically under a sub-unit. In the case of a unit structure according to the
AKZ it is created underneath the sub-unit of the sixth level.
These unit structures are provided if @J | @G Project settings, general
had been selected in the project options; see SECTION 64.3.1: PROJECT PROPERTIES.
The actual I&C planning is done in the EE/I&C Engineering folder. For
example, here are the positions and functions, underneath which the signals
and channels are created.
The folder is created in the planning view during the P&ID planning. Under-
neath the folder there are numerous help and administration objects to sim-
plify the I&C work. However, they are not a prerequisite for carrying out the
required I&C work steps.
The following base objects that have all been entered on the Elements tab of
the EE/I&C folder have been preprepared underneath the folder:
Positions
– In the unit structure according to EN/DIN and AKZ:
P01 Positions acc. to DIN/IEC,
P02 Measurement
– In the unit structure according to ANSI:
P02 Positions acc. to ANSI
See SECTION 64.5.1.2: REMAINING I&C EVALUATION REPORTS for more information
regarding these Evaluation Reports.
– PPCB Hookup with positions
– PPCC Parts list evaluation (Mounting accessories)
– PPCE Counting Devices
See SECTION 64.8: MOUNTING CATALOG for more information regarding these
reports.
See SECTION 64.5.1: EVALUATION REPORTS for more information regarding addi-
tional I&C reports.
“Search objects”
Base object:
ET| 3| 01| 10 Search objects.
Can be created by means of the | NEW mouse menu of the EE/I&C folder. See
SECTION64.2.2.9: “ET|Q QUERIES, TABLES, SCRIPTS”.
Can be created by means of the | NEW mouse menu of the EE/I&C folder. Is
only used in conjunction with the S7 interface.
Only set up in the unit structure according to EN/DIN.
64.2.1.2 “@Position”
64.2.1.2.1 General
As a rule, positions have already been created beforehand in the P&ID plan-
ning. See SECTION 57.1.3: @P POSITIONS regarding the structure of this branch in
the base data and regarding the properties of positions.
The following objects that are relevant for the I&C planning have been
preprepared in the base data underneath this node:
“@P Positions”
– Measuring functions, actuating functions, neutral functions (and general
functions according to ANSI):
This is only still created in the I&C planning in exceptional cases. See
SECTION 64.2.1.3: “@F FUNCTIONS”.
“@P| 01 Measurement”
– ...| PFSM.2 Position diagram
The assembly groups for signals can be expanded by the base data
administrator and adapted to your own needs. See SECTION 64.7.1.2.2: WORKING
WITH ASSEMBLY GROUPS: “ASSEMBLY GROUPS (SIGNALS WITH CHANNELS)” regarding
the functioning of the assembly groups preprepared in the standard
database.
– ...| 05 FD Assembly groups (functions with signals and FD
modules):
This is only needed in FD and inherits from: FD| D| 01| @Template| AB
FD Assembly groups.
If the unit structure had been selected correspondingly in the project proper-
ties, these objects can be created in the planning view by means of the | NEW
mouse menu of the position.
The details at the tabs are required later for selection of the signal.
When a position is created, all the static links are automatically updated by
Comos PT. If changes are subsequently made to the attribute values, the
updating must be done again manually by selecting from the context-sensitive
mouse menu | UPDATE STATIC LINKS OF THE TAB.
See also “EX020 Ex-Protection” tab, P. 64-9 and “IC010 Request and security” and
“IC020 Environmental conditions” tabs, P. 64-9 of the functions.
“Ex-Protection” tab
In the standard database, the tab originally comes from the following collec-
tion of tabs:
ET | Y Attribute catalog| 5 I&C tabs| EX020 Ex-protection
| 02 Unit| EX020 Ex-protection.
64.2.1.3.1 General
As a rule, functions had already been created in the P&ID planning and placed
on the diagrams. This section only contains the information regarding func-
tions that is relevant for pure I&C planning. Please read SECTION 57.4: FUNCTIONS
concerning the general properties of functions.
If the project structures are incomplete at the beginning of the I&C planning,
they can easily be supplemented or updated by means of the | NEW mouse
menu. Depending on which unit structure had been selected in the project
properties, other objects are suggested here. See also SECTION 57.7.5: WORKING
WITH FUNCTIONS IN THE PLANNING VIEW regarding the creation of functions.
The attributes of the tab originally come from branch ET| Y Attributes
catalog | 0 Attributes collection | 01 System.
The attributes of the tab originally come from the following branches:
• ET | Y Attributes catalog| 0 Attributes collection| 06 Clima-
/ Security-/ Protection data| ICE101 Zone/Category
The assembly groups for signals can be extended by the base data administra-
tor and modified to suit your own needs. Example: inserting assembly groups
for measurement functions with other function codes.
“...| A2 Assembly groups (signals with channels)”
Assembly groups that serve as the inheritance source for the Assembly
groups (signals with channels) that had been created in branches @F| A1
Functions acc. to EN/DIN and @F| A2 Functions acc. to ANSI have
been preprepared here for a number of functions with function codes. The
assembly groups underneath @F| Z| A2 inherit in turn from base objects
from branch ET| 3| 01| 01 Assembly groups (signals with chan-
nels).
See SECTION 64.7.1.2.2: WORKING WITH ASSEMBLY GROUPS: “ASSEMBLY GROUPS (SIGNALS
WITH CHANNELS)” for more detailed information on how these assembly groups
function.
“...| Z Mounting”
These objects inherit from objects from the mounting catalog: ET| B | B
Mounting catalog. A number of measurement functions according to EN
and ANSI and actuating functions according to EN and ANSI possess ele-
ments that inherit from the objects that are created here. In this way it is pos-
sible to create mounting objects for mounting planning within the planning
view by means of the context-sensitive mouse menu. See SECTION 64.8: MOUN-
TING CATALOG.
The base object inherits from object @G| S| P Structure for process
engineering and has the object properties Folder .
The inheritance mode of the elements is set to Active , and the Virtual option
is set to Off . As a result, the hierarchy and document groups are automatically
created when the document groups folder is created on the Documents tab of
the planning project.
The following sub-folders and document groups are primarily of importance
for I&C work:
• @G| S| P| PD| PDA Data sheet:
This section only covers the objects from the ET branch that are important for
I&C. All the devices that are described here possess specific properties that
are explained further in the following section, SECTION 64.2.2.1: BASIC STRUC-
TURES.
In addition to these there are also objects that have additional properties and
capabilities. These special objects are explained in detail in the following sec-
tions.
The numbers from 0 to 3 have no meaning and are only used for sorting.
The letters A to Z are allocated according to the Comos “CDeviceConstants”
class constants:
A = Accessory
B = Assembly = mounting, etc.
See the “Comos Kernel ” documentation regarding CDeviceConstants.
-| C C Condensors
-| D D Logical elements
-| E E Various
etc.
These DIN letters are also created for the planning objects. There is a text
mask on the System tab of the base object for this purpose. Here is an exam-
ple for a sensor:
Together with a counter, the letter “B” is thus used in accordance with DIN to
create the name of the planning object.
64.2.2.1.3 Symbol
All simple devices possess one or more symbols on the Symbols tab. The
main type of diagram for I&C is DETAIL_IC::
These symbols can be modified as required. Please note that the symbols are
hierarchically inherited downwards.
The diagram type symbols initially possess a fixed size and are optimized for
a grid and a scale. However, the symbols can also be used on reports with a
different grid and a different scale by using various options.
Each symbol possesses a placement point that is used for positioning on the
grid. The placement point only seldom coincides with the top left-hand cor-
ner, but instead has been created in such a way that the connectors come to lie
on the grid.
All the diagram types that are important for I&C:
DETAIL_IC
This type of diagram is only used by I&C, and primarily with loops.
RI2
I&C requires as input the functions placed in the P&ID reports.
DETAIL_JIC
US standard for E/I&C reports.
SLINE
Single line display in E/I&C reports. Resembles block diagrams.
DETAIL
The actual wiring is shown as a rule in the EE reports, hence in the DETAIL
type of diagram.
However, Interactive Reports do not play as important a role in the I&C sub-
module as in the other modules. Instead, the main emphasis is on the Evalua-
tion Reports.
Text symbol
Many objects possess a “text symbol“.
This text symbol is inherited by all base objects underneath the base object
that first defines the symbol. However, the text symbol is not evaluated by all
base objects. It is only evaluated by base objects that call the text symbol as
follows:
*V*P Textpoint*
Layer “29” is an arbitrary number that is only used to bundle certain items of
information. Any other layer could also be input. Depending on the individual
data structure, it is necessary to ensure that you do not inadvertently use here
a layer that has been used elsewhere.
Header “eS3” is an arbitrary designation that is only used to bundle certain
items of information. Any other header could also be input. Please note that
some headers are reserved for system use. Thus, for example, Header.Class
= "eZ" means that the text cannot be moved.
64.2.2.1.6 Elements
You work with elements in I&C. Initially only the elements are placed on the
reports.
In addition, they are an inheritance source for the assembly groups for motor
control offered under position @P| 01| E Electrical value.
See also SECTION 64.2.2.2.4: “ET| 3| 99 MCC DRIVERS”.
Search objects display the result of a query directly in the Navigator but are
not queries in themselves. When the search object is expanded, the query is
executed automatically and the results are displayed in the Navigator in the
form of the usual tree structure.
Some of the search objects created here are created automatically underneath
the EE/I&C Engineering folder:
The search objects are used, for example, to move control devices from the
unit view into the location view. This is done in interaction with query
ET| L| C| 1| 06| QDev001 Request implementation (by using the
implementation capabilities). See SECTION 64.7.2.3.6: IMPLEMENTATION.
Other search objects are created under positions and find any channels that
have not been placed on the loop diagrams yet.
See SECTION 64.2.1.1: FOLDER “EE/I&C ENGINEERING” regarding the EE/I&C Engi-
neering folder.
They are entered as elements of signals that are created underneath ET| S
Signals. They are thus offered in the Navigator through the | NEW mouse
menu of the signals.
The device channels that are created here possess base object references to
| ET | E Elements. See also SECTION 64.2.2.6: “ET |E ELEMENTS” and
SECTION 64.2.2.10: ET |S SIGNALS.
As far as possible, the names of the elements (A,B, etc.) correspond to the
names in branch | D Catalog, where they are used as well.
The device channels only possess a System tab that describes the system and
object settings.
Definition of channels:
A defined input or output of a device, consisting of one or more connectors,
which all fulfill a task that is common to them all. In this sense the power con-
nection of a device is a channel (consisting of plus and minus) and the signal
connector is an additional channel.
A channel request connects a signal and a device. See SECTION 64.7.1.2.2: WOR-
“ASSEMBLY GROUPS (SIGNALS WITH CHANNELS)”.
KING WITH ASSEMBLY GROUPS:
“ET| L| C| O Objects”
Here are the base objects. The objects under ET| L| C| 1 Structures
DIN/EC possess a base object reference to the objects that have been created
here.
The objects of the lowest location level possess among other things assembly
groups as elements. The assembly groups have a base object reference to the
assembly groups that preprepared under ET| L| C| 3 Copy templates.
“ET| L| C| 3 Templates”
The base objects preprepared here make available I&C assembly groups (via
assembly group references). The assembly groups are managed within the
base project, Locations tab: Assembly groups (copy templates| IC
Measuring and control engineering.
The points to be noted when working with the assembly groups is described
in the sub-sections regarding controllers (SECTION 64.7.2.3.5: ASSEMBLY GROUPS)
and the field distributor(SECTION 64.7.2.6.2: CREATING THE FIELD DISTRIBUTOR).
64.2.2.10ET |S Signals
Information on how to work with signals in the planning view is given in
SECTION 64.7.1: WORKING WITH SIGNALS.
64.2.2.10.2Tabs / attributes
64.2.2.10.3Scripts
The following scripts have been preprepared on the Script tab of the base
object of a signal:
OnMenuCreate / OnMenuExecute
The mouse menu of the signal is extended with these events. If the signal has
been set within a set of steps by an action block, then all the steps with which
the signal is connected are listed within the context-sensitive menu. If a step
is selected, the system navigates to the corresponding action block.
64.2.2.11ET |U Units
ET|U|C Instrumentation & Control| @Template:
This node contains the base objects of the planning objects underneath which
the I&C assembly groups are created in the base project.
Structure of the branch:
ET| U| C| @Template| F Function
and you can navigate between the two objects. This means that there are
objects left over that have no additional function in the course of the
planning, but the actual work is easier to follow and to track later.
64.3.2.1 AREANAME
The Areaname determines where objects are to be placed in loop diagrams
when the “Automatic Placing” auto-function is used.
To this end I&C objects on the SYS System tab possess the AREANAME
page area attribute, which is assigned to this standard table.
See SECTION 64.6.4.1: OVERALL CONDITIONS IN THE BASE OBJECTS: “AREANAME”.
Basically, the user simply selects a series of subreports that are to be evalu-
ated. These subreports must have the same names as other objects; any typing
errors will result in the subreport not being run. The list attribute is filled in
by means of this standard table to avoid typing errors and to simplify use:
Subreports of configurable reports, S001 Realization tab
List attribute LI_001| S001_001 Description .
It is assigned to this standard table.
64.4 Standard-Loop
Loop, diagrams and assembly groups for signals with channels presuppose
the following standard loop:
To ensure that they are linked together correctly (signal pointer, connectors),
the objects of an assembly group must, for technical reasons, be created in the
planning view in the same branch.
The result is that objects that are in fact used on the Locations tab are initially
created on the Units tab.
Later the objects are moved from the unit view to the location view. For this
purpose Comos uses the Detail tool “Request and implementation” and the
location pointer. More information on this is given in SECTION 64.7.2.3.6: IMPLE-
MENTATION.
See SECTION 64.6: AUTO FUNCTIONS OF LOOP DIAGRAMS regarding loop diagrams.
• Report template:
CRp| IC| PDA| PDAF| PDAF.1 Position sheet
The PLT position sheet shows selected tabs: it describes the request attributes
of an position and is used to prepare for ordering.
• In the planning view: through the | NEW mouse menu of a device request
from these branches.
• Base object:
ET| O| PDA| PDAA Request specification
• Report template:
CRp| IC| PDA| PDAA| PDAA.1 Product request Device
This report lists the attributes that are required to design the device requests.
The report functions in the same way as the report Product request
Function .
• In the planning view: offered from the | NEW mouse menu of the function
according to EN or KKS respectively.
• Base object:
ET| O| PDA| PDAA Request specification
• Report template:
CRp| IC| PDA| PDAA| PDAA.2 Product request Function.
This report lists the attributes that are required to design the signal and the
device requests.
The function partially inherits attributes from the sub-unit. If there is a dis-
crepancy between the function and the sub-unit, the Edit fields are shown in
orange. The Product request function report only lists those attributes of a
function that are visible in the Properties window of the function. This also
applies if there are any discrepancies.
Right-click in the report on the text of an attribute to bring up a navigation
menu.
• Report template:
CRp| IC| PDA| PDAA| PDAA.3 Data sheets Motor
Using the Position sheet as an example, the following chapter will explain
how configurable I&C reports function. All the details apply to the other con-
figurable reports as well.
64.5.1.1.2 Overview
The position sheet is introduced in the following as an example for reasons of
easy legibility. All the details apply likewise for the other configurable
reports.
The position sheet possesses as usual a report template (this being a crp file).
Other report templates can be used within this report template, a technique
that is sometimes called “subreports”. However, it would be more exact to
talk of “subreport templates”, because reports as such cannot be used in a
report template. See also SECTION 46.3.7: PLACE SUB-REPORT for the definition of
subreports.
However, this configurable I&C report template does not use a fixed number
of “subreports”. For that reason a fixed number of attributes is not output
either.
The user (or the base data administrator) can control by means of attributes
exactly which subreports – and hence which attributes – are output, for exam-
ple on the position sheet.
A subreport of its own was created for each tab, and this outputs only the
attributes of this tab. You can set up any combination of tabs through a com-
bination of these subreports.
A Realization tab is created in the properties of the subreports. This subre-
port is used by the position sheet if the position sheet has been input in this
attribute.
Subreports are located in:
@F Functions | Y Attributes catalog | 1 Tabs collection,
and
ET| Y| 5 I&C tabs.
Depending on how you set up the usage for the individual subreports, the data
of the corresponding tabs either is or is not output on the report. All position
sheets that are based on the same position sheet report template display the
same tabs.
The use of the following reports can be enabled or disabled in the default set-
tings:
• Request attribute
• Request attribute Function
• Request attribute Motor
• PE position sheet
Overview
Attributes are used to control the position sheet. However, attributes are only
available in a report and not in a report template. The technical implementa-
tion of the position sheet is thus somewhat more complicated than usual:
• There is the crp template for the position sheet.
• There are the report template objects for the subreports. However, these are
only required to be able to create the report objects of the subreports (see the
next item).
• There are the report objects of the subreports. The attributes are available for
control on these reports.
Once you have the tabs, you then search for the appropriate base data
(Chap.CSpecification), and as a rule (but not compulsorily) the objects are
in a @Y branch in the base project. You take the owner of the base object that
has been found and search underneath it for a report that has the same name
as the tab (hence it also has the same name as the base object of the attribute):
If Left(SubReport.Name,len(CDevChap.Name)) = CDevChap.Name
The next step checks whether the report (and hence the subreport) is to be
used (If Report.UseSubreport(Subreport) = True Then). This test is
done in the options script, see the following section.
If the test is True, the report template from the report is then searched for and
used in the position sheet (Subreport.CDocument.FileName).
A test is made for this list attribute to determine whether it has an entry that is
the same as the name of the position sheet. The logic is as follows:
Specifications.Item(S001_001).GetXValue(i) != Document.CDocu-
ment.Name; whereby the actual programming implementation is somewhat
different, for obvious reasons.
Only exactly matching entries are permitted in this list attribute; any typing
errors means that the subreport cannot be executed. The attribute is filled in
from a standard table to avoid typing errors and to make operation easier:
<base project: standard tables>
| ET | Y Attributes catalog | O Documents | S001 Subreport
| S001 Document types
Only reports that had been entered in this standard table can be selected.
Query
The position sheet has a list of devices (as a query underneath the template)
as an auxiliary object. It lists the device requests and / or real devices of the
position. If the real devices are assigned to device requests, only the real
devices are included in the list of devices.
All the attributes that can affect the display of a function are listed for func-
tions.
This report collects all devices. It does not list the device requests. The report
hence offers an overview of the loop from the device view. “MB” is the (Ger-
man) abbreviation for “measuring range”.
They possess a series of auto-functions that facilitate the work of the I&C
planner. The auto-functions are introduced on the basis of the example of the
PFSM.2 Position Diagram in SECTION 64.6: AUTO FUNCTIONS OF LOOP DIAGRAMS.
Base object:
ET| O| PFSM position diagrams
ANSI loop diagrams have the same properties and automatic mechanisms as
those of PFSM.2 position diagrams. However, in the standard database some
of the control parameters of the options script have different values.
The main difference is that ANSI position diagrams have a horizontal align-
ment and not a vertical alignment.
Base object:
ET| O| PFA PFA.04 Position diagram, single line
Call:
When the loop diagram is first opened and also from the OPTIONS | AUTOMATIC
PLACING mouse menu of the loop diagram.
Comos handles the updating differently depending on whether you clicked on
a blank part of the diagram or else marked an object and then called up the
context-sensitive mouse menu:
• Automatic Placing was called up for the entire diagram (no selection):
Comos searches for the owner of the loop diagram, or in other words, the
position. Starting with the devices (device requests and their
implementation) located underneath the owner and using the joined
connectors, it is recursively checked with which objects these start objects
are associated. The search for placeable objects or for start objects for
placeable objects is also run on signals .
If Automatic Placing was called up after the first opening, then in addition
all the objects that had already been placed on the diagram are set as start
objects.
• Automatic Placing was called up for one or more selected objects:
Only the selected objects are used as start objects to search for the new
objects to be placed. The search is again run recursively and through the
joined connectors.
All objects that are directly or indirectly connected with the start objects are
placed on the report, in the page area specified by the name of their AREA-
NAME attribute and in the direction that was specified in the options script of
the report template (see SECTION 64.6.4.2: OPTIONS SCRIPT OF THE REPORT TEMPLATE).
The default spacing between the objects is 5 grid points, so for a 4 mm grid
that is 20 mm.
The Automatic Placing function also places terminals that are connected in
the database.
Special cases
• Comos proceeds as follows if an object whose AREANAME attribute has
the value “Not set”:
If it involves an element, the AREANAME attribute is checked at the
MainDevice (the associated main component).
Call:
When the loop diagram is first opened or via the OPTIONS | AUTOMATIC CON-
NECTING mouse menu of the loop diagram.
All the reading connections are displayed on the loop diagram - this means
that Comos reads from the database whether two objects are joined to one
another through their connectors and displays this connection (blue connect-
ing line).
If the AutoConnectX parameter has been set in the options script of the report
template, then in addition all objects located underneath each other are joined
both graphically on the diagram and in the database, via their connectors. See
SECTION 64.6.4.2: OPTIONS SCRIPT OF THE REPORT TEMPLATE regarding AutoCon-
nectX.
If cables have already been laid in the database (having been assigned to con-
nectors by means of pointers) and if the AutoLoopCables = True variable
has been set in the options script, then these cables are placed on the report as
well.
In the base project the attribute specifies the page area on which the object is
to be placed during Automatic Placing. If the AREANAME at a base object is
Not set , Comos proceeds as described in Special cases, P. 64-44 so as to still be
able to determine a page area on which the object can be placed. If an ARE-
ANAME attribute is not found anywhere or if its value does not correspond to
any of the segments on the diagram, the objects are placed at the left-hand cor-
ner of the drawing
Value2: AreaNumber
The Value2 of standard table AREANAME , the so-called “AreaNumber”, is
relevant when placing terminals:
If Value2 (thus the AreaNumber) is set to “99”, this area is used in AutoCon-
nect as the starting point for a number of placed terminals.
Example: Six terminals have been placed in a row on a diagram. An object
has been connected to “Terminal 1”. The object is in a line with the terminals.
An object has also been connected to “Terminal 6”. But the object is not
located on the report in a line with the terminals. The connecting line between
the terminals and the objects must be “bent” at some point. Using Value2 =
you can force the “bend” to be made within the placed terminals. Thus termi-
nals one to three could line up with the first object and terminals four to six
with the second object.
area was specified through the AREANAME attribute, the objects are
subsequently placed on single-line diagrams but not on normal loop
diagrams.
• PreferredConnectionDirection (type: String)
Specifies in which direction the objects are to be placed during Automatic
Placing.
PreferredConnectionDirection = “X“: horizontal
PreferredConnectionDirection = “Y“: vertical
Default: “Y“
In both cases the base objects are of class Element , sub-class Segment .
The databases are structured as a rule from customer-specific points of view.
In some of the databases the segments can be found under @E Elements -
@D Detail plan elements - segment (labelling) .
The segments are dragged out to the required size by using the grab points. If
you use an object with base object ET| D| O| A| 11 O Segment the name
of the segment is missing. (The name determines which objects are later to be
placed in this page area.) It is input via the properties of the segment. See also
Properties of a segment, P. 64-49.
Direction of a segment
Please note that segments have a “direction”!
All the segments on a loop diagram have a common “direction”. The direction
determines in which direction the placed elements are to be lined up.
The direction is controlled in the report template of the loop diagram by
means of the PreferredConnectionDirection = {X,Y} script option. If
“X” has been set, the placed elements are lined up horizontally, and vertically
if “Y” has been set.
Properties of a segment
Right-click on the rectangle to open the Properties window.
Options group Label is valid for: this is required in connection with abbre-
viated labels and is not important for Automatic Placing; the default setting
can be used. The name of the segment is entered in the Name edit field. This
name is used in the base objects as the placing target. A number of names have
already been prepared in the dropdown field, these names can be used as a tar-
get point by terminals, for example.
Once you have divided up the working area into several segments and have
allocated the area names that are required, the preparations have been com-
pleted in the diagram. Of course the prepared diagram can be used as a docu-
ment template so that in actual production work any desired number of
diagrams can be derived from this template.
64.7.1.1 General
A signal designates the information unit that is further processed in logical
diagrams, for example, “ON” or “OFF”. It illustrates the input or output of the
control technology. The signals are taken from IEC 1175 “Labelling for
Signals and Connections”.
In Comos signals are used in addition to identify objects that belong together.
See SECTION 64.7.1.4: CONNECTOR: SIGNAL OF OWNER.
This section explains how to work with signals in Comos. It is assumed here
that you are working with the unit structure according to EN, which has been
preprepared in the standard database. See SECTION 64.1.2: UNIT PLANNING.
See SECTION 64.2.2.10: ET |S SIGNALS regarding the structure of the base objects
of signals.
See SECTION 64.2.2.10.2: TABS / ATTRIBUTES regarding the tabs of signals.
The base data has been preprepared in the standard database in such a way that
the signals can easily be created by using the | NEW mouse menu of the func-
tions. Assembly groups for signals with channels have also been preprepared
in the mouse menu to make it even easier to work with signals.
64.7.1.2.1 Overview
Here is a brief overview of the menu entries that are available:
• | D2 MEASURING INSTRUMENTS
A complete list of the instrumentation. Contains both examples for device
requests and a number of examples for manufacturer catalogs (real devices).
See SECTION 64.7.1.2.3: CREATING SIGNALS AND DEVICE REQUESTS MANUALLY.
• | FP1 FUNCTION MODULES
Only important for FD.
• | Z MOUNTING
See SECTION 64.8: MOUNTING CATALOG.
• | PDAA.2 REQUEST SPECIFICATION FUNCTION
This report contains ordering details. It involves a report that can be
configured by means of attributes. See “PDAA.2 Product request Function”, P. 64-
31.
Structure
The assembly groups offered in the Favorite assembly groups (signals
with channels) mouse menu are a selection of the assembly groups con-
tained in Assembly groups (signals with channels) and inherit from them.
In addition, the channel request is linked by its connectors with the input
channel under the signal.
• Optional if there is the corresponding selection in the mouse menu: the
request at a measuring transmitter supply channel.
• Please note: There are no terminals in the assembly groups.
In the object view the above I&C basic structure (unit view) looks like the fol-
lowing:
Subunit / Category
-|Position
-|Measurement function
-|Signal
-|Device request
The connection between the signal and the device request is the device chan-
nel request. In the above example the device channel request is shown as
Measuring transmitter (element) .
If the assembly groups are created in the planning view, these objects are cre-
ated and connected in a way that implements the Comos standard loop. First
of all, all the objects of the assembly group are created on the Units tab. Later
a number of them are moved to the Locations tab by means of the implemen-
tation function.
The mouse menus with the channels are self-explanatory. The | A ACTION
BLOCK mouse command is only of importance for FD.
Please note: a channel request must be created at this point in time, otherwise
the following automatic mechanisms do not function! The channel request
must be matched to the device channel request that is to be created. An exam-
ple is given below.
3. Connecting manually
Please note carefully the input and output of the objects! If you create and
connect objects manually, it is necessary to connect the relevant objects cor-
rectly. Do not confuse the input and the output. Above all, this concerns the
terminals: here too there is an I-connector (= input) and an O-connector (=
output).
If you mix up the I-connector and the O-connector at the terminals, neither
Automatic Placing (see SECTION 64.6.2: AUTOMATIC PLACING) nor Marshalling
Management (see SECTION 64.7.3: MARSHALLING MANAGEMENT) will work cor-
rectly later.
The alignment of the terminals is as follows (O = Out; I = In)
Structure
The assembly groups also include an assembly group for functions with func-
tion code “Y”. This assembly group can be created through the | NEW| C
ASSEMBLY GROUPS (SIGNALS WITH CHANNELS) mouse menu of an actuating
function.
It functions in the same way as the assembly groups described in
SECTION 64.7.1.2.2: WORKING WITH ASSEMBLY GROUPS: “ASSEMBLY GROUPS (SIGNALS
WITH CHANNELS)”, but consists of different objects:
• A signal with an output channel (created as a request). In addition, under the
signal there is the request for a positioner control channel and a solenoid
valve channel.
• Optional: the request for an isolating amplifier channel.
If the option has been activated, the connector then inherits the signal from the
owner of the planning object that the connector belongs to. However, the term
“owner” is to be taken in the wider sense with respect to this option:
1. Direct owner
A signal passes on the signal information to the connector via
the device.
Signal name adaptation allows you to search for all signals within a branch
and to replace the standard name of a signal with the relative name of a con-
nector.
All the positions with all the signals appear on the left-hand side:
If you mark a signal at the left, all the connectors of the position belonging to
the signal appear on the right-hand side. Both connectors that were created
directly at the position and all the connectors of all objects located underneath
the positions are listed.
The connectors are listed with their relative names. Relative = name of the
connector plus the path from the position up to the connector.
Double-clicking on a connector:
The relative name of the connector is taken over at the signal as the name. The
label of the signal is retained.
The control cabinet objects and the racks contain the actual I&C structures:
CONTROL CABINET (GENERAL)
Can contain both general racks and also DCS and ex-protection racks.
CONTROL CABINET (DCS) (DCS = Distributor Control System)
This is always required. See SECTION 64.7.2.3.2: CREATING A DCS CONTROL CABINET.
CONTROL CABINET (EX-PROTECTION)
See SECTION 64.7.2.4: EX-PROTECTION CONTROL CABINET.
MARSHALLING PANEL
Objects of the marshalling cabinet have also been preprepared in the DCS
control cabinet. If that is not sufficient, this marshalling cabinet is available
as well.
Request devices and real devices are offered in the DCS rack, these being, for
example, various types of measuring transmitters, isolating amplifiers and the
like. These devices also have channels (signal transmitter elements or control
channels):
Task 1:
The field devices (measuring transmitters, sensors, valve elements) remain in
the unit view and must be connected with the location view through the field
distributor. It is necessary to determine through a bill of quantities just how
many objects need to be wired. As an alternative, the Devices with location
query can be used.
See SECTION 64.7.2.6: FIELD DISTRIBUTOR concerning the implementation.
Task 2:
The control and signal processing channels need to be migrated from the unit
view to the location view. In doing this it is necessary to determine how many
objects need to be created in the location view: this is either done with a bill
of quantities or with the nodes created at the Units tab: SO Search objects
| 01 Unimplemented DCS channels. Compare SECTION 64.7.2.3.4: THE CARDS.
Then E/I&C objects are created in the location view and implemented on the
objects from the unit view. The objects migrate from the unit view to the loca-
tion view as a result of the implementation.
See SECTION 64.7.2.3.6: IMPLEMENTATION concerning the implementation.
Procedure
The request objects (for the measuring transmitter elements and the control-
ler) were created in the plant design. This predetermines the “start” and the
“end” of the loop.
The following workflow is suggested in this documentation: first of all, the
control system is determined and specified. The work continues in the direc-
tion of the measuring transformer: This is followed by the ex-protection, then
the marshaling process, and finally the field distribution.
64.7.2.3.1 S7 / HW config
In Comos there is an interface to import and export objects of the Siemens tool
“HW Config” (= Hardware Configuration). This includes the “symbols” of
the Simatic project.
See SECTION 56.3: SIMATIC S7 (EXPORT, IMPORT) for further information.
Select from the Class field the Element entry. All the channel requests that
are created under the signals have class Element .
Then drag the sub-unit from the Units tab into the Start object field.
You now get a big list in the actual planning data. It can take a while until the
list is complete. The list still has to be filtered:
Navigate to the object of one of the inputs or outputs included in the list. Find
its SYS System specification tab and there the AREANAME attribute. Drag
this attribute from the Navigator into the head of the table:
A new column is inserted. This column can now be filtered: select the Control
system filter text.
If it is simply a matter of determining the number of objects, you can see how
many objects there are in the filtered list at the bottom left in the status line of
the bulk processing.
2. Search objects
As an alternative to the bill of quantities, the number of inputs and outputs can
also be determined through the SO Search objects | 01 Unimplemented
DCS channels node from the Units tab, which are automatically created
underneath the EE/I&C folder in the standard database.
Creating cards
The cards can be created once you have determined the number of channel
requests:
Context-sensitive mouse menu | NEW of the rack:
• | A REQUESTS
If you create general cards, such as | A1 ANALOG INPUTS, you must connect
the cards yourself later.
• | B ARTICLE /MANUFACTURER
An example for real devices. Here too you must connect the cards yourself
later if that had not been done already by the requests.
• | C ASSEMBLY GROUPS AREA OVERLAPPING
The assembly groups are the counterpart of the assembly groups in the unit
view. See SECTION 64.7.2.3.5: ASSEMBLY GROUPS below.
• | X TERMINAL STRIP
The | X TERMINAL STRIP terminal strip is intended as a terminal strip for the
rack. However, as a rule no terminal strips are required for the rack, and
instead you connect the I/O modules (usually designated as “inputs” and
“outputs” in the Comos data) directly with the corresponding terminal
strips.
The assembly group is wired (the connectors of the objects in the Ex-Protec-
tion folder with those in the MC bay (control) folder). This wiring is retained
when the objects are moved.
64.7.2.3.6 Implementation
Most of the objects that have been created and edited up to now have the
“request” property. An “implementation” is now done in a first step.
The following types of implementation are possible:
• A request (concrete) is implemented at a request (general)
• A manufacturer device (“product”) is implemented at a (concrete or
general) request,
Now switch to the Locations tab and select a suitable card from the DCS
control cabinet. Drag the card channels into the Implementation column:
All channels that are located in the DCS rack are displayed automatically.
The Request column shows whether or not this channel has already been
set as an implementation for a request object.
If the “Implement request” replaces object project option is enabled, the
request object no longer exists for an implemented channel. Instead the
signal is shown in such as case.
In the next step, switch to the Units tab and there open the required search
object, which in our example is the | IA DCS Input analog search object,
in the EE/I&C Engineering folder underneath the noede SO Search
object | 01 Not implemented DCS channels . All the analog DCS inputs
that exist as request objects without an implementation are now displayed in
the Navigator underneath the object.
Now mark a channel request object in the Navigator and drag it into the
query window, into the Request column of the desired implementation
object.
If the channel type of the request object matches the channel type that is
displayed in the Channel type column of the implementation object, the
implementation object is implemented at the request object. The request
object is removed from the search object.
Warning: The implementation must be confirmed by either pressing [APPLY]
or [OK] before it is actually written to the database. If it has not been saved
yet, the implementation process can be undone by pressing [CANCEL].
Multiple request objects can also be marked and assigned in one operation.
64.7.2.4.1 Moving ex-protection from the DCS control cabinet into the ex-
protection control cabinet
Open from within the Navigator the data structure of the Control cabinet
(DCS) object and search there for the Ex-Protection folder. Mark all the
objects in the folder (without the connectors) and select the | CUT command
from the mouse menu.
Right-click on the Control cabinet (Ex-Protection) object and select the
| PASTE command. All the wiring is retained.
You can now delete the empty Ex-Protection folder from the Control cabi-
net (DCS) object.
Mark all the objects in the folder (without the connectors) and select the | CUT
command from the mouse menu. Go to the Control cabinet (MC) object and
there paste the objects that had been cut into BAY (CONTROL SIDE). The empty
folder 50 MC Bay (Control) can now be deleted.
Drag the sub-unit from the Units tab into the Start object(s) field. You now
get a big list in the actual planning data. It can take a while until the list is com-
plete. The list still has to be filtered:
The filter can be set on the “Don’t place ” text. Since the field objects cannot
be placed on the loop diagrams, they should be managed in such a way that
the AREANAME attribute in the base data is set to Don’t place . Instead of
setting the filter, you can also search for field objects with a specific base
object, for example, base object ET|D|B|A Sensors.
On the left-hand side of the bulk processing, mark all the objects that are to
be collected together in one location.
Switch within the Navigator to the Locations tab and there search the field
location that has just been created. Drag the location object on the right-hand
side of the bulk processing into the Location field:
Effect:
All the objects in the right-hand window that are marked are given this loca-
tion as a pointer. This means that references to these objects are now collected
together in the field location, and this makes the objects easier to work with
subsequently.
Next, switch within the Navigator to the Locations tab and drag the desired
field location into the Location column of a field object:
The field object is automatically given a location pointer to the field location.
A reference to the object now appears underneath the field location.
Warning: The pointer must be confirmed by pressing the [APPLY] or [OK] but-
ton before it is written to the database. If it was not saved, the setting of the
pointer can be undone by pressing the [CANCEL] button.
You can also mark multiple field objects at the same time. They then all get
the same location pointer.
Instead of the bill of quantities, you can also use the Devices with location
query and configure the search parameters in the same way as for the bulk
processing.
Terminal strips have been prepared ready for use in the mouse menu of the
field location object:
| A FIELD DISTRIBUTOR | 01 EXI-FIELD DISTRIBUTOR and | 02 EXE-FIELD DISTRIBU-
TOR
A general terminal strip with 20 terminals.
| C1 ASSEMBLY GROUPS| 01 TERMINAL STRIP (20) and | 02 FIELD + JUMPER DISTRI-
BUTOR (20)
An assembly group with 20 terminals .
Select the ... | 02 FIELD + JUMPER DISTRIBUTOR (20) assembly group to continue
this example:
Since the field devices possess a pointer to the field location, references to the
field devices are displayed underneath the field location in the Navigator.
Click on a field device and its channel and now drag the connectors of the
device channel into the left-hand column Connected with of the Strip tab:
The connectors can also be connected directly in the Navigator: simply drag
the connectors of the channels onto the free I-connectors of the terminal strip.
Please note: The field devices and their channels should already have been
implemented at this point in time. If you wire the requests objects to the ter-
minal strip and set an implementation at the request object at a later point in
time, the implementation objects do not accept the wiring.
Now the loop has reached marshalling “from both sides”, and the signal infor-
mation is available “from both sides”. All the objects that are required are col-
lected in the Marshaling panel object in the bays.
The marshalling manager thus only needs to investigate one marshalling cab-
inet, where it recognizes objects with the same signals and offers these for
connection.
Procedure
Drag a marshalling cabinet into the Below object field:
The signals appear in the left-hand window area. If you click on a signal, then
the objects that possess this signal appear at the right.
All you have left to do is to click on the open connection in the marshalling
bays and to select [CLOSE].
The “assign product data” work step belongs as a rule to EE and hence it is
described in SECTION 59.7.3: PRODUCT DATA AND REAL DEVICES. Here is just a brief
summary:
The device structure in the base data has three levels:
64.8.1 General
The catalog should be modified by the administrator to suit your own special
requests and needs.
The designations in the present mounting catalog are in the first instance arbi-
trary and should likewise be modified as required. However, the important
thing is to maintain the general structure of the catalog within the customiz-
ing. Otherwise the functionality cannot be guaranteed!
Mounting objects
Mounting objects are located in the base data underneath ET| B| B Moun-
ting catalog.
Mounting accessories
Mounting accessories are located in the base data underneath ET| B| Z
Mounting accessories.
Expense objects
Each mounting accessory possesses an expense object. The expense object is
an element of the mounting accessory and is created automatically underneath
it.
It possesses the IC080 Mounting expense tab, on which the mounting
expenses are input.
Although expense objects work together with the mounting catalog, they are
in a branch of their own on the base data side:
ET| C| Expense.
Tabs or attributes that are added individually must be taken into consideration
accordingly in the Evaluation Reports.
Please note: as is usual, the base data is also set up by means of base object
references. The original tabs can thus exist in an entirely different place within
the structure tree. The simplest way to get to the originals is to use the
| NAVIGATE menu item of the context-sensitive mouse menu.
Available in:
Base project, Documents tab,
CRP Report templates | IC Reports I&C | PPC Parts list, Hook
Up
The standard database is set up in such a way that the reports are created auto-
matically.
64.8.3.1.1 Overview
Document PPCA Hook-Up consists of three separate areas:
2
Material lists area
Hook-up drawing
3
Field for special mounting
instructions
The above illustration shows the graphic that was stored in the base project
within the base object of the mounting instruction for diagram type HOOKUP
on the Symbols tab. Changes to the graphic can only be made there. Details
on the operation of the Symbol editor and on symbols in script form can be
found in SECTION 45: SYMBOL-DESIGNER. The individual mounting elements are
identified by their display number, which is input manually in the Symbol edi-
tor and must match the name of the mounting elements.
2 2
1
3
List of positions
Abb. 64-1 Evaluation of the parts lists underneath the document owner
A cost control per position or also per unit can be quickly and easily produced
with this document.
The original of the tab is located in the base data view under node
ET | Y ATTRIBUTES CATALOG | C EXPENSE | IC080 and for preference should be
edited and extended there.
64.9 Interfaces
Class Function
Displays the “function” planning task as an object. This class is used with
equal priority in the P&ID, EE/I&C and LD blocks, whereby the sub-classes
are not of interest in a logical diagram.
The signals are typically stored underneath the functions.
Class Signal
Displays the “signal” planning task as an object. This class is used with equal
priority in the EE/I&C and FD blocks.
Base project:
• @1FP
@H|AA|AC|01 step type
Distinguishes between the initial step and the (“normal”) steps.
Application in:
@1FP | AA IEC1131-3 | AC sequencer | 01 step
Used on the Step parameters tab. Effect: Another symbol is shown by
means of graphically-relevant attributes.
@H|AA|AC|02 Priority
Application in:
@1FP | AA IEC1131-3 | AC sequencer | 02 Transition
Used on the Transition parameters tab.
@SYS ...
...@Sys | A001 | A001001 Definition mark IEC | 03 Action
block
Application in:
@1FP | AA | AC | 03
Under it is an element. The standard table on the Layout tab is used in this
element.
...@Sys | F001
Application in:
@1FP | AA | AD | A
@1FP | AA | AD | C
Is used on the Layout tab. Effect: A corresponding symbol is switched in,
depending on the setting.
...@Sys | F002 ...
| F002 | F002_001:
Application in:
@1FP | AA IEC1131-3 | AD | C
Is used on the Regulator tab (or Controller tab), Regulator (controller)
type attribute.
FUP Type
Application in:
@O | PF | PFPC
• @F Functions
Is used in base object @F Functions on the tabs.
• @S Signals
Is used in base object @S Signals on the tabs.
• @1EM Catalog MCR | F001 Function | ...
Application in:
@F Functions |A1 Neutral functions | 01 Measurement functions
Is used on the Function data measuring point tab.
System project
• @ConnectionTypeF Connection types function blocks
Defines the thickness and type of the connecting lines.
• @ConnectionTypeS Connection types signals
Defines the data types. Connectors are created in the base object and
selected from the Properties window of connectors of type “Signal ”. All
connectors (= data types) that are then allocated in the next step via standard
table @ConnectionPossibleS are defined here.
Example:
In @ConnectionPossibleS it states that connector ANY_DATE is allowed to
be connected to DATE, TIME_OF_DAY and DATE_AND_TIME.
In @ConnectionTypeS these four entries ANY_DATE, DATE, TIME_OF_DAY
and DATE_AND_TIME are located in a flat manner under one one another.
• @ConnectionTypeS | @ConnectionPossibleS
Supplementary list for ConnectionTypeS. Value 1 and value 2 stipulate
what is allowed to be connected.
Identical sub-types may always be connected together, even if they have
not been explicitly listed in @ConnectionPossibleS.
• @O Documents | PF | PFPC
Application in:
AWR Evaluation Reports | PFP |PFPC
Application = “FUP”
The following entry should be made in the options script of the report tem-
plate:
Application = “FUP”
Effect:
• Drag & drop behavior
When base objects are dragged onto the report, the generated planning
objects are created underneath the report (and not in parallel, as in the EE
report).
• Endless diagrams
Function charts are endless diagrams that have been split up visually. As a
result of the splitting up (for example, into DIN A4 areas) it is easier to tell
what a hard copy printout would look like. The user then sees all the DIN
A4 sheets in order, one after another.
Whwn you draw on function diagrams, the user can to all intents and
purposes ignore this sub-division into, for example, DIN A4 sheets. The
user simply draws connections across the boundaries of the sheets. The
connection is separated into connections across the pages that have the
relevant cross-references.
SignalLeft_X = 12
SignalRight_X = 276
SignalTop_Y = 8
SignalSlot_Count = 21
SignalSlot_Height = 8
SignalWidth = 48
SignalWidth1 = 24
SignalWidth1
SignalWidth
Pic. 65-1: The variables for the width of a signal symbol
Please note that some of the options script commands are only meaningful
when using automatic symbols, such as SignalWidth and SignalWidth1.
See SECTION 65.3.3: AUTOMATIC SYMBOLS FOR INPUTS AND OUTPUTS.
Standard-specific variables
There are options script commands that are used to control a specific standard.
These commands are likewise dealt with in SECTION 65.4.2: FUNCTION BLOCKS FOR
IEC and SECTION 65.4.3: FUNCTION BLOCKS FOR VGB.
@1FP | @Template
See SECTION 65.4.2: FUNCTION BLOCKS FOR IEC.
@1FP | AA IEC1131-3
See SECTION 65.4.2: FUNCTION BLOCKS FOR IEC.
@1FP | AB VGB - R 170 C
See SECTION 65.4.3: FUNCTION BLOCKS FOR VGB.
You can find the objects for the signals in the base data under @S Signal.
These signal objects can have a symbol of their own allocated to them. Thus
you can allocate symbols of their own to the signals for a specific type of dia-
gram such as for IEC or VGB.
Please note that the origin of the symbol must be defined in the lower left-
hand corner of the symbol so that the input/output switching and slot detection
function.
If no symbols of their own have been allocated to to the signals, then the auto-
matic symbols are used, see the next section.
System data
The system data is required so that the signals can communicate cleanly with
with other Comos objects. The system data primarily includes:
• IOA Signal type linked to standard table @S Signals | S002 Signal
type.
The signal type controls the symbol in the event that the automatic signal
symbols are used, see SECTION 65.3.3: AUTOMATIC SYMBOLS FOR INPUTS AND
OUTPUTS. In addition, the signal type controls the technical functionality of
the signal.
• S02 Data types links to standard table @S Signals | S02 Data types.
The data type of the signal also determines what type of connectors can be
selected.
Signal data
In the case of the signal data, all the information that additionally describes
the signal but is not evaluated internally within the system is collected
together. Examples:
@S Signals | S003 Operand type.
A Hardware input
This function diagram signal embodies as a rule a physical (measuring) signal
that runs into an I/O card and is further processed there by the software. These
signals are located as rule in the planning project under the position. This
means that the signal that is used in a function diagram had already been cre-
ated in the detailed planning when wiring the position.
B Hardware output
This function diagram signal embodies as a rule a physical (measuring) signal
that was sent from an I/O card and is further processed there by the software.
These signals are located as rule in the planning project under the position.
This means that the signal that is used in a function diagram had already been
created in the detailed planning when wiring the position.
C Software input
This function diagram signal usually represents a communication signal to a
higher or parallel level. Communication signals of this type are transported
over a data bus as a rule.
D Software output
This function diagram signal usually represents a communication signal to a
higher or parallel level. Communication signals of this type are transported
over a data bus as a rule.
E Variable input
A function diagram signal of type Variable is not intended to depict hardware
signals (from plant design), but instead illustrates an information module of
the controller.
F Variable output
A function diagram signal of type Variable is not intended to depict hardware
signals (from plant design), but instead illustrates an information module of
the controller.
Z Break
Break signals are used to distribute a function diagram over multiple Interac-
tive Reports. Thus the function of break signals is comparable with that of pair
references in detail diagrams.
Break signals possess a 1-to-n link: A break signal can be continued onto n
diagrams. A continued break signal can only have one source, no more or less.
5: Element Element
When an implementation is made, the name of the
implemented element is entered here.
6: Implement. Implementation
If the implementation pointer in the planning object was
set by drag & drop (that is not the location pointer!),
them the corresponding details are given at this point.
Table 65-3: Meaning of the text variables of a function diagram signal
For example, a signal of type Hardware output with fully set text variables and
placed on the left on a diagram would look like the following:
7
Unit.PUnit1.Pos1. Data point 1 S5
8
FD.2/9 Signal =SP-K1
9
Pic. 65-4: Example for a function diagram signal placed on the left
The following symbol variants are provided:
Basic symbol
Break
Please bear in mind that the majority of signal types can be placed either to
the left or the right and then the relevant symbols are mirrored horizontally.
The positions of the text variables can be swapped accordingly.
Automatic stymbols are also controlled by means of options script com-
mands, as for example SignalWidth and SignalWidth1. See SECTION 65.2.4.2:
THE OPTIONS SCRIPT FOR A FUNCTION DIAGRAM.
Please note that signals can also have a comprehensive range of Navigation
options in the same way as for other report objects. Right-click on the signal
and select one of the commands from the | NAVIGATE menu.
Text variables
All function blocks contain text variables. The text variables differ according
to the symbol and can be understood intuitively: thus connectors have their
matching counterpart connectors, objects have their label and description, etc.
If you wish to know in certain situations the exact programming definition of
a text variable, just right-click on the symbol and select | EDIT SYMBOL. The
definition of the text variables, among other things, is also shown in the Sym-
bol editor .
automatically given the existing inputs and outputs of the function block. The
inputs and outputs can be moved as desired. The function diagram for the
detail components can be used in the usual way.
Many of the usual objects have already been defined beforehand in the base
data. At the beginning of the function diagram planning you perhaps may not
know yet which object you will require; in that case you can use a blackbox .
This function block has a number of special properties.
The connectors are not defined beforehand but are only created in the course
of the planning. When you come into the vicinity of the blackbox with the
connection tool, you are offered a possible connector anywhere around the
entire external side of the blackbox. When you confirm this by left-clicking,
the connector is created both on the diagram and also in the database.
As soon as you know which function block is to be installed, you can open the
properties mask of the blackbox and set a new base object. The connections
remain as they were, as far as is possible technically. For example, the number
of connectors at the blackbox must be less than the number of connector
points at the function block, since most of the predefined function blocks have
a fixed number of connectors.
Base data
@1FP | AA IEC1131-3
You should think carefully about the use of templates in the function diagram,
since in practise parts of the planning structure often exist already. Thus,for
example, the signals have often already been created by the time that work
starts on the function diagram. It is necessary to prevent losing such work that
has already been done through the use of templates later.
There are ready-made report templates for IEC, see SECTION 65.2.4: REPORT TEM-
PLATES.
This is done by means of a grab point, by which the size of the function block
can be changed. This grab point becomes visible when the symbol is marked
twice. Depending on the size, connectors are generated automatically with
grid spacing “four”.
Step:
Input; Transition
Output; step
Output action block
The following checks are made when connecting:
• Only identical sub-types may be connected, thus only connector sub-type
transition to connector sub-type step and vice versa.
• An input must be connected to an output, and vice versa.
Both checks together ensure that the transition and step objects must always
be used alternately. The step can then be terminated with an action block.
65.5 Evaluation
The ready-made reports correspond to the ready-made report templates, see
SECTION 65.2.4: REPORT TEMPLATES.
65.6 Interfaces
Invensys: I/O series (Foxboro FoxCAE)
By means of base objects.
Siemens: SIEMATIC S7
See -> SECTION 56.3: SIMATIC S7 (EXPORT, IMPORT).
If S7 data had been imported into the EE/I&C, this can be processed further
in a function diagram.
66 PQM
PQM is covered in a separate documentation. For detailed information on
PQM, please open the PQM home page document from the Comos Help
menu.
Comos PQM (Project Quality Management) comprises:
• Version management DVM
Keywords: DVM, DQM, Version management, document import
See FD DVM.
• Extended User management
Keywords: USERS project, USER project, extended user management,
User objects, User planning objects
See FD Project USERS.
• Mail exchange
See FD Mail exchange.
• Dual Document Management (@Project/@NameSystem)
Keywords: Dual Document Management, @Project, Project revision, Unit
revision
See FD Project revision.
• Project management
• Meeting management
In addition, there are several functionalites that are linked to PQM (but are
licensed separately):
• eSign
See FD eSign.
• eStamp
See FD eStamp.
• Anonymous Data transfer
See FD Network login.
X
xlFoldermargin .......................................37-1
XML .......................................................24-23
XML display ...........................................36-2
XXDocProgID ......................................46-56
Z
Z Mounting ...........................................64-11
ZB data records (ECAD) ......................58-2
Zone .........................................................5-23
Zoom ........................................................43-2