You are on page 1of 75

OpenSteel

Configuration Guide
AVEVA Solutions Limited

Disclaimer
1.1 AVEVA does not warrant that the use of the AVEVA software will be uninterrupted, error-free or free from
viruses.

1.2 AVEVA shall not be liable for: loss of profits; loss of business; depletion of goodwill and/or similar losses; loss of
anticipated savings; loss of goods; loss of contract; loss of use; loss or corruption of data or information; any
special, indirect, consequential or pure economic loss, costs, damages, charges or expenses which may be
suffered by the user, including any loss suffered by the user resulting from the inaccuracy or invalidity of any data
created by the AVEVA software, irrespective of whether such losses are suffered directly or indirectly, or arise in
contract, tort (including negligence) or otherwise.

1.3 AVEVA's total liability in contract, tort (including negligence), or otherwise, arising in connection with the
performance of the AVEVA software shall be limited to 100% of the licence fees paid in the year in which the user's
claim is brought.

1.4 Clauses 1.1 to 1.3 shall apply to the fullest extent permissible at law.

1.5 In the event of any conflict between the above clauses and the analogous clauses in the software licence under
which the AVEVA software was purchased, the clauses in the software licence shall take precedence.

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, or is validly licensed by, AVEVA Solutions Limited or its subsidiaries.

All rights are reserved to AVEVA Solutions Limited 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 Limited. Where such permission is granted, it expressly requires
that this copyright notice, and the above disclaimer, 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 Limited. The user may not reverse
engineer, decompile, copy, or adapt the software. Neither the whole, nor part of the software described in this
publication may be incorporated into any third-party software, product, machine, or system without the prior written
permission of AVEVA Solutions Limited, save as permitted by law. Any such unauthorised action is strictly
prohibited, and may give rise to civil liabilities and criminal prosecution.

The AVEVA software described in this guide is to be installed and operated strictly in accordance with the terms
and conditions of the respective software licences, and in accordance with the relevant User Documentation.
Unauthorised or unlicensed use of the software is strictly prohibited.

Copyright 1997 to current year. AVEVA Solutions Limited, and its subsidiaries. All rights reserved. AVEVA shall not
be liable for any breach or infringement of a third party's intellectual property rights where such breach results from
a user's modification of the AVEVA software or associated documentation.

AVEVA Solutions Limited, High Cross, Madingley Road, Cambridge, CB3 0HB, United Kingdom

Trademark
AVEVA and Tribon are registered trademarks of AVEVA Solutions Limited or its subsidiaries. Unauthorised use of
the AVEVA or Tribon trademarks is strictly forbidden.

AVEVA product/software names are trademarks or registered trademarks of AVEVA Solutions Limited or its
subsidiaries, registered in the UK, Europe and other countries (worldwide).

The copyright, trademark rights, or other intellectual property rights in any other product or software, its name or
logo belongs to its respective owner.
OpenSteel Configuration Guide

Revision Sheet

Date Version Comments / Remarks


30th November 2010 2.2 Upgrade to be compatible with PDMS12.1
January 2012 Copyright added to all pages.
June 2013 2.3 Using AVEVA Licensing System (ALS).
OpenSteel Configuration Guide
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
AVEVA Licensing System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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

© Copyright 1997 to current year. i 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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
Rebuilding complex GENSECs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6:11

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

© Copyright 1997 to current year. ii 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Contents

Profile Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:2


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
Unicode Text String Description Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8:11

Start OpenSteel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9:1


Examples of Typical Environment Scripts . . . . . . . . . . . . . . . . . . . .A:1
Windows Setup Script OpenSteel_env.bat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A:1

© Copyright 1997 to current year. iii 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Contents

© Copyright 1997 to current year. iv 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Introduction

1 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 is a Glossary

Installation on Windows tells the user how to install the product on the workstation.

OpenSteel Environment describes the OpenSteel environment.

Upgrade a Project for describes how to upgrade a PDMS project to configure


OpenSteel 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.

