Anda di halaman 1dari 71

OpenSteel Configuration Guide

AVEVA Solutions Ltd

Disclaimer
Information of a technical nature, and particulars of the product and its use, is given by AVEVA Solutions Ltd and its subsidiaries without warranty. AVEVA Solutions Ltd and its subsidiaries disclaim any and all warranties and conditions, expressed or implied, to the fullest extent permitted by law. Neither the author nor AVEVA Solutions Ltd, or any of its subsidiaries, shall be liable to any person or entity for any actions, claims, loss or damage arising from the use or possession of any information, particulars, or errors in this publication, or any incorrect use of the product, whatsoever.

Copyright
Copyright and all other intellectual property rights in this manual and the associated software, and every part of it (including source code, object code, any data contained in it, the manual and any other documentation supplied with it) belongs to AVEVA Solutions Ltd or its subsidiaries. All other rights are reserved to AVEVA Solutions Ltd and its subsidiaries. The information contained in this document is commercially sensitive, and shall not be copied, reproduced, stored in a retrieval system, or transmitted without the prior written permission of AVEVA Solutions Ltd. Where such permission is granted, it expressly requires that this Disclaimer and Copyright notice is prominently displayed at the beginning of every copy that is made. The manual and associated documentation may not be adapted, reproduced, or copied, in any material or electronic form, without the prior written permission of AVEVA Solutions Ltd. The user may also not reverse engineer, decompile, copy, or adapt the associated software. Neither the whole, nor part of the product described in this publication may be incorporated into any third-party software, product, machine, or system without the prior written permission of AVEVA Solutions Ltd, save as permitted by law. Any such unauthorised action is strictly prohibited, and may give rise to civil liabilities and criminal prosecution. The AVEVA products described in this guide are to be installed and operated strictly in accordance with the terms and conditions of the respective license agreements, and in accordance with the relevant User Documentation. Unauthorised or unlicensed use of the product is strictly prohibited. First published September 2007 AVEVA Solutions Ltd, and its subsidiaries AVEVA Solutions Ltd, High Cross, Madingley Road, Cambridge, CB3 0HB, United Kingdom

Trademarks
AVEVA and Tribon are registered trademarks of AVEVA Solutions Ltd or its subsidiaries. Unauthorised use of the AVEVA or Tribon trademarks is strictly forbidden. AVEVA product names are trademarks or registered trademarks of AVEVA Solutions Ltd or its subsidiaries, registered in the UK, Europe and other countries (worldwide). The copyright, trade mark rights, or other intellectual property rights in any other product, its name or logo belongs to its respective owner.

OpenSteel Configuration Guide


Contents

OpenSteel Configuration Guide

Contents

Page

Configuration Guide
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1:1 Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2:1 Installation on Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:1
Hardware and Operating System Requirements. . . . . . . . . . . . . . . . . . . . . . . . . 3:1
Disk Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:1

Read from the DVD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:1 Flexman License Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:2 How to Run OpenSteel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:3

OpenSteel Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4:1


System Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4:1 Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4:2
Setting SDNFINTMAPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4:3 Overloading Mapping Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4:3 Set SDNFMAPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4:4

Upgrade a Project for OpenSteel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5:1


Cardinal Point Plines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5:1
Update the Supplied Catalogues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5:1 Update Catalogues not supplied by AVEVA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5:5 Catalogue Upgrade Step-by-Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5:9

Installation of User Defined Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5:12

2.1

OpenSteel Configuration Guide


Contents

Special OpenSteel SITES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5:12 Integration into other PML Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5:13 Uninstall OpenSteel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5:13

Customise OpenSteel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:1


External Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:1
External Package Equivalences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:2

Colour Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:3 Tolerance Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:3 Waiting Time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:3 Export Header. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:4 Connected Members . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:4 Ignore Material Flag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:4 External Mapping File Separator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:4 Pre- and Post-processing Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:5 User-definable Material Macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:5 Maximum File Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:5 Profile Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:6 Replacement of SCTNs with GENSECs on Import . . . . . . . . . . . . . . . . . . . . . . . 6:6 SDNF File Headers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:7 Exporting Internal Reference Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:7 Local User Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:7

Internal Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7:1


File Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7:2 Text Conversion Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7:3
Holds and Paint Spec Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7:3 Connection Mapping File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7:4 User-Definable Mapping Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7:5

Steel Standards Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7:6

External Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:1


Space-Separated Format for Profile Mapping Files . . . . . . . . . . . . . . . . . . . . . . 8:1 CSV Format for Profile Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:2 Profile Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:2

ii

2.1

OpenSteel Configuration Guide


Contents

Record Structure for Profile Mapping File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:2


Steel Standard Field. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:3 Profile Type Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:3

Extend the Profile Mapping File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:5 Sample Profile Mapping File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:5 Material Mapping Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:6
User-Definable Material Macro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:7 Sample Material Mapping File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:9

Profile Orientation Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:10

Start OpenSteel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9:1 Examples of Typical Environment Scripts . . . . . . . . . . . . . . . . . . . .A:1


Windows Setup Script OpenSteel_env.bat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A:1

iii

2.1

OpenSteel Configuration Guide


Contents

iv

2.1

OpenSteel Configuration Guide


Introduction

Introduction
AVEVA OpenSteel is the interface for PDMS which allows the user to import and export files to and from the DESIGN module using the SDNF (the Structural steel Detailing Neutral File) format. The SDNF format was originally defined by the Intergraph FrameWorks user community for the transfer of steel data. The format is in the public domain and is therefore available to be considered as a suitable means of transferring data between 3D steel detailing packages and PDMS. The OpenSteel interface uses a large proportion of the information transferable in SDNF format. Refer to the OpenSteel User Guide describing SDNF, its format and contents. This version of OpenSteel is compatible with PDMS (Series 12) on the Windows operating system. Glossary Installation on Windows OpenSteel Environment Upgrade a Project for OpenSteel is a Glossary tells the user how to install the product on the workstation. describes the OpenSteel environment. describes how to upgrade a PDMS project to configure user-defined attributes (UDAs) and catalogues before the user can use OpenSteel. Details are also given on how to remove as much of OpenSteel from the project as possible. describes how to customise the OpenSteel interface. describes how to set up the internal mapping files which control the location of data to be transferred between different systems. describes how to set up the external mapping files which control how and what data is transferred between different systems. describes the checks that are made when the user starts up the OpenSteel interface, and how to correct some problems which may be encountered. lists the scripts supplied with the products which the user will need to edit to customise the OpenSteel interface and use them with their own projects.

Customise OpenSteel Internal Mapping Files

External Mapping Files

Start OpenSteel

Examples of Typical Environment Scripts

1:1

2.1

OpenSteel Configuration Guide


Introduction

1:2

2.1

OpenSteel Configuration Guide


Glossary

Glossary
This section explains certain terms used in this document. Cardinal Point An SDNF concept representing points of significance on the 2D profile and mapped in Design onto the Pline (PLIN) elements in the Catalogue. The system with which this interface is communicating. It may be a 3D steel detailing package, an intermediate format or system or even some format related to a particular steel fabricator or producer. An SDNF Entity mapped to the Design Section (GENSEC) element. Formerly this was mapped to a SCTN element. Linear Members can be either Straight or Curved: Straight members are transferred through Packet 10; Curved ones, circular arcs, are transferred through Packet 60. In both cases, the member cross section profile is constant along its length. An SDNF Entity mapped to the Design Panel (PANE) element. The Design programmable macro language, allowing users to create their own user interface. Defined by the Intergraph FrameWorks user community for the transfer of steel data. It is in the public domain and is therefore available to be considered as a suitable means of transferring data between 3D steel detailing packages and DESIGN. The external package from which an imported SDNF file is coming. The external package for which an exported SDNF file is destined. An attribute in DESIGN which the user can define and attach to specific elements. This interface requires a certain set of UDAs for storing SDNF-specific data.

External Package

Linear Member

Plate PML/F&M SDNF (Structural steel Detailing Neutral File Format)

Source Package Target Package UDA (User Defined Attribute)

2:1

2.1

OpenSteel Configuration Guide


Glossary

2:2

2.1

OpenSteel Configuration Guide


Installation on Windows

Installation on Windows
This section tells the user how to install OpenSteel on a Windows workstation and what the user then needs to do in order to be able to run the program. The software is supplied on DVD. Read the label on the supplied medium, and its documentation, for any updated installation instructions. It is assumed that the user is familiar with the concepts of directory and file hierarchies for storing data on disks and with the most commonly used Windows operating system terminology and commands.

3.1

Hardware and Operating System Requirements


The hardware requirements for running the OpenSteel interface are the same as for running PDMS (12 Series). See the PDMS & Associated Products Installation Guide for more details or for completely up-to-date information, please see the AVEVA Solutions Ltd website at http://www.aveva.com and refer to the Customer Services Hardware pages. Note: The definition of the hardware and operating system requirements for the third party software with which this interface is to work is outside the scope of this document.

3.1.1

Disk Space
For a full installation of OpenSteel on a hard disk, the user must have at least 60 Mb of free disk space for the OpenSteel executables, macros, scripts and test data. During the installation the Installer checks that there is enough space available before it starts, and warns the user if there is not. Once you are satisfied that the product is installed correctly, you may free up 40Mb by removing the supplied PDMS test projects.

3.2

Read from the DVD


OpenSteel is supplied on a DVD, which may be either an AVEVA Plant DVD alongside PDMS, or a separate DVD. Also on the DVD is a folder containing the Installation instructions and user documentation, and it is recommended that the user carefully reads all of the Installation instructions before installing the software. Some previous releases of OpenSteel have been as an optional feature of a PDMS installation. Previous versions of OpenSteel do not need to be uninstalled before installing this version. To install OpenSteel, first insert the DVD in the Workstation's DVD drive, click for Contents, select the product (OpenSteel), and then follow the Installer on screen. If the DVD does not start, click Start > Run, and then browse for the Start.htm file. Note: During the installation sequence, follow the on-screen instructions as they appear.

3:1

2.1

OpenSteel Configuration Guide


Installation on Windows

It is recommended that the user uses the default settings for folder paths etc. Note: The default installation disk is, in some circumstances, the largest disk, and this is not always appropriate. This can be checked and if necessary changed by clicking the Advanced button on the installer. The manuals for OpenSteel and Flexman may be read with the Adobe Acrobat file reader. The C:\AVEVA\Plant directory will now contain a new sub-directory called OpenSteel[ver] where [ver] is the installed version of OpenSteel. The OpenSteel[ver] directory will contain the following sub-directories:: exe maps Manuals pml samples reports A sub-directory containing the license controlled executables for the import and export of SDNF files. A sub-directory containing sample profile mapping files between PDMS and external 3D steel detailing packages. A sub-directory containing this manual and the User Guide. A sub-directory containing further sub-directories which contain the DESIGN Forms and Menus user interface. A directory containing sample SDNF files as exported by other 3D steel detailing packages. A sub-directory which contains templates for the production of Anchor Bolt location and quantity reports and sample files based on the supplied test project. A file containing environment variable definitions for incorporation into each users evars.bat script called on startup of PDMS (12 Series). A file containing environment variable definitions for incorporation into each users evars.bat script called on startup of PDMS (11.6 Series). A sub-directory which contains test files and project and results from the test Export and Import. This may be deleted when you are satisfied that the product has been installed correctly. However, it is helpful to maintain a test area.