Customise OpenSteel describes how to customise the OpenSteel interface.

Internal Mapping Files describes how to set up the internal mapping files which
control the location of data to be transferred between
different systems.

External Mapping Files describes how to set up the external mapping files which
control how and what data is transferred between different
systems.

Start OpenSteel describes the checks that are made when the user starts up
the OpenSteel interface, and how to correct some problems
which may be encountered.

Examples of Typical lists the scripts supplied with the products which the user
Environment Scripts will need to edit to customise the OpenSteel interface and
use them with their own projects.

© Copyright 1997 to current year. 1:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Introduction

© Copyright 1997 to current year. 1:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Glossary

2 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.

External Package 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.

Linear Member 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.

Plate An SDNF Entity mapped to the Design Panel (PANE)


element.

PML/F&M The Design programmable macro language, allowing user’s


to create their own user interface.

SDNF (Structural steel Defined by the Intergraph FrameWorks user community for
Detailing Neutral File the transfer of steel data. It is in the public domain and is
Format) therefore available to be considered as a suitable means of
transferring data between 3D steel detailing packages and
DESIGN.

Source Package The external package from which an imported SDNF file is
coming.

Target Package The external package for which an exported SDNF file is
destined.

UDA (User Defined An attribute in DESIGN which the user can define and
Attribute) attach to specific elements. This interface requires a certain
set of UDAs for storing SDNF-specific data.

© Copyright 1997 to current year. 2:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Glossary

© Copyright 1997 to current year. 2:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Installation on Windows

3 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.

© Copyright 1997 to current year. 3:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 AVEVA Licensing System (ALS) may be read with the
Adobe Acrobat file reader.
The C:\AVEVA\Plant\Design 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 A sub-directory containing the license controlled executables for the


import and export of SDNF files.

maps A sub-directory containing sample profile mapping files between PDMS


and external 3D steel detailing packages.

Manuals A sub-directory containing this manual and the User Guide.

pml A sub-directory containing further sub-directories which contain the


DESIGN Forms and Menus user interface.

samples A directory containing sample SDNF files as exported by other 3D steel


detailing packages.

reports 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.

OpenSteel_ A file containing environment variable definitions for incorporation into


env.bat each user’s evars.bat script called on startup of PDMS (12 Series).

OpenSteel_ A file containing environment variable definitions for incorporation into


env.bat each user’s evars.bat script called on startup of PDMS (11.6 Series).

test 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.

All the necessary OpenSteel directories have been created and the software installed.

Note: If the installer detects an existing OpenSteel 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 AVEVA Licensing System


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

© Copyright 1997 to current year. 3:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Installation on Windows

3.4 How to Run OpenSteel


The user must make sure that the AVEVA Licensing System is running before using
OpenSteel, refer to the AVEVA Licensing System 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, OpenSteel_env_path_space.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\Design\OpenSteel2.3
call "%SDNFMAIN%\opensteel_env.bat" "%SDNFMAIN%"
or (if the install path for PDMS or OpenSteel contains spaces - which is not recommended)
set SDNFMAIN=C:\AVEVA\Plant\Design\OpenSteel2.3
call "%SDNFMAIN%\opensteel_env_path_space.bat" "%SDNFMAIN%"
or (for PDMS 11.6 series)
set SDNFMAIN=C:\AVEVA\Plant\Design\OpenSteel2.3
call "%SDNFMAIN%\opensteel_env_116.bat" "%SDNFMAIN%"
Please note that spaces are not permitted in the installation path name for PDMS 11.6.

© Copyright 1997 to current year. 3:3 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Installation on Windows

© Copyright 1997 to current year. 3:4 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
OpenSteel Environment

4 OpenSteel Environment

4.1 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.

© Copyright 1997 to current year. 4:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
OpenSteel Environment

SDNFMAIN The top directory containing the whole set of OpenSteel


files. For example: C:\AVEVA\Plant\Design\OpenSteel[ver]\

OPENSTEELUI The location of the OpenSteel interface macros. By default


this is set to %SDNFMAIN%\pml.

PMLLIB 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

xxxDFLTS 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.

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, Unicode and Material mapping files. The format of the external mapping
files is described in External Mapping Files.

© Copyright 1997 to current year. 4:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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.

© Copyright 1997 to current year. 4:3 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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.

© Copyright 1997 to current year. 4:4 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Upgrade a Project for OpenSteel

5 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 Cardinal Point Plines

5.1.1 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:

© Copyright 1997 to current year. 5:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Upgrade a Project for OpenSteel

Symmetric Sections about Y Axis

Pline mapped to Pline which is Cardinal Point

RBOS SNFA 1

BOS SNFB 2

SS SNFB 2

LBOS SNFC 3

RIGH SNFD 4

NARO SNFD 4

AA SNFD 4

MM SNFF 6

NALO SNFF 6

LEFT SNFF 6

RTOS SNFG 7

GG SNFH 8

TOS SNFH 8

LTOS SNFI 9

NA SNFJ 10

Angles

Pline mapped to Pline which is Cardinal Point

TOAX SNFA 1

TOAY SNFA 1

RTTA SNFC 3

LBOA SNFG 7

NA SNFJ 10

NAT SNFK 11

NAL SNFL 12

© Copyright 1997 to current year. 5:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Upgrade a Project for OpenSteel

Channels

Pline mapped to Pline which is Cardinal Point

LTOC SNFA 1

RTOC SNFC 3

FOC SNFD 4

ROC SNFF 6

LBOC SNFG 7

RBOC SNFI 9

NA SNFJ 10

TOC SNFK 11

BOC SNFN 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 user’s 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.

© Copyright 1997 to current year. 5:3 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Upgrade a Project for OpenSteel

Y
(PDMS)

CP 1 CP 11 CP 2 CP 3
Plines Plines Pline Plines
SNFA SNFK SNFB SNFC
TOAX NAT RTTA
TOAY

CP 12 CP 13
Plines Pline
SNFL CP 10 SNFM
NAL Plines
SNFJ
NA

CP 4 X
Pline (PDMS)
SNFD

X
CP 5 CP 6 (SDNF)
Pline Pline
Z SNFE SNFF
(PDMS)

Z CP 9
(SDNF) Pline
+

SNFI

CP 7 CP 14 CP 8
Plines Pline Pline
SNFG SNFN SNFH
LBOA

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|

© Copyright 1997 to current year. 5:4 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Upgrade a Project for OpenSteel

!!SDNFCPPkeys[ 2 ] = |SNFB|
!!SDNFCPPkeys[ 3 ] = |SNFC|
-- Angles
!!SDNFCPBMTOAX = |SNFA|
!!SDNFCPBMTOAY = |SNFA|
!!SDNFCPBMRTTA = |SNFC|
!!SDNFCPBMLBOA = |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 = |SNFC|
i.e. the format is…
!!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:

© Copyright 1997 to current year. 5:5 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 Macro


Tee shape sdnfupgradet.pml
I shape sdnfupgradei.pml
O, Tube, CHS shape sdnfupgradeo.pml
C, Channel shape sdnfupgradec.pml
L, Angle shape sdnfupgradel.pml
RHS shape sdnfupgraderhs.pml
Japanese Bulb shape sdnfupgradejbulb.pml
DIN Bulb shape 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] [Specials]
-- 1 Vertical leg length (Y)
-- 2 Horizontal leg length (X)
-- 3 Thickness Vertical leg (JIS-PTSS-JANG)
-- 4 Cy (X offset)
-- 5 Cx (Y offset)
-- 6 Unit weight Horizontal leg (JIS-PTSS-JANG)
--

© Copyright 1997 to current year. 5:6 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 ] ]

© Copyright 1997 to current year. 5:7 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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

© Copyright 1997 to current year. 5:8 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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

© Copyright 1997 to current year. 5:9 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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.