OpenSteel_ env.bat OpenSteel_ env.bat test

All the necessary OpenSteel directories have been created and the software installed. Note: If the installer detects an existing OpenSteel 2.1 installation, it will display a set of options for modifying/repairing/removing these existing files in place of the standard installation options. Other versions of OpenSteel need not be removed before installing this version.

3.3

Flexman License Manager


The user must install and set up the Flexman license system before launching the installed software. This will usually be done only on the server. Refer to the Flexman Installation and Configuration Guide. News and update information is also available for Flexman on the AVEVA support web-site.

3:2

2.1

OpenSteel Configuration Guide


Installation on Windows

3.4

How to Run OpenSteel


The user must make sure that the Flexman license manager daemon is running before using OpenSteel, refer to the Flexman Installation and Configuration Guide. In order to run OpenSteel the user will need two licenses specific for the product - one for exporting and the other for importing. Please apply to your local AVEVA sales/support office. The user must set the environment variables for the interface. Edit each user's evars.bat file to call the OpenSteel_env.bat or OpenSteel_env_116.bat file provided. Refer to Examples of Typical Environment Scripts for an example batch file At the end of the evars.bat file, insert a call similar to:

set SDNFMAIN=C:\AVEVA\Plant\OpenSteel2.1 call "%SDNFMAIN%\opensteel_env.bat" "%SDNFMAIN%"


or (for PDMS 11.6 series)

set SDNFMAIN=C:\AVEVA\Plant\OpenSteel2.1 call "%SDNFMAIN%\opensteel_env_116.bat" "%SDNFMAIN%"


Please note that spaces are not permitted in the installation path name for PDMS 11.6.

3:3

2.1

OpenSteel Configuration Guide


Installation on Windows

3:4

2.1

OpenSteel Configuration Guide


OpenSteel Environment

4
4.1

OpenSteel Environment
System Architecture
The diagram below illustrates the whole OpenSteel interface system architecture. The external programs are license controlled and need separate licenses before the user is permitted to use them.

Like PDMS, OpenSteel uses environment variables to refer to all directory paths. This allows the user to locate these directories anywhere on the file system. The product is supplied with a file OpenSteel_env.bat in the executables directory, which sets default values for the environment variables so that they point to the directory structure as installed. It also sets the PATH variable to include the PDMSEXE directory. The user may need to modify this file to reflect the directory structure of their own installation. The following is a list of the variables the user may need to reset, with a brief description of each one.

4:1

2.1

OpenSteel Configuration Guide


OpenSteel Environment

SDNFMAIN OPENSTEELUI PMLLIB

The top directory containing the whole set of OpenSteel files. For example: C:\AVEVA\Plant\OpenSteel[ver]\ The location of the OpenSteel interface macros. By default this is set to %SDNFMAIN%\pml. The search path for PML macros. If this is already set, add the pathname to the directory containing the OpenSteel application-ware macros. For example: %OPENSTEELUI% %PMLLIB%. Otherwise, just set it to the directory containing the OpenSteel application-ware macros. For example: %OPENSTEELUI%

PDMSDFLTS

The directory containing PDMS default (DFLTS) files. The supplied script will set this as follows: %OPENSTEELUI% %PDMSDFLTS% and the user will not normally have to change it The location of the project default mapping files, where xxx is the project code. For example, the supplied project is TST. The mapping files must be stored in a directory called OSDE under the directory to which xxxDFLTS is set.

xxxDFLTS

SDNFINTMAPS

The location of the mapping files. For example: %PDMSDFLTS% %TSTDFLTS% %PDMSUSER% The sequence of the components in the variable will determine any overloading of mapping files. Refer to OpenSteel Environment for a more detailed description of overloading of mapping files.

SDNFMAPS

This is used in the internal mapping files for the location of the mapping files. It is set to a single directory. It is not essential for OpenSteel.

4.2

Mapping Files
There are two types of mapping files: internal and external mapping files. Internal mapping files are prepared by the OpenSteel system administrator. They tell the interface where on the computer network the external mapping files may be found. The format of the internal mapping files is described in Internal Mapping Files. External mapping files are files which determine how the interface handles the data for going to the target package, or coming from the source package; for example, the Profile, Profile Orientation and Material mapping files. The format of the external mapping files is described in External Mapping Files.

4:2

2.1

OpenSteel Configuration Guide


OpenSteel Environment

4.2.1

Setting SDNFINTMAPS
The environment variable SDNFINTMAPS is set to the locations of the internal mapping files. OpenSteel will search all the directories pointed to by this variable and locate all files with the suffix .map in each sub-directory called OSDE. The .map files will be imported during system initialisation as internal mapping files. The internal mapping files become the basis for locating the external mapping files.

4.2.2

Overloading Mapping Files


The order in which directories are given in the setting of SDNFINTMAPS is important, as overloading of mapping files is permitted and may occur. This means that a file that is found in the first directory will be overwritten by a file with the same identifying characteristics, though not necessarily with the same filename (Internal Mapping Files), found later in any of the succeeding directories. For example, a project mapping file could overload any company mapping files. However, this does not alter the search rules for the external mapping files as based on the content of the identification line in the internal mapping file. The diagram below illustrates how these environment variables may be used to select and overload sets of internal mapping files.

The user does not have to use all three defaults variables, and they can use any others which have defined as well.

4:3

2.1

OpenSteel Configuration Guide


OpenSteel Environment

4.2.3

Set SDNFMAPS
For the purposes of this section, the variable SDNFMAPS is assumed to have been set up in the user's OpenSteel_env.bat file to point to the directory containing the external mapping files. By default this is actually SDNFMAIN. The environment variable SDNFMAPS should point to a single directory only. This variable may be made to be project specific, so that the internal mapping files may be kept unchanged, but the user will be able to pick up mapping files from a project-specific location. Note: SDNFMAPS is not a variable specifically required by this interface.

The user should take care in using environment variables in internal mapping files, as a recursive scan is not performed at this level. In this case the variable must point to only one directory.

4:4

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

Upgrade a Project for OpenSteel


After the user has installed OpenSteel and set the appropriate environment variables, some upgrade macros must be run on the project which: Update catalogues to include the Pline representation of the SDNF Cardinal Points. Install the UDAs which OpenSteel requires.

Note: the user will have to perform these actions on the supplied project. This is in order to familiarise themselves with the process of upgrading a project for OpenSteel.

5.1
5.1.1

Cardinal Point Plines


Update the Supplied Catalogues
The standard AVEVA Solutions Ltd supplied steelwork catalogue must be upgraded to include the Pline representation of the SDNF Cardinal Points. Refer to the OpenSteel User Guide which describes the Cardinal Points in more detail. Note: This upgrade process works only for the AVEVA Solutions Ltd supplied catalogues. The user may upgrade the catalogues by performing the following actions: 1. Enter PDMS and enter PARAGON with write access to all relevant catalogue databases. 2. In a command window in PARAGON, run the upgrade macro by the following command: 3. call !!SDNFCataUpgrade( ) 4. The macro suite will check to see if this upgrade has already been executed and create or modify the original set of Cardinal Points with an updated set. 5. Exit from PARAGON, saving the changes by returning to MONITOR. There are 15 Cardinal Points defined in the SDNF standard. The OpenSteel interface uses only 14 of them: the Shear Centre (Cardinal Point 15) is not a practical reference point to use in these circumstances. Of the remaining Cardinal Points, OpenSteel tries to use those between 1 and 10, because other systems prefer to use these, rather than the higher points. If the user has not used Plines representing Cardinal Points to place Linear Members in PDMS, during the Export or Import processes an attempt is made to map existing Plines onto Cardinal Points. This mapping is performed using information stored in a configuration file, sdnfloadcpdata.pmlfnc in the pml/functions directory. This basic Pline mapping is as follows:

5:1

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

Symmetric Sections about Y Axis Pline RBOS BOS SS LBOS RIGH NARO AA MM NALO LEFT RTOS GG TOS LTOS NA Angles Pline mapped to Pline which is Cardinal Point mapped to Pline SNFA SNFB SNFB SNFC SNFD SNFD SNFD SNFF SNFF SNFF SNFG SNFH SNFH SNFI SNFJ which is Cardinal Point 1 2 2 3 4 4 4 6 6 6 7 8 8 9 10

TOAX TOAY RTTA LBOA NA NAT NAL

SNFA SNFA SNFC SNFG SNFJ SNFK SNFL

1 1 3 7 10 11 12

5:2

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

Channels Pline LTOC RTOC FOC ROC LBOC RBOC NA TOC BOC mapped to Pline SNFA SNFC SNFD SNFF SNFG SNFI SNFJ SNFK SNFN which is Cardinal Point 1 3 4 6 7 9 10 11 14

For further explanation of the reasons why the mapping may seem inconsistent, see the section describing the assumed default profile orientations in the SDNF file and Cardinal Point locations in the OpenSteel User Guide, and the Structural Design User Guide. In particular we draw the users attention to the different handedness of the coordinate systems as illustrated below.

The main differences arise from the mapping of the profile orientations in the PDMS Catalogue onto the agreed SDNF format. The difference is most apparent in channel and angle profiles. The diagram below illustrates the mappings of the Plines to Cardinal Points. Note: The different Y directions to match the default angle orientations in each system.

5:3

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

Y (PDMS)
CP 1 Plines SNFA TOAX TOAY CP 11 Plines SNFK NAT CP 2 Pline SNFB CP 3 Plines SNFC RTTA

CP 12 Plines SNFL NAL

CP 10 Plines SNFJ NA

CP 13 Pline SNFM

CP 4 Pline SNFD

X (PDMS) X

Z (PDMS)

CP 5 Pline SNFE

CP 6 (SDNF) Pline SNFF

Z (SDNF)
CP 7 Plines SNFG LBOA

CP 9 Pline SNFI CP 14 Pline SNFN CP 8 Pline SNFH

Y (SDNF) Diagram illustrating mapping of Cardinal Points to Plines for Angle profile
If the user wishes to create profiles, the user must provide a Pline set similar to the ones provided here to map onto the Cardinal Point Pline set. If they are named differently, there must be a mapping to SDNF Cardinal Points as shown above. This is performed in the file sdnfloadcpdata.pmlfnc in the pml/functions directory. Further, the user may have to manage the orientation of the profile with regard to the SDNF intermediate form by using the Profile Orientation mapping file (External Mapping Files). A sample extract of the Pline mapping in the file sdnfloadcpdata.pmlfnc is given here.

-- Cardinal point Pkeys !!SDNFCPPkeys.delete( ) handle( 2,751 ) -- Variable does not exist endhandle !!SDNFCPPkeys = ARRAY( ) !!SDNFCPPkeys[ 1 ] = |SNFA|

5:4

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

!!SDNFCPPkeys[ 2 ] !!SDNFCPPkeys[ 3 ] -- Angles !!SDNFCPBMTOAX !!SDNFCPBMTOAY !!SDNFCPBMRTTA !!SDNFCPBMLBOA

= |SNFB| = |SNFC| = = = = |SNFA| |SNFA| |SNFC| |SNFG|

In the above example, the Pline, whose Pkey is TOAX, is mapped to the Pline whose Pkey is SNFA and which is equivalent to the Cardinal Point number 1; RTTA is equivalent to SNFC (Cardinal Point 3). The user must not alter in any way the array which maps Pline names to Cardinal Point Pkey values, i.e. the array !!SDNFCPPkeys. Thus, if the user has a new Pline, whose Pkey is RTOP, which is to be equivalent to Cardinal Point 3, the user must insert a line similar to the following in the mapping list:

!!SDNFCPBMRTOP
i.e. the format is

= |SNFC|

!!SDNFCPBM<Pline PKEY> = |SNF[A-N]|


the user will then be able to use the RTOP Pline for their own positioning functions, but the interface will know that it is equivalent to the SNFC Pline (i.e. Cardinal Point 3). Thus, importing new items positioned using Cardinal Point 3 will appear in the PDMS model to have been positioned using the RTOP Pline. Pline mapping on Import is subject to the constraint that the map will take the first equivalent it finds. In some circumstances the Pline TOAY (Cardinal Point 1) may be Imported as Pline TOAX (also Cardinal Point 1) because the TOAX mapping is the first suitable one the system finds. There is no way that the interface can determine which Pline the system originally used.

5.1.2

Update Catalogues not supplied by AVEVA


Important: The naming conventions and database structure for the Pline sets should be similar to those used in the AVEVA supplied Catalogues. This section gives details on how the user can update the steel catalogues to include the Plines necessary for the OpenSteel interface. The macro file, sdnfusercataupgr.pmlfnc in the pml/upgrade directory provides the basis on which the user may build their own mechanism for updating the catalogues automatically. We have indicated where the user may have to modify this file with lines prefixed by:

>>>> User
The macro must be run for each catalogue (CATA element) the user wishes to update. The user may have to modify it in a different way for each catalogue. (Details about how the file should be modified are given in following sections.) The user can write a macro which will call all the modified files in turn and so upgrade all their catalogues at once. The macro takes one argument which is the DBREF (the database reference number) of the catalogue to be updated. To update individual catalogues, run the upgrade macro as follows:

5:5

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

1. Start up PDMS and enter PARAGON with write access to all the relevant catalogue databases. 2. Make the catalogue (CATA) the user wants to update the current element and give the command: call !!SDNFUserCataUpgr( !!CE ) 3. Repeat for as many catalogues as required. 4. Save your work and exit from PARAGON by returning to MONITOR. Generic Catalogue Shapes The AVEVA Solutions supplied catalogue contains profiles of 8 standard generic shapes which are detailed in the manual Structural Design User Guide. That manual explains the parameterisation method for these shapes. As a result, there are 8 generic macros in the pml/upgrade directory, one for updating the Pline set of each standard shape. These are: Profile Shape Tee shape I shape O, Tube, CHS shape C, Channel shape L, Angle shape RHS shape Japanese Bulb shape DIN Bulb shape Macro sdnfupgradet.pml sdnfupgradei.pml sdnfupgradeo.pml sdnfupgradec.pml sdnfupgradel.pml sdnfupgraderhs.pml sdnfupgradejbulb.pml sdnfupgradedbulb.pml

If the user has other additional shapes, or have parameterised them in a different way from the supplied PDMS catalogues, the user will have to write their own macro for their own shape based on the most suitable one provided. Please take note of the catalogue profile orientation with regard to the SDNF format. Refer to the OpenSteel User Guide for more details. Customise the SDNF Pline Generating Macros In order to customise the generic SDNF Pline generating macros listed above, or to create their own, the user will need to understand fully how the profile in question is parameterised in their catalogue database, and how the profile shape is positioned relative to the Neutral Axis and the X/Y origin in the catalogue. Below is an extract of the supplied sdnfupgradel.pmlfnc macro, including parts of the header.
-------------------------------------------------------------------------- Significant Catalogue Parameters: --------[#] [Description] 1 2 3 4 5 6 Vertical leg length (Y) Horizontal leg length (X) Thickness Cy (X offset) Cx (Y offset) Unit weight Horizontal leg (JIS-PTSS-JANG) Vertical leg (JIS-PTSS-JANG) [Specials]

5:6

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

------------------------------------------------------------------------- Define function define function !!SDNFUpgradeL( ) is REAL -- Initialisation !error = !!SDNFCPErrOK !origin = ( ref ) -- Build map of existing PLINes !plineMap = ARRAY() var !coll collect all PLIN with (substring((PKEY ),1,3) eq |SNF|)for CE if( not !coll.empty( ) )then -- Build a map indexed on PKEY - don't delete them do !i values !coll $!i !pkey = PKEY var !pkeyString hash( |$!pkey| ) !index = !pkeyString.real( ) !plineMap[ !index ] = !i.dbref( ) enddo endif -- Create all new SDNF PLINes necessary !pkeysHashed = ARRAY( ) do !i to !!SDNFCPPkeys.size( ) !pkey = !!SDNFCPPkeys[ $!i ] var !pkeyString hash( |$!pkey| ) !index = !pkeyString.real( ) !pkeysHashed[ $!i ] = !index -- Try going to PLINe called SNF[A-N] $!plineMap[ $!index ] handle( 2,109 )( 2,752 ) -- Failed - create it NEW PLIN $!!SDNFCPData PKEY $!pkey !ref = ( ref ) !plineMap[ !index ] = !ref endhandle enddo -- Set Pline dimensions !YOff = |( ATTRIB CPARA[ 4 ] )| !nYOff = |( ATTRIB CPARA[ 4 ] - ATTRIB CPARA[ 1 ] )| !YCOff = |( ATTRIB CPARA[ 4 ] - ( ATTRIB CPARA[ 1 ] / 2.0 ) )| !XOff = |( ATTRIB CPARA[ 2 ] - ATTRIB CPARA[ 5 ] )| !XCOff = |( ( ATTRIB CPARA[ 2 ] / 2.0 ) - ATTRIB CPARA[ 5 ] )| !nXOff = |( -1.0 * ATTRIB CPARA[ 5 ] )| -- All requisite PLINes exist now

-- Cardinal point 1

- Pkey = SNFA

$!plineMap[ $!pkeysHashed[ 1 ] ] PX $!nXOff PY $!YOff PLAX -Y -- Cardinal point 2 - Pkey = SNFB $!plineMap[ $!pkeysHashed[ 2 ] ] PX $!XCOff PY $!YOff PLAX -Y -- Cardinal point 3 - Pkey = SNFC $!plineMap[ $!pkeysHashed[ 3 ] ]

5:7

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

PX $!XOff PY $!YOff PLAX -Y

and so on.
The structure of all the supplied macros is similar. Note: We record our interpretation of the catalogue parameters in the header. The macro first builds a list of any SDNF Plines that already exist. Any SDNF Plines that are not available and are needed by the OpenSteel interface as listed in the !!SDNFCPData array, are then created. This ensures we use the latest configuration. We then need to define the SDNF Cardinal Point Pline location parameters related to the method of catalogue parameterisation. These are Xoff, YOff, nYOff and nXOff. We also need to work out the location of the geometric centre relative to the method of profile definition. These location parameters are XCOff and YCOff. The user will see above that the definition is in terms of a text string which describes a formula. Later on in the macro, this text string is inserted into the command line. This use of PML allows the user to insert formulae into the Pline definition, rather than the immediately evaluated formula. Using these SDNF Pline location parameters, all the Cardinal Point Plines required for the OpenSteel interface can be located. Refer to the OpenSteel User Guide regarding these Cardinal Points. If the user is extending or modifying OpenSteel, all the user should need to do is to modify the part of the macro which calculates the location parameters. the user should, however, pay close attention to the default profile orientations within SDNF. The structure of the upgrade process allows the user to run the macro during the project as well as at project initiation. Any database relationships that refer to the old Plines will be maintained, e.g. dimensions. Map Pline Set Names to Profile Shapes Once the user has defined their generic shapes the user needs to be able to map the Pline set names to that shape. This is done by filling in a mapping file of PML objects in the sdnfusercataupgr.pmlfnc macro file. The first set in the UserMap array may have to be modified, and the user may have to extend the list for their own additional specific shapes. For example, a complete mapping for a Pline set consists of the following:
-- Map Shapes to generic update macros !TShape = |!!SDNFUpgradeT( )| !IShape = |!!SDNFUpgradeI( )| !OShape = |!!SDNFUpgradeO( )| !CShape = |!!SDNFUpgradeC( )| !LShape = |!!SDNFUpgradeL( )| !RHSShape = |!!SDNFUpgradeRHS( )| !JBULBShape = |!!SDNFUpgradeJBULB( )| !DBULBShape = |!!SDNFUpgradeDBULB( )| -- >>>> User to add any specific shapes here -!USERAShape = |!!SDNFUpgradeUSERA( )| -- >>>> User Map definition between PTSS and Shape code !UserMap = ARRAY( ) !UserMap[ 1 ] = object SDNFMAPOBJ( ) !UserMap[ 1 ].Name = |/USER-PTSS-I| !UserMap[ 1 ].Macro = !IShape

5:8

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

This means that the Pline set (PTSS) named /USER-PTSS-I is to be modified using the PML macro represented by the variable !Ishape. Further up, the user can see that the !IShape variable is associated with the macro !!SDNFUpgradeI( ).

5.1.3

Catalogue Upgrade Step-by-Step


Below are instructions to create and upgrade the Catalogue based on the requirement to create a new profile shape in both DESIGN and the external steel detailing package. Any operations that require changes to system mapping files, should be preceded by backing up the files first. New Profile Shape Definition With each package the user will need to create the new 2D profile shape. In PDMS (Series 12), this is done in PARAGON. Determine the generic shape and parameterisation best suited to the required profile. At this point do not include SDNF Plines in the Pline set just place other Plines the user will find useful and name them accordingly. Do not include any Plines with PKEY values SNFA to SNFN as these will be added in the upgrade process. Build the new catalogue, recording which parameters apply to which dimension. In the steel detailing package create the profile such that its default orientation will be the same as that in DESIGN when laid out from start to end. With predefined profiles, such as unequal angles, the default orientation may be different. In this case, the user may need to use mirroring and/or rotation transformations to get to the correct "starting position". Mirroring represents a transformation about the Y axis: rotation is about the Z axis, following the "Right Hand Screw Rule". Keep a record of these necessary transformations as they will go into the orientation mapping file. On the 2D profile in each package locate where the Cardinal Points and their Pline equivalents will be. In the PARAGON module, place any other Plines that the user may find useful. Record the correspondence between Cardinal Points and Pline names. Remember also that any mirroring and rotation will affect the Cardinal Point locations.

Above are the three diagrams that show the Plines and Cardinal points that are to be considered in DESIGN and Frameworks for the case of an unequal angle. The left hand diagram shows the normal Plines associated with the angle profile in its default orientation; the middle diagram shows the Cardinal point positions in Frameworks for the angle, also in

5:9

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

its default orientation; the right hand diagram shows the Pline equivalents to the Cardinal Points. Note: The coordinate system in PDMS is right handed, whereas in Frameworks it is left handed. The Cardinal Point : Pline equivalencing by superposition is illustrated below. Using this kind of diagram the user will be able to determine the mappings between Plines and Cardinal Points.

If the new profile is not one of the existing types, the user may need to assign a new profile integer type code to it for use in the profile mapping file. Also, if the new profiles are for a new country standard, the user may need to assign a new country code to this. This three letter abbreviation is stored in the internal steel standards file. This TLA is also used in the profile mapping file. Upgrade the Catalogue for SDNF Upgrading the Catalogue involves adding SDNF Plines to be equivalent to the Cardinal Points. In PARAGON determine the parameterised geometry and Pline positioning for the Cardinal Points. If the user is extending an existing generic shape use the existing upgrade file provided. Or if the profile can be based on an existing generic shape, use a customised copy of the sdnfupgrade<*>.pmlfnc macro. Modify the profile upgrade macro to account for the new parameterisation to create and locate the SDNF Plines for the Cardinal Points. Use an existing example as a guide. Any new Pline names, as set in the PKEY attribute, must be mapped to Cardinal Points in the sdnfloadcpdata.pmlfnc macro. PML is a language that enables the user to construct variable names from string components and then use them. This is how the Pline mapping is managed. Inspect the current file for directions on how to extend this file. Modify it then run it.

5:10

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

-- Cardinal point Pkeys !!SDNFCPPkeys.delete( ) handle( 2,751 ) -- Variable does not exist endhandle !!SDNFCPPkeys = ARRAY( ) !!SDNFCPPkeys[ 1 ] = |SNFA| !!SDNFCPPkeys[ 2 ] = |SNFB| !!SDNFCPPkeys[ 3 ] = |SNFC| -- Angles !!SDNFCPBMTOAX = |SNFA| !!SDNFCPBMTOAY = |SNFA| !!SDNFCPBMRTTA = |SNFC| !!SDNFCPBMLBOA = |SNFG|
Run sdnfcataupgr.pmlfnc macro for upgrading standard catalogues. Inspect the macro sdnfusercataupgr.pmlfnc to extend any lists to include the new profile shape, associating it with any new profile upgrade macro. Once modified, run this macro.

!Ishape = !UserMap[ !UserMap[ !UserMap[

|sdnfupgradei()| 1 ] = object SDNFMAPOBJ( ) 1 ].Name = |/USER-PTSS-I| 1 ].Macro = !Ishape

Modify the Orientation Mapping File For the chosen profile in the chosen standard, if any transformations are to be applied to convert from DESIGN to the SDNF default system, they are to be recorded in the orientation mapping file for the target detailing package. If the profile requires no transformations, it should not be listed in this file. In the example below, the British type 9 profiles are orientated by mirroring (1) and then rotating by 180 degrees. British type 8 profiles are not mirrored (0) and just rotated by 180 degrees.

PDMS STRUCAD BRI 8 0 180 BRI 9 1 180 DIN 8 0 180 DIN 9 1 180
Modify the Profile Mapping File Any new profiles requiring mapping between DESIGN and the external steel detailing system should be entered in the mapping file appropriate to the detailing package. For example:

PDMS XSTEEL HE280A HEA280 EUR 20 HE280B HEB280 EUR 21

5:11

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

Re-initialise the System and Save the UI Binaries On the OpenSteel Export or Import main forms use Control > Re-initialise for resetting the configuration data only. Or execute call !!sdnfimpexp() in a command window to re-initialise the system. However this last option is very brutal as all form settings will be lost because the forms and menus are regenerated. The user will have to regenerate UI binaries after this.

5.2

Installation of User Defined Attributes


Before the user starts designing steelwork, the interface requires a set of User Defined Attributes (UDAs) specifically for storing OpenSteel related information. These are installed by performing the following actions: 1. Start up PDMS and go into LEXICON with write access to all the relevant Dictionary databases. 2. Execute the upgrade macro by the following command: call !!SDNFUDAUpgrade( ) 3. Exit from LEXICON, saving your changes, by typing Monitor. Note: This upgrade may be run even if the UDAs exist already. In this way the user may upgrade the system whenever necessary; for example, to include more UDAs needed for a later version of the interface. More UDAs are required in this version, so you will need to upgrade your current projects if you are to use this later version of OpenSteel. The macro has been configured to keep existing UDA definitions so that you will not lose data.

5.3

Special OpenSteel SITES


When the OpenSteel application installs itself in the Design database, some SITE elements will be created. Typically these will be called something like /SDNF-CONFIG-DEMOSYSTEM and /SDNF-OLD-DEMO-SYSTEM. The first is a SITE to store information about the Import and Export processes, default Header information, and Transfer and Revision numbers. The second is a SITE to store items which have been 'deleted' from the model during the Export/Import design cycle. This latter site will be created only when needed. The user can always recover elements from this area if they need to later on. The name of the configuration and deleted element SITEs are built up of the following components:: /SDNFCONFIGOLD<mdb name> <user name> the system prefix identification of a Configuration SITE identification of a SITE for deleted elements the current MDB, e.g. /DEMO the current user name, e.g. SYSTEM

5:12

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

OpenSteel will check that the user has read/write access to their specific SITEs, since the user and the interface may need to edit certain attributes. Refer to the OpenSteel User Guide for more information. The SITE for deleted elements, named in a similar manner to the Configuration object and described in more detail in the User Guide, will store the 'deleted' elements in STRUs according to the Import revision, so that the user can quickly isolate which items were deleted at which time. The user will note that the SITE names contain the current MDB and the current user name. This is to facilitate multi-user working, and multiple accesses to the database. There may be several of these, depending on which MDB and/or user has access to the particular database. During the Import and Export processes, all these elements are inspected to extract the latest transfer information.

5.4

Integration into other PML Applications


In the pml directory are several files beginning with DES. They are found in the path of the %PDMSDFLTS% environment variable and called on startup of the DESIGN module or the individual PML Applications. They are: DES-INIT-MAC DES-UTILS-GEN DES-UTILS-STLWRK called on startup of DESIGN called on startup of the General Application toolbar called on startup of the Steelwork Application toolbar

Therefore, the supplied product will be available automatically in the DESIGN General and Steelwork application-ware systems. If the user wants to integrate OpenSteel into other application-ware toolbars, all the user needs to do is to find the suffix applicable to the toolbar with which the user wants to integrate OpenSteel and copy either of the DES-UTILS-xxx files to have the new suffix. OpenSteel will then become available in that application-ware package. For example, to integrate OpenSteel into the Piping Application, the user needs to copy DES-UTILS-GEN to a file called DES-UTILS-PIPE. OpenSteel then becomes available under the Utilities > Piping menu option.

5.5

Uninstall OpenSteel
The main OpenSteel product can be removed from your system using the normal Add/ Remove Programs option from the Windows Control Panel. However, in order to run OpenSteel there are various additional things that have been done to the databases that you may also wish to remove. The principal things the user has to do to uninstall OpenSteel from PDMS are: to remove the UDA definitions; to remove the extra OpenSteel Plines; to remove the Configuration SITE elements; to remove the link to the PML appware.

5:13

2.1

OpenSteel Configuration Guide


Upgrade a Project for OpenSteel

There are two PML functions in the pml/functions directory which the user can run from LEXICON and PARAGON to perform the first two actions. They are run in a command window by using the following syntax: call !!SDNFRemUDAs( ) call !!SDNFRemPlines() in LEXICON in PARAGON

The user can then, if they want, remove all the /SDNF-CONFIG-xxx elements from every Design database, as these will no longer be necessary. It is then up to the user whether the user delete the SITEs containing the deleted elements. Finally, the user need to disconnect OpenSteel from the DESIGN application ware. This involves deleting or renaming the DES files in the pml directory.

5:14

2.1

OpenSteel Configuration Guide


Customise OpenSteel

Customise OpenSteel
This chapter describes the PML variables which the user can set to customise OpenSteel. They are set in the file called sdnfuserdata.pmlfnc found in the pml/functions directory of the interface. If the user customises the OpenSteel forms, the user must reload the DESIGN user interface from macros in order to rebuild it. If the user changes variables in the user data area, the user can use the Re-initialise option on the main Import or Export forms. Refer to the OpenSteel User Guide for more details. Alternatively, the user may reload the OpenSteel system variables and rebuild the forms using the following command, after the user have saved the sdnfuserdata.pmlfnc file: call !!SDNFImpExp( ) However, if the user finds that the user interface forms are damaged, reload the DESIGN UI from macros. A typical message indicating this condition might be: Object does not have a member .targetlist The user must also load the DESIGN UI from macros if the user make any changes to the internal mapping files

6.1

External Packages
If the user uses other external packages that can export and import SDNF files, the user can extend the list of external packages which the interface will know about by modifying the following two list attributes:

!!SDNFExtProgList !!SDNFExtProgAbbr
These lists must be kept in step with each other, as they match the names of the external packages with their three-letter abbreviations used internally in the interface. They may represent steel detailing packages, or the name on an intermediate mapping state, e.g. SDNF, or even the mapping for a particular steel manufacturer. It is this three-letter abbreviation which is used in the identification of the correct mapping files (see below). Note that ANY should be the last entry in the abbreviation list. The supplied lists are constructed as follows: !!SDNFExtProgList.append( |SteelCAD| ) !!SDNFExtProgList.append( |StruCAD| ) !!SDNFExtProgList.append( |XSteel| ) !!SDNFExtProgList.append( |PDMS| ) and

6:1

2.1

OpenSteel Configuration Guide


Customise OpenSteel

!!SDNFExtProgAbbr.append( |STE| ) !!SDNFExtProgAbbr.append( |STR| ) !!SDNFExtProgAbbr.append( |XST| ) !!SDNFExtProgAbbr.append( |PDM| ) -- ANY to be the last in the list !!SDNFExtProgAbbr.append( |ANY| ) This list is picked up automatically by the Import and Export forms. Thus, if the user wants to extend or modify the list of Target Packages the user needs only to change it here, and not in the form definition files. The user will also have to generate the other internal and external mapping files required by the new system.

6.1.1

External Package Equivalences


When exporting to SDNF, the exporting program includes an identifying string in the SDNF file header. OpenSteel searches for this string in order to identify the source and then select the correct mapping files automatically. Like PDMS, external packages can change their names over the years. The identifying string can also change, yet the program can still behave in a similar way to before. Therefore we need to be able to associate alternative identifying strings to the same basic source program. This has been started in the file sdnfuserdata.pmlfnc. Below is the code to make an equivalence relationship between Tekla and TeklaStructures. To create a new pairing, copy the bottom commented lines and replace the bold text accordingly. -- Program equivalent list !!sdnfExtProgEquList.delete( ) handle( 2,751 ) -- Variable does not exist endhandle !!sdnfExtProgEquList = ARRAY( )

-- Make TeklaStructures equivalent to Tekla -- The first entry is the one we DO have the mapping files for !equivalent = ARRAY( ) !equivalent.append( |Tekla| ) !equivalent.append( |TeklaStructures| ) !!sdnfExtProgEquList.append( !equivalent )

-- for further equivalents use versions of the next 4 lines -!equivalent.clear( )

-- !equivalent.append( |Existing program for which we have the mapping files| )

6:2

2.1

OpenSteel Configuration Guide


Customise OpenSteel

-- !equivalent.append( |New program to use the mapping files for the program above| ) -!!sdnfExtProgEquList.append( !equivalent )

Once the above relationship has been set up, OpenSteel will treat SDNF files containing the string "TeklaStructures" as though they have come from Tekla and use the correct mapping files for Tekla.

6.2

Colour Code
The user can change the colours of the objects on the screen using the variables listed below. If the user wants to change them, the list of colour numbers is given in the DESIGN Reference Manual. The default settings are: !!SDNFColChanged !!SDNFColAdded !!SDNFColDuplicate !!SDNFColDeleted !!SDNFColExported !!SDNFColDefault = ( 12 ) = ( 5 ) = ( 6 ) = ( 2 ) = ( 3 ) = ( 1 ) $* Mauve $* Green $* Cyan $* Red $* Orange $* Grey

The duplicate colour is used when the import system searches for items with duplicated mark numbers.

6.3

Tolerance Settings
The user can modify the distance tolerance (the separation, in millimetres, below which two points are considered coincident), the minimum Plate thickness, and the minimum length of Linear Members. The minimum tolerance is used as a fine tolerance value in vector comparisons, such as for angles. -- Set distance tolerance !!SDNFDistTol !!SDNFMinTol = ( 1 ) = ( 0.01 )

6.4

Waiting Time
The system wait time represents a unit of time which the interface will wait while the external program is executing. If there is no response within this time, the interface may assume that the external program has stopped for some reason. This may not be the case - it may just be working hard! The user will be asked whether they want to wait for another unit period. This variable is nominally measured in seconds, but it is also dependent on how busy the computer is on other tasks as well. -- Set wait time !!SDNFWaitTime !!SDNFNoOfTries = ( 10 ) = ( 5 )

There is also a variable, !!SDNFNoOfTries, which is used to determine how many iterations of the waiting loop the interface goes through before prompting the user for further information.

6:3

2.1

OpenSteel Configuration Guide


Customise OpenSteel

6.5

Export Header
The default Export file header information is to be contained in the Configuration SITE element. Header information can also be stored in ZONE and STRU elements. The user can therefore create elements to store information specific to a particular Export event and use this information in the Export process. This variable indicates where that will be. The default is set up by the system, but the user may want to override that setting using the code below. -- Source of Export Header data !!SDNFExpHeader = !!SDNFConfigObj

This should be set to a string representing the name of the SITE from which the configuration details are to be taken e.g.

!!SDNFExpHeader

= |/OtherHeaderSITE|

The user will still have the opportunity to choose the another header element during the Export process; this variable just sets up a default location. The header element will contain information about the imported or exported model, the client information, target information about the steel contractor and other details. This information can be customised per run by the creation of Sites, Zones or Structures and their selection as required. The role of header elements has changed since previous versions of OpenSteel as the Transfer and Revision data have been separated into the Configuration SITEs. OpenSteel now manages these Configuration SITEs separately from the header elements.

6.6

Connected Members
The user may set the default to ignore unconnected members. Alternatively, the user may set the value to true so that they do not Export unconnected members. If the user wants to ignore unconnected Linear Members, the user will receive a warning in the log file if any are found, otherwise an error is raised. -- Ignore unconnected Linear members !!SDNFNoUnconnMem = false

6.7

Ignore Material Flag


The user can choose to ignore any errors caused by different material mappings by using this flag. What this means is that on comparing the original model with the imported model, any difference in material is not raised as an error. -- Ignore Material changes !!SDNFIgnoreMatl = false

6.8

External Mapping File Separator


The separator character for the external mapping files may be either a space or a comma. Using the variables below, the user can indicate their choice.

6:4

2.1

OpenSteel Configuration Guide


Customise OpenSteel

Note: Note that all the files of the same type (either Material, Orientation or Profile) must use the same separator consistently: the user cannot have some Material files space separated, while others are comma separated. -- Mapping File separators !!SDNFProfSep !!SDNFMatSep !!SDNFOriSep = !!SDNFSpaceSep = !!SDNFCommaSep = !!SDNFSpaceSep

6.9

Pre- and Post-processing Macros


The user can write their own macros to be run before and after the Export process has taken place. This lets the user build a model in DESIGN which then needs some sort of pre- or post-processing. This is performed using the variables below: -- Pre/Post Export User Defined Macros !!SDNFPreExpMac = |preexport|

!!SDNFPostExpMac = |postexport| The above syntax defines the names of two macros which are to be found in the directory structure below the %PMLLIB% environment variable. They are named preexport.pmlfnc and postexport.pmlfnc, respectively. These macros will be called before and after the Export process has been executed. These macros should have no arguments and return no value. Note: It is for the user to handle all internal errors within the macros.

6.10

User-definable Material Macro


If the material information is not contained in the MATR or :SDNFMGRADE attributes, it may be extracted using a user-definable macro. This macro is identified using the following global variable: -- Material macro !!SDNFMaterialMac = |sdnfgetusermatl| This would enable the user to configure the system to extract material information in a manner different from the default system. See User-Definable Material Macro. The above defines a reference to a macro which is to be found in the directory structure below the %PMLLIB% environment variable. This macro takes no arguments and returns a string. Note: It is for the user to handle all internal errors within the macro.

6.11

Maximum File Size


For reading many files, such as the mapping files, log files or even some internal files, there is a current size limit of 500000 lines. This may be modified by changing the lines below.

-- Maximum file size in lines !!sdnfMaxFileSize = ( 500000 )

6:5

2.1

OpenSteel Configuration Guide


Customise OpenSteel

6.12

Profile Mapping Files


The user can create their own Profile mapping files using either the PDMS Specification Component or the Catalogue Component. This is a significant decision the user will have to make before starting to build their mapping files, as all of the files must be built using one reference or the other. The user cannot mix the PDMS names. Note: The supplied files are based on the Catalogue Component names. In the sdnfuserdata.pmlfnc function there is a variable, !!SDNFProfMapRef, which the user can set to determine whether OpenSteel uses the Specification or Catalogue Component. By default the lines are as follows, with the second line commented out: -- Profile Map Table Ref !!SDNFProfMapRef = |CATR| -!!SDNFProfMapRef = |SPRE|

Should the user want to build their Profile mapping files using the Specification Component, comment out the first line and uncomment the second, thus: -- Profile Map Table Ref -!!SDNFProfMapRef = |CATR|

!!SDNFProfMapRef = |SPRE| Now OpenSteel will use the name of the Specification Component as their mapping name. This means that the Profile mapping files must be built differently. Below is an example of each case. The original XSteel Profile Mapping File, very much abbreviated (to just one line after the first one), is as follows: PDMS OD193.7x5 XSTEEL PD193.7X5 EUR 13

This means that the XSteel profile PD193.7X5 will be related to the Catalogue Component whose name is /OD193.7x5. To use the second option, this should appear as something like the following, where the PDMS name is actually the name of the PDMS Specification Component. PDMS DIN-SPEC/OD193.7x5 XSTEEL PD193.7X5 EUR 13

6.13

Replacement of SCTNs with GENSECs on Import


The more modern PDMS structural user interface creates GENSEC elements for all structural members, whether they are straight or curved. However, the connectivity features for the new elements are not as advanced as for the old SCTN elements. Therefore, it would be difficult to build a structurally connected model with GENSECs. In the first phase of import, all straight structural members (Packet 10) are imported as SCTN elements, and all curved ones (packet 60) are imported as GENSECs. The user has the option of replacing these straight SCTNs with GENSECs by modifying the following line in the sdnfuserdata.pmlfnc file. The default is not to replace the SCTNs. -- Flag to replace imported SCTNs with GENSECs

6:6

2.1

OpenSteel Configuration Guide


Customise OpenSteel

!!sdnfSCTNtoGENSEC

= false

If the user is importing to update and existing model, the database type of elements is not changed, but all new elements will be replaced or not as required.

6.14

SDNF File Headers


The user can select whether the SDNF file will contain listings of all the mapping files or just the Packet count table. This is done by the !!sdnfBriefHdr variable in the sdnfuserdata.pmlfnc variable. By default the SDNF files have brief headers, but if the user wishes to include details of all the files used for the translation, the variable can be switched to 'false'. -- Brief/Verbose SDNF file header !!sdnfBriefHdr = true

6.15

Exporting Internal Reference Numbers


Some systems do not use unique mark numbers on elements and so it can be difficult to relate components when they are repeatedly imported. PDMS keeps a record of both the PDMS reference number (:SDNFMARK) and the external mark number (:SDNFEMARK). If, prior to export, the system detects that there are duplicate external mark numbers, it will switch automatically to exporting the PDMS internal reference numbers instead. However, you may wish to force the system to export the PDMS reference numbers irrespective of the state of the external mark numbers. This is performed by changing the flag !!sdnfFEMarkMode.

-- Flag to export [INTERNAL|EXTERNAL] IDs. -- Change only if you are sure of what you are doing. !!sdnfEMarkMode = |EXTERNAL|

6.16

Local User Configuration


As has been described above, the file sdnfuserdata.pmlfnc can be modified by hand to provide a degree of customisation of OpenSteel. This overwrites the system variables in sdnfsystemdata.pmlfnc. Important: This latter function must not be modified. There is a third level of customisation available that is accessible by a form. This form has access to versions of all the variables in the sdnfuserdata.pmlfnc function, but it does not modify that function at all. So, at this point, the user is working with a local set of configuration data. The configuration form is accessible from either the main Import or Export form using the Control > Configure... menu item below.

6:7

2.1

OpenSteel Configuration Guide


Customise OpenSteel

The System Configuration Form has 5 tab pages for run parameters, model parameters, display colours, environment parameters and macros. The detail of the attributes can be read above. The forms do have some data validation, where appropriate.

6:8

2.1

OpenSteel Configuration Guide


Customise OpenSteel

6:9

2.1

OpenSteel Configuration Guide


Customise OpenSteel

6:10

2.1

OpenSteel Configuration Guide


Customise OpenSteel

By default, the system looks for a file OpenSteel.xml in the PDMSUSER area. If present, this file is accessed when the form, and indeed the whole OpenSteel system, is initialised. If this file is not available, then the default values that are used are set in sdnfsystemdata.pmlfnc and subsequently overwritten by sdnfuserdata.pmlfnc. The user can save the form settings to this default file using the Control > Save option. To save the settings to another file, use the Control > Save as... option. To load any settings file other than the default one use Control > Load... option. A file browser form is shown for you to choose where to locate the new file. To restore the main default settings at form initialisation, just delete the OpenSteel.xml file. The Reset button resets the values using the normal form initialisation process with the current variables and any saved OpenSteel.xml file. The Re-initialise option goes right back to the source variables in the system and user data and the default OpenSteel.xml files. The OK button transfers the form settings to the main Import/Export system for use in that session. On re-showing the form any unsaved attributes will be lost.

6:11

2.1

OpenSteel Configuration Guide


Customise OpenSteel

6:12

2.1

OpenSteel Configuration Guide


Internal Mapping Files

Internal Mapping Files


The interface relies on several internal mapping files. These define where external mapping files are located on the users system network, or they define the mapping of strings or attributes between DESIGN and the intermediate SDNF file. It is the users responsibility to modify them correctly so that they indicate the correct file location Note: If the user changes any of the internal mapping files, the user must reload the DESIGN user interface from macros. Alternatively the user can use the Re-initialise menu option on the main OpenSteel Import and Export forms. The user should then resave the binary UI. Internal mapping files are loaded on start-up of the OpenSteel interface. If there are any problems on loading, the user will be prompted to confirm that the user wants to carry on with using the interface, although it is frequently inadvisable. If the user does not continue, a fatal error is raised and the interface exited. Internal files must have a suffix .map and be stored in a directory under the %SDNFINTMAPS% environment variable. The supplied interface stores example files in a directory pml/OSDE. Internal mapping files are of the form of an asterisk (*) separated sequence of strings. The first line of the file is taken to be a file identifier, the precise rules for which are defined below. When an SDNF export file is created, all these internal files are listed at the top of the file as comments for the users information. Comment lines in SDNF start with the # symbol. As an aid to generalising the users interface, the user may include environment variables in the path names as long as they are defined in PDMS format; for example: %ENVVAR%\ These environment variables cannot be search paths: they must translate to a reference to a single directory. Error and Log File Messages Bad Map File On attempting to load the internal mapping file, there are several potential errors: it is not of the correct format; it may not exist; it may contain empty lines; the first line is not correct. The internal files recognise an external package, but there are no mapping table files associated with it.

No Mapping Table defined for selection

7:1

2.1

OpenSteel Configuration Guide


Internal Mapping Files

7.1

File Mapping Files


The file mapping tables indicate the location of external Profile, Orientation and Material mapping tables in the directory structure. The internal mapping tables may be specific to either the project or the company. The tables are searched first for a project-specific set before a company-specific set. The files consist of a first line, then a series of pairs of * separated values (with no spaces), indicating the location of the mapping file for the associated external package. The external package may be a 3D steel detailing package e.g. StruCAD, an intermediate file e.g. SDNF, or even a steel fabricator's catalogue. The package name must correspond exactly to that in the list set up during the user customisation process described above. The first line in each file is a pair of values, the second of which is used to identify the list. The first part of this identifier text is either the three-letter name of the project, e.g. TST for the TST000 project, or ANY, signifying a companywide table for any PDMS project.

The second part must be one of: PRF ORI MAT for a Profile mapping table for a Profile Orientation mapping table for a Material mapping table.

The project-specific Profile mapping files for the TST project may be similar to: TSTPRF*TSTPRF STRUCAD*C:\AVEVA\Plant\OpenSteel[ver]\maps\StruCad\StruCad.map XSTEEL*C:\AVEVA\Plant\OpenSteel[ver]\maps\XSteel\XSteel.map STEELCAD*C:\AVEVA\Plant\OpenSteel[ver]\maps\SteelCad\SteelCad.m ap PDMS*C:\AVEVA\Plant\OpenSteel[ver]\maps\PDMS\PDMS.map and a companywide Profile mapping table may look like: ANYPRF*ANYPRF STRUCAD*C:\AVEVA\Plant\OpenSteel[ver]\maps\StruCad\StruCad.map XSTEEL*C:\AVEVA\Plant\OpenSteel[ver]\maps\XSteel\XSteel.map STEELCAD*C:\AVEVA\Plant\OpenSteel[ver]\maps\SteelCad\SteelCad.m ap PDMS*C:\AVEVA\Plant\OpenSteel[ver]\maps\PDMS\PDMS.map The Material mapping tables are defined in a similar way. For example a project-specific Material mapping file, using a previously defined environment variable, SDNFMAPS, might look like:

TSTMAT*TSTMAT STRUCAD*%SDNFMAPS%\StruCad\StruCadMat.map XSTEEL*%SDNFMAPS%\XSteel\XSteelMat.map STEELCAD*%SDNFMAPS%\SteelCad\SteelCadMat.map

7:2

2.1

OpenSteel Configuration Guide


Internal Mapping Files

PDMS*%SDNFMAPS%\PDMS\PDMSMat.map
A companywide Profile Orientation mapping table would look similar to the following:

ANYORI*ANYORI STRUCAD*%SDNFMAIN%\maps\StruCad\StruCadOri.map XSTEEL*%SDNFMAIN%\maps\XSteel\XSteelOri.map STEELCAD*%SDNFMAIN%\maps\SteelCad\SteelCadOri.map PDMS*%SDNFMAIN%\maps\PDMS\PDMSOri.map


For details of the format of the external mapping files, consult the relevant section in this guide. Error and Log File Messages Environment variable $nnnn' not understood. - The interface cannot determine the meaning of %nnnn% in the mapping file.

7.2

Text Conversion Mapping Files


The text conversion mapping tables perform conversion operations between text strings derived from the Design database and the SDNF file. These cover the Holds, Paint Spec Coding and Connection Type text.

7.2.1

Holds and Paint Spec Files


The simplest tables are the Holds and Paint Spec tables which are just for reference for the user. The tables described here just provide an aid to the user, so that the value of the field in the SDNF file may be interpreted. No action is taken by the interface to manage these values inside DESIGN: the value in the :SDNFHOLD and :SDNFPSPEC attributes are used to store and export the values. The SDNF file takes an integer value in the Status and Class field for a Linear Member or Plate which this interface is using as the Holds and Paint Spec values. These tables are output in the top of the SDNF file. Examples are:

STATUS*HOLD 0*Undefined 1*Fixed 2*Provision 3*Other


or

CLASS*PSPEC 0*Undefined 1*Lead Paint

7:3

2.1

OpenSteel Configuration Guide


Internal Mapping Files

7.2.2

Connection Mapping File


The Connection mapping table allows the user to define a conversion table between a DESIGN value and a string value which appears in the Packet 40 entries (Connection Details) in the SDNF file. As this interface currently only exports connections to SDNF, this conversion is made only during the Export process. There is no means yet by which Packet 40 can be imported and interpreted by the interface to create a Joint of the correct type. The table identification method is similar to the methods described above for the external mapping files, but here the code is in three parts depending on a) the Source or Target Package and b) the project. The first part is the three-letter abbreviation for the Source or Target Package as set up in the user customisation process described above; the second is the project name, e.g. TST, or ANY; and the third component of the name must be CON. A file for the external package identified by XST and for the TST project might look like:

XSTTSTCON*XSTTSTCON BP*macro BasePlate TP*TP FPWB*FPWB FPWC*FPWC


A file for any Source or Target Package, but for only the TST project may be:

ANYTSTCON*ANYTSTCON BP*macro BasePlate TP*TP FPWB*FPWB FPWC*FPWC


and for any Source or Target Package and any project the file might look like:

ANYANYCON*ANYANYCON BP*macro BasePlate TP*TP EP*End Plate FPWB*FPWB FPWC*FPWC


The interface search order is for mapping files for: 1. A specific Source or Target Package and a specific project; 2. Any Source or Target Package and a specific project; 3. Any Source or Target Package and any project. The data lines are arranged, as in the above examples, as pairs between data found in DESIGN and that to be output in the SDNF file generated by the Export process. On Export, the interface searches for a string identifier in the Design database. This is then mapped to the output string based on the mapping table. For example, an occurrence of EP in the Design database will be output in the SDNF file as End Plate in the relevant field in the Packet 40 section of the SDNF file.

7:4

2.1

OpenSteel Configuration Guide


Internal Mapping Files

To find the end coding in DESIGN, the interface looks at the CTYA attribute on the catalogue description of the Joint associated with an end of a Linear Member (SCTN or GENSEC). The coding is taken from there, but, while the interface exports the data, it is also transferred to the CTYS or CTYE attribute of the SCTN as appropriate. A warning is raised if an end coding mapping cannot be found. To cater for the fact that the CTYA may not be set and the user wants there to be a default end connection type, all the user needs to do is to include in the file a line similar to the following. Note: There is no DESIGN value before the asterisk. This means that for unset CTYA values Default Connection is mapped into the output file.