© Copyright 1997 to current year. 5:10 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 = |sdnfupgradei()|
!UserMap[ 1 ] = object SDNFMAPOBJ( )
!UserMap[ 1 ].Name = |/USER-PTSS-I|
!UserMap[ 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

© Copyright 1997 to current year. 5:11 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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-DEMO-
SYSTEM 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::

/SDNF- the system prefix

CONFIG- identification of a Configuration SITE

OLD- identification of a SITE for ‘deleted’ elements

<mdb name> the current MDB, e.g. /DEMO

<user name> the current user name, e.g. SYSTEM

© Copyright 1997 to current year. 5:12 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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
determine 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 called on startup of DESIGN

DES-UTILS-GEN called on startup of the General Application toolbar

DES-UTILS-STLWRK 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.

© Copyright 1997 to current year. 5:13 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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( ) in LEXICON

call !!SDNFRemPlines() 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.

© Copyright 1997 to current year. 5:14 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Customise OpenSteel

6 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

© Copyright 1997 to current year. 6:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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| )

© Copyright 1997 to current year. 6:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 = ( 12 ) $* Mauve
!!SDNFColAdded = ( 5 ) $* Green
!!SDNFColDuplicate = ( 6 ) $* Cyan
!!SDNFColDeleted = ( 2 ) $* Red
!!SDNFColExported = ( 3 ) $* Orange
!!SDNFColDefault = ( 1 ) $* 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 = ( 1 )
!!SDNFMinTol = ( 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 = ( 10 )
!!SDNFNoOfTries = ( 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.

© Copyright 1997 to current year. 6:3 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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.

© Copyright 1997 to current year. 6:4 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 = !!SDNFSpaceSep
!!SDNFMatSep = !!SDNFCommaSep
!!SDNFOriSep = !!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 from the database 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 )

© Copyright 1997 to current year. 6:5 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 XSTEEL
OD193.7x5 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 XSTEEL
DIN-SPEC/OD193.7x5 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

© Copyright 1997 to current year. 6:6 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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.

© Copyright 1997 to current year. 6:7 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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.

© Copyright 1997 to current year. 6:8 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Customise OpenSteel

© Copyright 1997 to current year. 6:9 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Customise OpenSteel

© Copyright 1997 to current year. 6:10 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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.17 Rebuilding complex GENSECs


As is described in Transfer of Curved Members of the User Guide, OpenSteel can rebuild a
complex member from its component straight and curved segments. This is dependent
upon the member name or its components. Using the member names and their start and
end positions, a GENSEC can be rebuilt. Unfortunately this may be a wrong assumption
when members being imported share duplicate names or parts thereof. This can be
compounded when the model is a nodal one.
The user can turn off this feature for the automatic rebuilding of GENSECS by changing the
default value of the flag !!sdnfrebuildgensecs.

© Copyright 1997 to current year. 6:11 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Customise OpenSteel

-- Flag to rebuild imported GENSECs if possible.


-- !!sdnfRebuildGensec = false
!!sdnfRebuildGensec = true

© Copyright 1997 to current year. 6:12 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Internal Mapping Files

7 Internal Mapping Files

The interface relies on several internal mapping files. These define where external mapping
files are located on the user’s system network, or they define the mapping of strings or
attributes between DESIGN and the intermediate SDNF file. It is the user’s 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 user’s information. Comment lines in SDNF start with the # symbol.
As an aid to generalising the user’s 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.

No Mapping Table The internal files recognise an external package, but there
defined for selection are no mapping table files associated with it.

© Copyright 1997 to current year. 7:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Internal Mapping Files

7.1 File Mapping Files


The file mapping tables indicate the location of external Profile, Orientation, Unicode 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 for a Profile mapping table

ORI for a Profile Orientation mapping table

MAT for a Material mapping table

UNI for a Unicode text string conversion file

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 Unicode test string mapping table may look like:
ANYUNI*ANYUNI
STRUCAD*C:\AVEVA\Plant\OpenSteel[ver]\maps\StruCad\StruCadUni.m
ap
XSTEEL*C:\AVEVA\Plant\OpenSteel[ver]\maps\XSteel\XSteelUni.map
STEELCAD*C:\AVEVA\Plant\OpenSteel[ver]\maps\SteelCad\SteelCadUn
i.map
PDMS*C:\AVEVA\Plant\OpenSteel[ver]\maps\PDMS\PDMSUni.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

© Copyright 1997 to current year. 7:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Internal Mapping Files

STEELCAD*%SDNFMAPS%\SteelCad\SteelCadMat.map
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

© Copyright 1997 to current year. 7:3 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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.

© Copyright 1997 to current year. 7:4 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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

© Copyright 1997 to current year. 7:5 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 user’s 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 System cannot find a suitable table for the nnnn target and
table for nnnn for mmmm project.
project mmmm

User macro nnnn Cannot find user macro.


not found

Error in user macro PML programming error in user macro.


nnnn

No mapping for Cannot translate Connection text.


Connection type nnnn

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

© Copyright 1997 to current year. 7:6 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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

© Copyright 1997 to current year. 7:7 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Internal Mapping Files

© Copyright 1997 to current year. 7:8 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
External Mapping Files

8 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 specified in the mapping table is not found.
File not found

Not a suitable Mapping The header may not be of the correct format. The header
Table File - Is it empty? 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.

© Copyright 1997 to current year. 8:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 user’s 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 Description
1 PDMS catalogue profile name (without leading / )
2 External catalogue profile name

© Copyright 1997 to current year. 8:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
External Mapping Files

Field Description
3 Steel standard. See below.
4 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 Code
America AME
Britain BRI
Canada CAN
Euronorm EUR
Germany GER
Japan 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 External Origin Type Description


W21X44 W21X44 AME 1 I shape
WT10.5X22 W21X44 AME 6 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 External Origin Type Description


L4X3.5X.25 L40354 AME 9 L shape
2L4X3.5X.25.L L40354 AME 10 2L long leg
2L4X3.5X.25.S L40354 AME 11 2L short leg

© Copyright 1997 to current year. 8:3 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 Profile/Joint


1 Beams (UB, W)
2 Columns (UC, M)
3 Joists (RSJ)
4 Piles (UBP, HP)
5 Composite
6 Tee (T, WT)
7 I with cover plate
8 Channels (C, MC,UNP)
9 Angles (L)
10 Double angles with gap (2L) Note 1
11 Double angles without gap (2L) Note 1
12 Tube (rectangular, square) (RHS, SHS)
13 Pipe (circular) (CHS)
14 Prismatic
15 Bulb shapes
16 Z shapes
20 HEA (Columns, beams)
21 HEB (Columns, beams)
22 HEM (Columns, beams)
23 IPE
25 INP
26 Flat Steel
27 Round Steel
28 Dummy Sections (ASL)
29 Grating
30 Chequered Plate
31 Treads
32 Anchor Bolts

© Copyright 1997 to current year. 8:4 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
External Mapping Files

Type Code Profile/Joint


33 Earthing Boss
34 Bent Plates Note 2

Note:
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 XSTEEL
HE280A HEA280 EUR 20
HE280B HEB280 EUR 21
HE300A HEA300 EUR 20
HE300B HEB300 EUR 21
HE320A HEA320 EUR 20
HE360B HEB360 EUR 21
L35x5 L35*5 EUR 9
L40x20x3 L40*20*3 EUR 9
L40x5 L40*5 EUR 9
L45x30x3 L45*30*3 EUR 9
L45x30x4 L45*30*4 EUR 9
L45x30x5 L45*30*5 EUR 9
L45x4 L45*4 EUR 9
OD355.6x12.2 PD355.6*12.2 EUR 13
OD355.6x8 PD355.6*8 EUR 13
OD406.4x12.5 PD406.4*12.5 EUR 13
OD42.4x3.2 PD42.4*3.2 EUR 13
OD42.4x4 PD42.4*4 EUR 13
OD457x10 PD457*10 EUR 13

© Copyright 1997 to current year. 8:5 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
External Mapping Files

OD457x14.2 PD457*14.2 EUR 13


OD457x17.5 PD457*17.5 EUR 13
T45 T45 EUR 6
T50 T50 EUR 6
T60 T60 EUR 6
T70 T70 EUR 6
T80 T80 EUR 6
T90 T90 EUR 6
UNP100 UNP100 EUR 8
UNP120 UNP120 EUR 8
UNP140 UNP140 EUR 8
UNP160 UNP160 EUR 8
UNP180 UNP180 EUR 8
UNP200 UNP200 EUR 8

Error and Log File Messages

Profile cannot be The profile is not in the Profile Mapping File.


mapped

Profile is not in The profile is in the Profile Mapping File but is not in any one
the standard of the set of standards.

Profile is not the default The profile is in the Profile Mapping File and is in one of the
set of standards, but not the default standard.

Multiply defined entries Either a profile to be mapped or a mapped profile appears


in Profile Table 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

© Copyright 1997 to current year. 8:6 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 Either a material to be mapped or a mapped profile appears


in Material Table more than once in the Material Mapping File.

No match for material The material is not in the Material Mapping File.

Syntax Error Other, less specific, errors.

Unrecognised Parse This should not occur. If it does then it indicates a system
State 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|

© Copyright 1997 to current year. 8:7 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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.

© Copyright 1997 to current year. 8:8 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 user’s choice.

Note: In writing the user’s 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 Cannot find user macro.


not found

Error in user PML programming error in user macro.


macro nnnn

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"

© Copyright 1997 to current year. 8:9 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 Y-
axis. 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.

© Copyright 1997 to current year. 8:10 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
External Mapping Files

PDMS
CATALOGUE CATALOGUE
DEFINITION DEFINITION

Y Y

start start

X X

end end

Z Z

IS
EQUIVALENT
TO
Z

end

IS
EQUIVALENT
TO
start

MIRROR Y

Z Z end

end

start

start

ROTATE 180

ROTATE 180
Y Z

end

EUR 9 0 180 EUR 9 1 180

start X

DEFAULT
ORIENTATION

SDNF
Diagram illustrating the effect of the
Mirror and Rotation flags

8.9 Unicode Text String Description Files


The SDNF format specification states that the interface file is to be ASCII. This is
understood to be only 7-bit ASCII. As a result, users who take advantage of the Unicode
features of PDMS may have issues when exporting and importing a model into PDMS. The
primary danger is where there are catalogue profile or material names in PDMS that contain
Unicode characters. Therefore, a dictionary file may be written to convert any PDMS strings
that contain Unicode characters into equivalent strings that do not. It is these latter strings
that will appear in the SDNF file. This might actually be a description of the profile, rather
than the known profile name. This could be to inform or alert the users of the external
application of what the profile is meant to be.
Because there are strings other than the profile names that appear in the SDNF file, this
Unicode description file should be regarded as a kind of dictionary, a look-up for any string,
rather than just a profile name description table. Therefore, its format and use is different
from that of the other mapping files. It is used immediately prior to writing out the text strings

© Copyright 1997 to current year. 8:11 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
External Mapping Files

and it is only to contain the strings that require stripping of Unicode characters. It is also
used on file import.

This Unicode description file may be customised for each target system, in the same way as
the other mapping tables. This will contain:
• An indication of the encoding to be used for the SDNF file
• Unicode UTF-8 with a Byte Order Mark (BOM):
ENCODING:UTF8BOM
• Unicode UTF-8 without BOM:
ENCODING:UTF8NOBOM
• Force to Default encoding:
ENCODING:DEFAULT
• Force to ASCII:
ENCODING:ASCII
• A set of string substitutions to be used whenever a quoted-string is written to the SDNF
file.
• As potentially any character can be used in the string, first non-space character of
the line is used as a delimiter for that line
• Only complete strings would be substituted
• Comment lines are indicated by '#'
• Not every string needs to be in the dictionary - others would be passed through
without error (but would trigger a warning if characters were lost in the encoding)
So a dictionary for export might look like:

© Copyright 1997 to current year. 8:12 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
External Mapping Files

ENC ODIN G:ASC II


# h eade r tex ts
# n on-A SCII profi les
:Γρ xνxθ :Cori nthia n Co lumn, 1 c ubit:
# n on-A SCII mater ials
|χά λυβα , ανθ ρα|Gr een- veine d ma rble|

The user is not forced to prepare one of these files: the system will cope if one does not
exist. It would just mean that the strings would not be translated and the user would have to
take his chance with the target package. Further, the file can be empty, but if there are any
strings requiring description, there must be the ENCODING: statement as the first non
comment line in the file.
It should be noted that SDNF text fields are of a fixed maximum width. If the resultant text is
too long, it will be truncated, and the user warned. Ideally, the translation should succeed
with no truncation warnings, and all profiles mapped either by the main mapping file or
through using the Unicode description file. If, however, you decide to output in UTF-8
characters, and thereby diverge from the literal interpretation of the SDNF format, truncation
will not take place.
On import the system will attempt to recognise names in the dictionary, and to translate
them back into the original PDMS names. This is in addition to the usual profile and material
mapping files.
Below is an extract of a log file trying to use the Unicode description file to translate text
fields.

© Copyright 1997 to current year. 8:13 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
External Mapping Files

AVEVA OpenSteel (pdms2sdnf v2.x) (Build Date)


Copyright 1974 to current year. AVEVA Solutions Limited and
its subsidiaries. All rights reserved.

Product is licensed to <your company>


<licensing client and server details>

START PROCESSING at <run date and time>

The following materials were mapped


"κόκκινο-φλεβώδη μάρμαρο" with 1 occurrence
"πράσινο-φλεβώδη μάρμαρο" with 1 occurrence
"χάλυβα, ανθρακούχο" with 1 occurrence

The following materials were not mapped


"Αρχαίο χάλκινο" with 1 occurrence
"Νέα-πλαστά Χαλκού" with 1 occurrence
"κεραυνός του Δία" with 1 occurrence

The following profiles were mapped


"Γρxλxθ" with 1 occurrence
"Γρxνxθ" with 1 occurrence
"Γρxξxθ" with 1 occurrence

The following profiles were not mapped


"Γσxλxθ" with 1 occurrence
"Γσxνxθ" with 1 occurrence
"Γσxξxθ" with 1 occurrence

All mapped profiles were in the specified standards


All mapped profiles were in the default standard (EUR)

The following strings have been changed for SDNF


compatibility:
"# Target Contractor: σφυρηλάτησης του Ηφαίστου" written to
the SDNF file as "# Target Contractor: sf?????t?s?? t??
?fa?st??" with 1 occurrence
"Αρχαίο χάλκινο" written to the SDNF file as "???a?? ???????"
with 1 occurrence
"Γρxλxθ" written to the SDNF file as "G?x?x?" with 1
occurrence
"Γρxνxθ" written to the SDNF file as "G?x?x?" with 1
occurrence
"Γρxξxθ" written to the SDNF file as "G?x?x?" with 1
occurrence
"χάλυβα, ανθρακούχο" written to the SDNF file as "????ßa,
a???a?????" with 1 occurrence

Suggested entries for the Unicode Descriptions File:


|Γρxλxθ|L100=30=9|
|Γρxνxθ|L100*50*9|
:Γρxξxθ:L100|60|9:
|κόκκινο-φλεβώδη μάρμαρο|red-veined marble|
|πράσινο-φλεβώδη μάρμαρο|green-veined marble|
|χάλυβα, ανθρακούχο|STEEL, CARBON|
END PROCESSING at 15:42:05
======================================

© Copyright 1997 to current year. 8:14 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Start OpenSteel

9 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.

© Copyright 1997 to current year. 9:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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

© Copyright 1997 to current year. 9:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
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 Steel catalogues are assumed to be identified by the


available. Purpose attribute on the CATA element being set to ‘STL’.
This is a fatal error.

OpenSteel Plines not The OpenSteel interface won’t work without them. This is a
present in Catalogue. fatal error.
Must be installed first

UDAs for OpenSteel he OpenSteel interface must have the UDAs installed. This
Interface not present. is a fatal error.
Must be installed first

OpenSteel A default configuration object is not present, or the UDAs


Configuration details required are not available. Not installing the configuration
not present object is the cause of a fatal error as the system cannot
proceed.

No materials found No SOLI elements in the Properties database.

No Map Files of any The recursive search of the directory(ies) pointed to by the
kind found %PMLLIB% environment variable has failed to discover any
internal mapping files named *.map. This is a fatal error
and the interface cannot really proceed.

Unsupported version of The system cannot determine which version of PDMS the
AVEVA PDMS user is running.

DB containing Config he database containing the specified Configuration element


element is not in Modify is not modifiable. This is a fatal error and the interface
mode cannot proceed.

© Copyright 1997 to current year. 9:3 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Start OpenSteel

© Copyright 1997 to current year. 9:4 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Examples of Typical Environment Scripts

A 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 user’s evars.bat file.
Three 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, when installed to a path not
containing spaces (as is recommended), and sets the TST project variables to the 12
version of the project.
• OpenSteel_env_path_space.bat should be used only with PDMS 12 series, and only
when the install path contains spaces. This is not recommended.

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%

© Copyright 1997 to current year. A:1 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide
Examples of Typical Environment Scripts

rem Set other OpenSteel environment variables


set PDMSDFLTS=%OPENSTEELUI% %PDMSDFLTS%

rem >>>>>> Set up the PDMS project variables


set TST000=%SDNFMAIN%\test\tst000
set TSTMAC=%SDNFMAIN%\test\tstmac
set TSTIMP=%SDNFMAIN%\test\results\import
set 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.

© Copyright 1997 to current year. A:2 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.
OpenSteel Configuration Guide

Index

A customise . . . . . . . . . . . . . . . . . . . . . 6:1
how to run . . . . . . . . . . . . . . . . . . . . 3:3
AVEVA Licensing System . . . . . . . . . . . . 3:2 special sites . . . . . . . . . . . . . . . . . . 5:12

C P
Cardinal Point Plines . . . . . . . . . . . . . . . . 5:1 PML Applications
Colour Code . . . . . . . . . . . . . . . . . . . . . . 6:3 integration into . . . . . . . . . . . . . . . . 5:13
Connected Members . . . . . . . . . . . . . . . . 6:4
S
E
System Architecture . . . . . . . . . . . . . . . . 4:1
Environment
OpenSteel . . . . . . . . . . . . . . . . . . . . 4:1
Variable . . . . . . . . . . . . . . . . . . . . . . 7:3
T
Export Header . . . . . . . . . . . . . . . . . . . . . 6:4 Tolerance Settings . . . . . . . . . . . . . . . . . 6:3

G U
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . 2:1 Uninstall
OpenSteel . . . . . . . . . . . . . . . . . . . 5:13
I Upgrade a Project . . . . . . . . . . . . . . . . . 5:1
User Defined Attributes
Installation installation of . . . . . . . . . . . . . . . . . 5:12
on Windows . . . . . . . . . . . . . . . . . . . 3:1
W
M
Waiting Time . . . . . . . . . . . . . . . . . . . . . 6:3
Mapping Files . . . . . . . . . . . . . . . . . . . . . 4:2
Material Flag
Ignore . . . . . . . . . . . . . . . . . . . . . . . . 6:4

O
OpenSteel

© Copyright 1997 to current year. Index page i 2.3


AVEVA Solutions Limited and its subsidiaries.
All rights reserved.

You might also like