ANYANYCON*ANYANYCON *Default Connection BP*macro BasePlate TP*TP etc

7.2.3

User-Definable Mapping Macros


The user will notice that the mapping file extract shown above has the entry:

BP*macro BasePlate
This is the means by which the user can customise the text string in the SDNF output file, rather than just having a single text for all cases; for example, if the user wants to transfer a set of parameters along with the text. Note: The SDNF limit for the length of the replacement text is 50 characters. Thus, when the interface meets a replacement text which has macro as its first word, a macro of the following name is searched for under the %PMLLIB% search path. The macro name must be completely in lowercase and end in .pmlfnc, according to PML conventions. The macro takes no arguments, as there are no means of transferring them in this situation, and it returns the character string to be inserted into the SDNF file. In the above case, the interface will search for a macro file baseplate.pmlfnc. The example base plate macro supplied with the interface is:

define function !!BasePlate( ) is STRING -- Initialisation !string = STRING( ) !start = ( ref ) -- Some PML to extract the required information goto catr !thick = para numb 1 !nrOfBolts = para numb 2 same !width = desp numb 1 !length = desp numb 2 -- Concatenate information into the string

7:5

2.1

OpenSteel Configuration Guide


Internal Mapping Files

!string = |Base Plate $!width[ 1 ] $!length[ 1 ] | + $ |$!thick[ 1 ] $!nrOfBolts[ 1 ]| -- Return string and exit $!start return !string endfunction
This example may return a single text string such as:

Base Plate 250 300 25 4


which should be sufficient information for the external system to generate an end detail of the correct type and dimensions. It is assumed that the system is at the Design Joint in the database at the point of calling this user macro. Note: In writing the users own macro, the user must handle all errors encountered, so that the macro will safely return a valid PML string, whatever it may be. Error and Log File Messages No Connection mapping table for nnnn for project mmmm User macro nnnn not found Error in user macro nnnn No mapping for Connection type nnnn System cannot find a suitable table for the nnnn target and mmmm project. Cannot find user macro. PML programming error in user macro. Cannot translate Connection text.

7.3

Steel Standards Mapping Files


There are two situations for choosing whether a particular steel profile is permitted or not. The situations are Default or Multiple. The default steel standard is that listed as the first entry in the Steel Standard mapping file. This is the preferred standard. If the profiles come from the other listed standards, they are deemed to be acceptable. In this case, a warning message will be output to the log file. Profiles taken from standards which are not in the list are flagged as errors. The Steel Standards mapping files may be project or company specific. The identification convention used in the first line of the file, by which we identify the file, is similar to that mentioned above for other internal mapping files. It is the second entry on the first line which is critical. In this case, it is composed of two parts. The first part is either the three-letter name of the project, e.g. TST, or it is the word ANY signifying that the file is company specific; i.e. for ANY project. The second part, STD, is compulsory. The lines are * separated pairs (with no spaces), only the first value of which is used internally. The second value can be for information, as these files will be listed as comments

7:6

2.1

OpenSteel Configuration Guide


Internal Mapping Files

in the exported SDNF file. The first value of each entry must be the three-letter coding for the profile standards, as recorded in the external Profile mapping files and as suggested in the section discussing the format of the Profile mapping files. The sequence of search is for a project-specific mapping file, and then a company-specific file. A project-specific mapping file for the TST project might look like:

TSTSTD*TSTSTD EUR*Euronorm BRI*British AME*American


A company-specific file for ANY project might look like:

ANYSTD*ANYSTD EUR*Euronorm BRI*British AME*American GER*German CAN*Canadian JAP*Japanese

7:7

2.1

OpenSteel Configuration Guide


Internal Mapping Files

7:8

2.1

OpenSteel Configuration Guide


External Mapping Files

External Mapping Files


While setting up the Export or Import variables, the external mapping files are tested to see if they are valid. At the top of each file is a check line indicating the external package to which the file is related. The check line must be of the form:

PDMS TargetPackage
For example:

PDMS XSteel
The target package name must be as it appears in the data list, !!SDNFExtProgList (see External Packages). This list is picked up automatically by the Export and Import forms. Note: Tab characters are not permitted in the mapping files, as they interfere with the field separation. Comments may be included in the mapping files. They are indicated by a hash (#) character as the first non-blank character on the line. Blank lines are also permitted. Error and Log File Messages Suitable Mapping Table File not found Not a suitable Mapping Table File - Is it empty? File specified in the mapping table is not found. The header may not be of the correct format. The header does not match the target package.

8.1

Space-Separated Format for Profile Mapping Files


Because PDMS names cannot contain spaces, space-separated mapping files receive special treatment to allow spaces in external Profile names, but not in PDMS names. A description of the individual fields in the Profile Mapping Files is given after this section. The four fields are read in the following order. 1. The first field is the PDMS name (with no leading, trailing or embedded spaces). 2. The fourth field is the Profile type (with no leading, trailing or embedded spaces). 3. The third field is the Steel Standard (with no leading, trailing or embedded spaces). 4. The second field is the external profile name, once the leading and trailing spaces have been removed.

8:1

2.1

OpenSteel Configuration Guide


External Mapping Files

See External Mapping File Separator for information on how the user can specify which separator which the interface will use to discriminate between fields.

8.2

CSV Format for Profile Mapping Files


The user can also use Comma Separated Variable (CSV) format for the Profile mapping. In CSV format, the fields are separated by commas rather than by spaces. This means, therefore, that the names of profiles must not contain commas, but the external profile name can still contain spaces. CSV format allows the user to manage the mapping files in a spreadsheet program. If the user is constructing a CSV file by hand, the user should be aware how a CSV file handles commas in fields.

8.3

Profile Mapping Files


This section describes the formats for the mapping files between PDMS catalogues and those of external 3D steel detailing packages. The mapping files will indicate a correlation between the catalogue item in PDMS and its equivalent in the other system, to which, or from which, data are to be transferred. It is the users responsibility to ensure that any geometrical modelling required in either system is suitably reproduced in the other. The mapping files supplied are modifiable and extensible by the user. There are two similar mapping files required: one for PDMS and the other for the 3D steel detailing package. This will allow greater modularity and independence of each software component in the interface. Important: It is assumed that the package importing the data will perform the mapping to local names. Any system exporting data will export its own local names without performing any translation process whatsoever. This interface, however, checks that there is a valid mapping for a Profile before it is exported, even though the local PDMS profile name is still exported. This can also be a cause for misunderstanding if the SDNF output file is inspected, and the user still sees PDMS profile names, and not the names translated for the target package.

8.4

Record Structure for Profile Mapping File


The database file consists of records of PDMS catalogue profile name matched with the external profile name and two other fields giving the origin and profile type as recognised by the external package. A typical record is as follows: 300X300X214.00SHS TUB30030025.0 BRI 12

The fields are described below: Field 1 2 Description PDMS catalogue profile name (without leading / ) External catalogue profile name

8:2

2.1

OpenSteel Configuration Guide


External Mapping Files

Field 3 4

Description Steel standard. See below. Profile type. See below.

The catalogue names for the external package must be ascertained by the user and matched correctly with the equivalent PDMS name.

8.4.1

Steel Standard Field


Some 3D steel detailing packages cannot mix profiles from more than one steel standard at the same time. The external package may stop if it finds a profile from a different steel standard. Therefore, we need to record the origin of the profile. This is done in the third field, the Steel Standard field, which is currently codified as follows: Country America Britain Canada Euronorm Germany Japan Code AME BRI CAN EUR GER JAP

If the user wants to include profiles or joints from another standard or country, the user must add a new and unique three-character identifier.

8.4.2

Profile Type Field


The Profile Type field defines exactly what type the profile is. This is because there may be many occurrences of the same profile name in the 3D steel detailing package, but used in different manners. For example, only those T shapes which are derived from cutting up I shapes may be stored. This could be recorded in the file as follows: PDMS W21X44 WT10.5X22 External W21X44 W21X44 Origin AME AME Type 1 6 Description I shape Tee ex W21X44

Similarly, angles (L shapes) are further classified if they are to be placed back to back by either the long or short leg to form a double-angle profile. For example: PDMS L4X3.5X.25 2L4X3.5X.25.L 2L4X3.5X.25.S External L40354 L40354 L40354 Origin AME AME AME Type 9 10 11 Description L shape 2L long leg 2L short leg

8:3

2.1

OpenSteel Configuration Guide


External Mapping Files

We have assumed that double angles may have a gap (i.e. 0 or more) corresponding to type 10 below, but to differentiate between short-leg and long-leg double angles we have used type 10 to identify the long and type 11 the short leg back-to-back double angles. There are no genuine type 11 profiles in the supplied data set. The profile type codes are as follows: Type Code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 20 21 22 23 25 26 27 28 29 30 31 32 Profile/Joint Beams (UB, W) Columns (UC, M) Joists (RSJ) Piles (UBP, HP) Composite Tee (T, WT) I with cover plate Channels (C, MC,UNP) Angles (L) Double angles with gap (2L) Double angles without gap (2L) Tube (rectangular, square) (RHS, SHS) Pipe (circular) (CHS) Prismatic Bulb shapes Z shapes HEA (Columns, beams) HEB (Columns, beams) HEM (Columns, beams) IPE INP Flat Steel Round Steel Dummy Sections (ASL) Grating Chequered Plate Treads Anchor Bolts Note 1 Note 1

8:4

2.1

OpenSteel Configuration Guide


External Mapping Files

Type Code 33 34 Note:

Profile/Joint Earthing Boss Bent Plates Note 2

1. Types 10 and 11 are often not available in external 3D steel detailing packages as a single Catalogue entry. In those cases, they must therefore be modelled as two single sections. 2. If Bent Plates are to be treated as angles with regard to mirroring etc., they must be classified as angles (type 9).

8.5

Extend the Profile Mapping File


To extend the facilities provided by the system, the ASCII file may be extended. Once the user have found a match between the PDMS catalogue profile name and the equivalent profile in the external detailing package, the name pair may be added to the file, along with the catalogue origin and profile type.

8.6

Sample Profile Mapping File


Below is a short extract of a Profile mapping file between PDMS and XSteel. Note: The identification line at the top of the file which indicates the Target Package. Note: Also that it is not complete in any way.

PDMS HE280A HE280B HE300A HE300B HE320A HE360B L35x5 L40x20x3 L40x5 L45x30x3 L45x30x4 L45x30x5 L45x4 OD355.6x12.2 OD355.6x8 OD406.4x12.5 OD42.4x3.2 OD42.4x4 OD457x10

XSTEEL HEA280 HEB280 HEA300 HEB300 HEA320 HEB360 L35*5 L40*20*3 L40*5 L45*30*3 L45*30*4 L45*30*5 L45*4 PD355.6*12.2 PD355.6*8 PD406.4*12.5 PD42.4*3.2 PD42.4*4 PD457*10

EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR

20 21 20 21 20 21 9 9 9 9 9 9 9 13 13 13 13 13 13

8:5

2.1

OpenSteel Configuration Guide


External Mapping Files

OD457x14.2 OD457x17.5 T45 T50 T60 T70 T80 T90 UNP100 UNP120 UNP140 UNP160 UNP180 UNP200

PD457*14.2 PD457*17.5 T45 T50 T60 T70 T80 T90 UNP100 UNP120 UNP140 UNP160 UNP180 UNP200

EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR EUR

13 13 6 6 6 6 6 6 8 8 8 8 8 8

Error and Log File Messages Profile cannot be mapped Profile is not in the standard Profile is not the default Multiply defined entries in Profile Table The profile is not in the Profile Mapping File. The profile is in the Profile Mapping File but is not in any one of the set of standards. The profile is in the Profile Mapping File and is in one of the set of standards, but not the default standard. Either a profile to be mapped or a mapped profile appears more than once in the Profile Mapping File.

8.7

Material Mapping Files


Elements cannot be transferred through the SDNF if they do not have a valid material associated with them. The existing PDMS material description may not be recognised in the external 3D steel detailing package; consequently, there must be a means by which we can translate the material description between systems. This is performed by means of a Material mapping file which relates the PDMS text description of a material to that output to, or found in, an SDNF file. The user can modify and extend the mapping file. There are two similar mapping files required: one for PDMS and the other for the 3D steel detailing package. This will allow greater modularity and independence of each component in the interface. Important: It is assumed that the package importing the data will perform the mapping to local names. Any system exporting data will export its own local names without performing any translation process whatsoever. This interface, however, checks that there is a valid mapping for a Material before it is exported, even though the local PDMS material text is still exported. This can also be a cause for

8:6

2.1

OpenSteel Configuration Guide


External Mapping Files

misunderstanding if the SDNF output file is inspected, and the user still sees PDMS material texts, and not the text translated for the target package. When the OpenSteel interface is started, the Properties database is searched for SOLI elements which may define materials used to fabricate elements in the Design. An internal list is then built for rapid reference. Materials are usually associated with PDMS elements using the Material Reference attribute, MATR, which points to a SOLI element in the Properties database. However, the user may want to use the local :SDNFMGRADE attribute to specify the material. Either of these should be set for the interface to be able to export elements successfully. If the above system is still not specific enough, there is a mechanism by which the user can define from where the material information is to be derived. See the next section for details. When an element is exported, its material is determined by inspecting the :SDNFMGRADE attribute first, then the Description attribute of the SOLI element to which the MATR refers. If that fails, the user configurable mechanism is invoked. The text is then transferred locally to the :SDNFMGRADE attribute on the SCTN or PANE element. The text is then looked up in the Material mapping file to check that there is a translation into the SDNF file replacement text. The local material text is still exported. When an element is to be imported, the SDNF file material description is looked up in the material mapping file and translated into the PDMS equivalent text string. This is then initially copied into the :SDNFMGRADE attribute of the element before any attempt is made to rationalise the MATR. If a SOLI element with this material text is found, the interface will set the MATR to point to the correct SOLI element. As with the profile mapping file, the first line is an identifier which indicates the external package or system with which the file is associated. Error and Log File Messages Multiply defined entries in Material Table No match for material Syntax Error Unrecognised Parse State Either a material to be mapped or a mapped profile appears more than once in the Material Mapping File. The material is not in the Material Mapping File. Other, less specific, errors. This should not occur. If it does then it indicates a system error. Although the error is non-fatal it should be reported. A number representing the parse state will also be output.

8.7.1

User-Definable Material Macro


The user may modify the sample macro, sdnfgetusermatl.pmlfnc, as named by the !!SDNFMaterialMac global variable and given in the pml/userFunctions directory, if the user has specific requirements as to where the material information resides. The example macro is as follows:

define function !!SDNFGetUserMatl( ) is STRING -- Initialisation !material = STRING( ) !material = |unset|

8:7

2.1

OpenSteel Configuration Guide


External Mapping Files

!start = ( ref ) -- Set default material !defaultMaterial = |St 37-2| -- Some User specific PML to get the required info !type = ( type ) if( !type eq |SCTN| )then -- Material stored on Catalogue component goto catr handle any -- Bad or null reference !material = !defaultMaterial golabel /Finished endhandle !material = ( :Material ) handle any !material = !defaultMaterial golabel /Finished endhandle if( !material eq |unset| or $ !material.unset( ) or $ !material.length( ) eq 0 )then -- Use default material !material = !defaultMaterial endif elseif( !type eq |PANE| )then -- Try to return :SDNFMGRADE or default material !material = ( :SDNFMGRADE ) if( !material eq |unset| or $ !material.unset( ) or $ !material.length( ) eq 0 )then -- Use default material !material = !defaultMaterial endif endif -- Return string and exit label /Finished $!start return !material endfunction
The above example assumes that the material information for Sections resides on the catalogue component in the UDA :MATERIAL. If, for any reason, a material cannot be identified, a default value of 'St 37-2' is assigned.

8:8

2.1

OpenSteel Configuration Guide


External Mapping Files

The interface assumes, by default, that this file exists under the above name in a directory below the %PMLLIB% search path, and that the starting point for database navigation is the current DESIGN element under consideration, i.e. a Section or Panel. See the previous sections for details of how the user can configure the system to use a material macro with a name of the users choice. Note: In writing the users own macro, the user must handle all errors encountered so that the macro will always safely return a valid PML string, whatever it may be. Also, that materials for Panels must also be determined using this macro. See User-definable Material Macro regarding the naming of this macro. Error and Log File Messages User macro nnnn not found Error in user macro nnnn Cannot find user macro. PML programming error in user macro.

8.7.2

Sample Material Mapping File


Below is a sample comma separated mapping (CSV) file to map between the PDMS materials found in the Properties database and the SDNF file targeted at XSteel.

PDMS,XSTEEL "unset","unset" "TREAD-ALU","TREAD-Aluminum" "ALUMINIUM","Aluminum" "GR 420 I","GR 420 I" "Pyrocrete","Fire concrete" "Tread Grade","Tread Grade" "LDPHP-GRADE","LDPHP-GRADE" "Aluminium, cast","Aluminium, cast" "Aluminium, wrought","Wrought Aluminium" "Aluminium, Duralumin","Duralumin" "Brass, red 80% Cu","Red Brass " "Brass, yellow 65% Cu","Yellow Brass " "Brass, cast","Cast Brass" "Steel, carbon","Carbon Steel" "Steel, chrome","Chrome Steel" "Steel, Ni-chrome","Ni Steel"

8:9

2.1

OpenSteel Configuration Guide


External Mapping Files

8.8

Profile Orientation Mapping Files


Using the Profile Orientation Mapping File the user can define how OpenSteel translates a profile from PDMS format into the SDNF Neutral File format on Export, or from it on Import. Refer to the OpenSteel User Guide for details of how the Neutral File understands default orientations of certain profiles. If the user defines their own catalogue profiles, or modify the supplied ones, and need to transform them into or from the SDNF format, this mapping file should be used. In all cases an Orientation mapping file should be available, even if it is empty apart from the first line. Below is an example file:

PDMS STRUCAD BRI 8 0 180 BRI 9 1 180 DIN 8 0 180 DIN 9 1 180 EUR 8 0 180 EUR 9 1 180
The first line is the file identification line, described as for the Material or Profile mapping files. The structure of the rest of the mapping file is of a comma or space separated file with four fields per line. The first two fields provide the identification of the profile for treatment. The first of the identification fields states the steel standard from which the profile is to be taken. The second is the actual profile type code according to the codes given in Section Error in Cross Reference. Thus, in the example above, the user can see that the channels (type 8) and angles (type 9) from the Euronorm, DIN and British Standard catalogues have been identified for special treatment. The third and fourth fields describe what the user wants to do with the profile shape. The third is the mirroring flag, which should be set to 1 if the profile is to be reflected about the Yaxis. This will commonly be the case for angle profiles. No mirroring is indicated by a value of 0 in this field. The last field defines how much additional angular rotation the user wants to apply to the shape. For example, some catalogues may define the long leg of an unequal angle to be on the horizontal, whereas SDNF expects it to be vertical. The rotation angle must be between 180 and +180 degrees. Note: Mirroring will change the start and end positions of the linear member. It is therefore advisable that if the user can achieve the same result purely by rotation, then the latter is the preferred option. In this way the user will avoid confusion in the external package. If, during the Import or Export process, an entry for a specific profile is not found, no action is taken, and no error message is output as it is assumed that the user does not want it to receive special treatment. The following figure illustrates the effect of each operation on different catalogue representations of an angle profile. We re-emphasise the difference in the handedness of the coordinate systems.

8:10

2.1

OpenSteel Configuration Guide


External Mapping Files

PDMS
CATALOGUE DEFINITION Y CATALOGUE DEFINITION Y

start X

start X

end Z

end Z IS EQUIVALENT TO Z end

IS EQUIVALENT TO start

MIRROR Y

Z end

Z end

start start

ROTATE 180

ROTATE 180 Y Z end EUR 9 0 180 EUR 9 1 180

start

DEFAULT ORIENTATION

SDNF

Diagram illustrating the effect of the Mirror and Rotation flags

8:11

2.1

OpenSteel Configuration Guide


External Mapping Files

8:12

2.1

OpenSteel Configuration Guide


Start OpenSteel

Start OpenSteel
This chapter describes the checks that OpenSteel makes when the user starts up the interface, and how some of the problems which might be encountered are handled. When the user starts the interface, certain checks are made to ensure that the SDNF interface will be able to proceed. The system checks that: The catalogues include the Pline representation of the SDNF Cardinal Points. The UDAs which OpenSteel requires are available. There is a default object to store the Configuration information and it is available for modification according to the Import and Export status. There are SOLI elements in the Properties database which may be used for material text. The Description attribute is assumed to contain the material text for use in the external Material mapping file and relating MATR and :SDNFMGRADE attributes. The version of PDMS is supported.

When the user tries to invoke the Import or Export forms without the necessary data loaded the user will be presented with appropriate message forms. For example:

In the above case, if the user answers YES, the interface will automatically install the SITE to store the configuration details without switching modules. The interface will not be able to proceed if the user does not install the configuration details, and a Fatal Error is raised.

9:1

2.1

OpenSteel Configuration Guide


Start OpenSteel

In the case of the OpenSteel Plines or UDAs, the user will be instructed to change modules and to follow the further instructions given. If a command window is open instructions on what to do are listed. Read the sections on upgrading a project for OpenSteel.

or

9:2

2.1

OpenSteel Configuration Guide


Start OpenSteel

Important: If, at the end of the initialisation process, the interface still has no mapping files to work with, the user will be informed with a fatal error message.

Error and Log File Messages No Steel Catalogues available. OpenSteel Plines not present in Catalogue. Must be installed first UDAs for OpenSteel Interface not present. Must be installed first OpenSteel Configuration details not present No materials found No Map Files of any kind found Steel catalogues are assumed to be identified by the Purpose attribute on the CATA element being set to STL. This is a fatal error. The OpenSteel interface wont work without them. This is a fatal error. he OpenSteel interface must have the UDAs installed. This is a fatal error. A default configuration object is not present, or the UDAs required are not available. Not installing the configuration object is the cause of a fatal error as the system cannot proceed. No SOLI elements in the Properties database. The recursive search of the directory(ies) pointed to by the %PMLLIB% environment variable has failed to discover any internal mapping files named *.map. This is a fatal error and the interface cannot really proceed. The system cannot determine which version of PDMS the user is running. he database containing the specified Configuration element is not modifiable. This is a fatal error and the interface cannot proceed.

Unsupported version of AVEVA PDMS DB containing Config element is not in Modify mode

9:3

2.1

OpenSteel Configuration Guide


Start OpenSteel

9:4

2.1

OpenSteel Configuration Guide


Examples of Typical Environment Scripts

Examples of Typical Environment Scripts


This appendix lists typical scripts which the user can use as a basis for editing their own versions, so that the user can invoke the OpenSteel interface. The file OpenSteel_env.bat must be called in the users evars.bat file. Two versions of this file are installed with the product: OpenSteel_env_116.bat is compatible with PDMS 11.6 series, and sets the TST project variables to the 11.6 version of the project. OpenSteel_env.bat is compatible with PDMS 12 series, permits install folder names with embedded spaces, and sets the TST project variables to the 12 version of the project.

A.1

Windows Setup Script OpenSteel_env.bat


This section lists the OpenSteel_env.bat file which the user must invoke to set up the environment variables upon which the interface depends. rem OpenSteel_env.bat rem rem This script shows which environment variables are expected by rem the AVEVA OpenSteel Import\Export system. rem rem NOTES: rem rem 1. The lines preceded by "rem: >>>>>>" may need to be changed to suit rem your environment. rem echo off echo *** INITIALISING AVEVA OpenSteel ENVIRONMENT *** rem >>>>>> Define OpenSteel main directory set SDNFMAIN=%~df1 rem Locate OpenSteel UI macros set OPENSTEELUI=%SDNFMAIN%\pml; rem Add OpenSteel macros to PML search path set PMLLIB=%OPENSTEELUI%;%PMLLIB%; rem Set other OpenSteel environment variables

A:1

2.1

OpenSteel Configuration Guide


Examples of Typical Environment Scripts

set PDMSDFLTS=%OPENSTEELUI%;%PDMSDFLTS%; rem set set set set >>>>>> Set up the PDMS project variables TST000=%SDNFMAIN%\test\tst000; TSTMAC=%SDNFMAIN%\test\tstmac; TSTIMP=%SDNFMAIN%\test\results\import; TSTEXP=%SDNFMAIN%\test\results\export;

rem >>>>>> Project specific default directory set TSTDFLTS=%SDNFMAIN%\test\tstdflts; rem Point to correct set(s) of internal maps set SDNFINTMAPS=%PDMSDFLTS%;%TSTDFLTS%;%PDMSUSER%; echo *** AVEVA OpenSteel ENVIRONMENT INITIALISED *** If the user wants to change the location of the interface material, the only variable to change is %SDNFMAIN%. However, see the section describing the system architecture to understand the significance of the environment variables related to the internal mapping files.

A:2

2.1

OpenSteel Configuration Guide

Index

C
Cardinal Point Plines . . . . . . . . . . . . . . . . 5:1 Colour Code . . . . . . . . . . . . . . . . . . . . . . 6:3 Connected Members . . . . . . . . . . . . . . . . 6:4

customise . . . . . . . . . . . . . . . . . . . . . 6:1 how to run . . . . . . . . . . . . . . . . . . . . 3:3 special sites . . . . . . . . . . . . . . . . . . 5:12

P
PML Applications integration into . . . . . . . . . . . . . . . . 5:13

E
Environment OpenSteel . . . . . . . . . . . . . . . . . . . . 4:1 Variable . . . . . . . . . . . . . . . . . . . . . . 7:3 Export Header . . . . . . . . . . . . . . . . . . . . . 6:4

S
System Architecture . . . . . . . . . . . . . . . . 4:1

F
Flexman License Manager . . . . . . . . . . . 3:2

T
Tolerance Settings . . . . . . . . . . . . . . . . . 6:3

G
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . 2:1

U
Uninstall OpenSteel . . . . . . . . . . . . . . . . . . . 5:13 Upgrade a Project . . . . . . . . . . . . . . . . . 5:1 User Defined Attributes installation of . . . . . . . . . . . . . . . . . 5:12

I
Installation on Windows . . . . . . . . . . . . . . . . . . . 3:1

M
Mapping Files . . . . . . . . . . . . . . . . . . . . . 4:2 Material Flag Ignore . . . . . . . . . . . . . . . . . . . . . . . . 6:4

W
Waiting Time . . . . . . . . . . . . . . . . . . . . . 6:3

O
OpenSteel

Index page i

2.1

Anda mungkin juga menyukai