Professional Documents
Culture Documents
PDS Citrix Guide PDF
PDS Citrix Guide PDF
Citrix Guide
June 2011
DPDS3-PE-200058B
Copyright
Copyright © 2009-2011 Intergraph Corporation. All Rights Reserved.
Including software, file formats, and audiovisual displays; may be used pursuant to applicable software license agreement;
contains confidential and proprietary information of Intergraph and/or third parties which is protected by copyright law, trade
secret law, and international treaty, and may not be provided or otherwise made available without proper authorization from
Intergraph Corporation.
U.S. Government Restricted Rights Legend
Use, duplication, or disclosure by the government is subject to restrictions as set forth below. For civilian agencies: This was
developed at private expense and is "restricted computer software" submitted with restricted rights in accordance with
subparagraphs (a) through (d) of the Commercial Computer Software - Restricted Rights clause at 52.227-19 of the Federal
Acquisition Regulations ("FAR") and its successors, and is unpublished and all rights are reserved under the copyright laws of
the United States. For units of the Department of Defense ("DoD"): This is "commercial computer software" as defined at DFARS
252.227-7014 and the rights of the Government are as specified at DFARS 227.7202-3.
Unpublished - rights reserved under the copyright laws of the United States.
Intergraph Corporation
P.O. Box 240000
Huntsville, AL 35813
Terms of Use
Use of this software product is subject to the End User License Agreement ("EULA") delivered with this software product unless
the licensee has a valid signed license for this software product with Intergraph Corporation. If the licensee has a valid signed
license for this software product with Intergraph Corporation, the valid signed license shall take precedence and govern the use
of this software product. Subject to the terms contained within the applicable license agreement, Intergraph Corporation gives
licensee permission to print a reasonable number of copies of the documentation as defined in the applicable license agreement
and delivered with the software product for licensee's internal, non-commercial use. The documentation may not be printed for
resale or redistribution.
Warranties and Liabilities
All warranties given by Intergraph Corporation about equipment or software are set forth in the EULA provided with the software
or applicable license for the software product signed by Intergraph Corporation, and nothing stated in, or implied by, this
document or its contents shall be considered or deemed a modification or amendment of such warranties. Intergraph believes
the information in this publication is accurate as of its publication date.
The information and the software discussed in this document are subject to change without notice and are subject to applicable
technical product descriptions. Intergraph Corporation is not responsible for any error that may appear in this document.
The software discussed in this document is furnished under a license and may be used or copied only in accordance with the
terms of this license. No responsibility is assumed by Intergraph for the use or reliability of software on equipment that is not
supplied by Intergraph or its affiliated companies. THE USER OF THE SOFTWARE IS EXPECTED TO MAKE THE FINAL
EVALUATION AS TO THE USEFULNESS OF THE SOFTWARE IN HIS OWN ENVIRONMENT.
Intergraph is not responsible for the accuracy of delivered data including, but not limited to, catalog, reference and symbol data.
Users should verify for themselves that the data is accurate and suitable for their project work.
Trademarks
Intergraph, the Intergraph logo, PDS, SmartPlant, FrameWorks, I-Convert, I-Export, I-Sketch, SmartMarine, IntelliShip, INtools,
ISOGEN, MARIAN, SmartSketch, SPOOLGEN, SupportManager, and SupportModeler are trademarks or registered trademarks
of Intergraph Corporation or its subsidiaries in the United States and other countries. Microsoft and Windows are registered
trademarks of Microsoft Corporation. Oracle, JD Edwards, PeopleSoft, and Retek are registered trademarks of Oracle
Corporation and/or its affiliates. MicroStation is a registered trademark of Bentley Systems Inc, all rights reserved. Other brands
and product names are trademarks of their respective owners.
Contents
Preface PDS ................................................................................................................................................. 5
Index ........................................................................................................................................................... 43
PDS.CMD Files
You can define unique PDS.CMD files for users by selecting the Current User option on the
PDS 3D Control File dialog box. By using unique PDS.CMD files, each user can have their own
user menu preference resource file, their own font resource file, and their own config resource
file.
For more information about the environment variables that you can set, see Commands Set in
PDS.CMD (on page 8).
__END__
:endofperl
If you want to add environment variables to the PDS.CMD file, add them before the "$PD_Shell
= $ARGV[0];" line.
You MUST include an extra backslash for every backslash that is used in pathing
text in the pds.cmd file. For example, if the path you want is \\pdsserver\z\projfile, then you need
to define the path in the pds.cmd like this: \\\\pdsserver\\z\\projfile.
The following environment variables can be set in the pds.cmd file.
The exported ISOOPTION value is loaded by default into the Options File field on the Add
Default Set form. It is also used as a default for the options file, ISO Options File, when
extracting an interactive isometric.
$ENV{'ISOSEED'} = 'node: directory path\seed file';
The exported ISOSEED value is loaded by default into the Seed File field on the Add
Default Set form. It is also used as a default for the seed design file, ISO Seed Design File,
when extracting an interactive isometric.
$ENV{'ISOPLOT'} = 'node:directory path\iparm file';
The exported ISOPLOT value is loaded by default into the Plot File field on the Add Default
Set form. It is also used as a default for the plot parameters file, ISO Seed Plot File, when
plotting an interactive isometric.
$ENV{'ISOBORDER'} = 'node:directory path\border file';
The exported ISOBORDER value is loaded by default into the Border File field on the Add
Default Set form.
$ENV{'ISOBATCH'} = 'node:directory path\isobat\\';
The exported ISOBATCH value is loaded by default into the Batch Job Input File field on
the Create Batch Job Input form. The isobat file name is optional. If left blank here it can
be set for each batch job input, ensuring a unique input file name.
$ENV{'ISOREPORT'} = 'node:directory path\isorpt';
The exported ISOREPORT value is loaded by default into the Output File field on the
Batch Data Reports form. The isorpt file name is optional. If left blank here it can be set for
each batch data report, ensuring a unique file name.
$ENV{'ISOBATCHQUE'} = 'PDisocreate';
The exported ISOBATCHQUE value is loaded by default into the Process Queue field on
the Schedule Batch Job form.
$ENV{'ISO_ASCII_LOAD'} = 'node:directory path\isoascii';
The exported ISO_ASCII_LOAD value is loaded by default into the Filename field on the
Bulk Load Lines From ASCII File form.
$ENV{'PDISOFONT'} = 'XX';
The exported PDISOFONT value defines the font that will be used on the output isometric,
both on the face of the ISO, and on the MTO on the ISO. The defined font must be a mono-
spaced font.
$ENV{'SYMDGN'} = 'node:directory path\symbol.dgn';
$ENV{'SYMNDX'} = 'node:directory path\symbol.ndx';
$ENV{'SYMLIB'} = 'node:directory path\symbol.lib';
The exported values SYMDGN, SYMNDX and SYMLIB are loaded into the Symbol Design
Node:File, Symbol Index Node:File and Symbol Library Node:File fields respectively on
the Isometric Symbol Editor form.
$ENV{'ISOUSRREFDIM'} = 'node:directory path\filespec.dat';
where,
node
= the hostname of the project file server,
directory path
= the directory path containing the reference data file,
filespec.dat
= the name of the gridline reference data file.
For example,
$ENV{'ISOUSRREFDIM'} = 'pdsserv1:e:\proj1\project\fw_bldg_a.dat';
After this variable is set, the data in the file filespec.dat will be referenced as a result of
enabling Intergraph option 71 in the isometric options file. Note that this file will be used in
place of the file fw_projname.dat which is the gridline reference data file by default. When
utilizing this variable, the following rules will apply:
If the ISOUSRREFDIM variable is set and points to the proper location of a valid gridline
reference data file, this file will be used for placing gridline references on the isometric
drawing if Intergraph option 71 is turned on.
If the ISOUSRREFDIM variable is set improperly (for example, UNCpath or filespec are mis-
typed) and Intergraph option 71 is turned on, then no references will appear on the face of
the iso. That is, the result will be as if no gridline reference data file exists in the project
directory.
If the ISOUSRREFDIM variable is not set in the pds.cmd file but option 71 is turned on, then
the software will, by default, search for the file fw_projname.dat in the project directory. If it
exists and contains valid data, then the gridline reference dimensions will be extracted from
this file.
$ENV{'PDS_PF_DISCIPLINE'} = 'discipline_indx_no'; or
$ENV{'PDS_PF_DISCIPLINE'} = 'discipline_name';
Used to specify the Pelican Forge discipline number for the project. This variable can be set
to either the discipline number or discipline name from pdtable_111. This variable can also
be set as a system environment variable.
$ENV{'PDME_LABEL_SEP_CHAR'} = '-';
Used to specify the concatenation character for multi-line PDME label text. The default
character is a dash '-'. There is not restriction on the length of characters that you can use.
$ENV{'PDS_USER_UMENUPREF'} = 'mymenufile.rsc';
Used to specify the user menu preference resource file.
$ENV{'PDS_USER_FONTRSC'} = 'myfonts.rsc';
Used to specify the font resource file.
$ENV{'PDS_USER_CONFIG'} = 'myconfig.cfg';
Used to specify the config resource file.
TEMP Variables
Setting the TEMP variables for PDS when running in a Citrix environment can be tricky with a
couple of issues that you need to be aware of. The suggested workflow given below is just one
solution and may not be the best solution for you. You need to work with your Citrix
administrators to find your best solution.
First Issue
Processes running on a Citrix platform access the temp folder to store the log files that assist in
the troubleshooting and workflows within the PDS application. The default method for creating
temporary folders for multiple users (usually pointed to by the TEMP and TMP environment
variables) is to create subfolders in the \temp folder using the user's logon ID as the subfolder
name. For example, if the TEMP environment variable points to c:\temp, the temporary folder
assigned to the user logon ID 4 is c:\temp\4.
After the user is finished and exits that application on Citrix, the temp directory is destroyed and
no longer holds the log files and data used during that session; however, these files are needed
at times for some workflows in PDS. To overcome this, we suggest that you turn on the
Windows FLATTEMP by typing "flattemp /enable" (without the quotes) in a command window.
You need to have administrator privileges to do this.
Second Issue
The second issue involves simply setting and using flattemp to give everyone the same temp
directory. If two people are running similar or the same process at the same time and the same
log file is trying to be written to this folder at the same time, there will be errors. To overcome
this, we suggest that each user be provided their own temp folder location by creating a logon
script to create, verify, and apply a folder for this specific user at logon time. See below for an
example workflow for this.
Example Workflow
Using logon scripts, your administrator can verify if users have their own temp folder on the
system. In the sample logon script below, it checks each user at logon to see if they have their
own temp folder, if they do not, the script creates a temp folder for the user under C:\Temp\
using their username at logon time (for example: C:\temp\someuser\). The script then sets that
user's temp and tmp variable to that folder and requires the user to log into that Citrix application
again. The reason for the re-logon is that the temp variable setting does not take effect until that
user logs in again. During the logon to the application if the temp variable already exists, the
user is not required to log in again and is able to run the Citrix application uninterrupted. It is
also possible to use roaming profiles for the users and set the temp variable.
As you can see in this above example at startup the script usrlogon.vbs will run at startup, see
below for its contents:
#####################################################
'For getting username
Set shell= WScript.CreateObject("WScript.Shell")
username = shell.ExpandEnvironmentStrings("%USERNAME%")
msgbox "Please Note:" & Chr(13) & Chr(13) & "Since this is your
first logon To this server,"_
& Chr(13) & "your Temp Variable has just been set to" & Chr(13)
& Chr(13) & "c:\temp\"_
& username & Chr(13) & Chr(13) & "Please log on again so it
will take effect."_
& Chr(13) & Chr(13) & " Thank you"
Dim Program
Program = "C:\WINDOWS\system32\logoff.exe"
shell.Run Program
End If
Else
'If user doesn’t have folder already then Create the folder
objFolder.NewFolder username
msgbox "Please Note:" & Chr(13) & Chr(13) & "Since this is your
first logon To this server,"_
& Chr(13) & "your Temp Variable has just been set to" & Chr(13)
& Chr(13) & "c:\temp\"_
& username & Chr(13) & Chr(13) & "Please log on again so it
will take effect."_
& Chr(13) & Chr(13) & " Thank you"
Program = "C:\WINDOWS\system32\logoff.exe"
shell.Run Program
End If
Hardware Configurations
The SmartPlant License Manager licensing machine software should be installed on a stable,
single node, hardware configuration (such as a simple PC), with a static IP address, because
license key installation and license seat usage authentication depends on the information
gathered from the physical hardware. Any automated changes that cause the hardware
information not to match with the information used to generate the license key will result in a
failure of the authentication process.
Virtual (including VMware®), shadowed, mirrored, dynamic, or distributed hardware
configurations cannot be used as a SmartPlant License Manager licensing machine. This
includes terminal (application) servers, networked and distributed storage management
systems, and so forth. When these specialized systems occur in the user's network, the
SmartPlant License Manager licensing machine should be installed on a separate dedicated
hardware configuration system. The SmartPlant License Manager licensing machine should be
situated on the user's network where it can be accessed by all systems that are running
application software that relies on the SmartPlant License Manager licensing machine for
license management.
Multiple SmartPlant License Manager licensing machines can be used in the user's network as
long as each system is a unique hardware system/installation. If SmartPlant License Manager
licensing machines are cloned after the license key has been installed, then the license
management will fail on the cloned system. Each SmartPlant License Manager licensing
machine requires its own unique license key.
The license machine must have the same version (or later) of SmartPlant License
Manager installed as any client machines. In other words, you cannot use a newer version on a
client machine to retrieve a license from an older version of SmartPlant License Manager on the
licensing machine. The license machine must have the same version (or a newer version)
installed than the clients.
You must log in as Administrator to install this software.
1. Insert the Intergraph SmartPlant License Manager media. If the media does not start
automatically, double-click Setup.exe in the root folder of the media.
2. Select SmartPlant License Manager Installation.
3. Click Next on the Welcome to the InstallShield Wizard for SmartPlant License Manager
page.
4. Enter your name and company name in the User Name and Company Name fields on the
Customer Information page. Click Next.
5. On the Software License Agreement page, select your country from the list and click
Display to view the license agreement.
The license agreement is delivered as a PDF file.
6. Carefully read the license agreement. Close the PDF document, and click Yes on the
License Agreement page to accept the terms.
7. Select either License Client or License Machine.
8. On the Choose Destination Location page, click Next to install SmartPlant License
Manager in the default location. If you want to install the software in another location, click
Change and select the new location.
It is recommended that you install SmartPlant License Manager using a path that
contains no spaces, such as c:\win32app\Ingr (the default path).
9. Click Install on the Ready to Install the Program page. A status bar displays the progress
of the installation on the Status Setup page.
10. Click Finish on the InstallShield Wizard Complete page to complete installation of
SmartPlant License Manager.
Do not delete any files that are created during installation or as a result of using
SmartPlant License Manager. Removal of any files causes the license system to fail and
can require install, repair, or possibly removal and re-install of SmartPlant License Manager.
If you have the license machine defined under HK_Current_User for SmartPlant License
Manager, you cannot use Test Seat Reservation and Test Seat Release (commands in the
SmartPlant License Manager product) to test the licensing machines. Those test options are
used to test for the licensing machine configured in the SmartPlant License Manager's
registry key (value from HK_Local_Machine in Registry).
Additional information about certified Citrix versions is available on the SmartPlant Enterprise
Product Compatibility Matrix on the Intergraph Process, Power & Marine eCustomer Web site.
To view this matrix, browse to the following Web address, and type your eCustomer user name
and password: https://crmweb.intergraph.com. Click Download Software Updates > Products,
and then click the PPM Compatibility Matrices link in the middle of the page.
To install software on a Citrix server, you must log on with an account that has
administrator access. Use the Change User Mode Option to set the Terminal Server in the
"Installation" mode.
Hardware Requirements
Refer to your Citrix documentation for system hardware requirements for the Citrix server.
SmartPlant License Manager has no special hardware requirements beyond those
recommended for Windows.
Supported Platforms
SmartPlant License Manager Version 11 or greater
SmartPlant License Manager Version 10
Citrix Presentation Server 4.5.1 64bit Enterprise Edition
Citrix Presentation Server 4.5.1 32bit Enterprise Edition
Citrix Presentation Server 4.5.1 64bit Advanced Edition
Citrix Presentation Server 4.5.1 32bit Advanced Edition
Citrix XENAPP 6 on Microsoft Windows Server 2008 R2
Microsoft Windows Server 2003 Standard Edition
Microsoft Windows Server 2003 R2 Standard Edition
Microsoft Windows Server 2003 R2 Standard Edition Service Pack 2
Microsoft Windows Server 2003 Standard X64 Edition Service Pack 2
Microsoft Windows Server 2003 R2 Enterprise X64 Edition Service Pack 2
Microsoft Windows Server 2008 R2 Enterprise X64 Edition
Known Issues
Configuring SmartPlant License Manager as a license machine on Citrix is not supported.
See Also
Configure a License Machine for Current User
SECTION 3
3. Select the desired screen resolution from the Select window size list.
You can configure the setting by accessing Server Farm Properties on the MetaFrame
Settings tab or through a Policy within the Citrix Management Console.
1. Use local time of ICA Clients: All timestamps for all applications are based on the clients'
time instead of the servers.
2. Disable local time estimation: Available after Use Local Time of ICA Clients is selected. This
option prevents estimation of local time for ICA Clients other than the ICA Win32 and WinCE
Clients.
For Feature Release 1, the ICA Win32 and WinCE Clients distributed with
MetaFrame XP send local time information to the MetaFrame server. For all other versions
of ICA Clients, the local time is estimated and may not be accurate. For Feature Release 2,
the latest versions of ICA Clients distributed with MetaFrame XP send local time information
to the MetaFrame server. For earlier versions of ICA Clients, the local time is estimated and
may not be accurate. As of Feature Release 2, the Citrix ICA Java Client does not support
Client Time Zone Mapping. However, the Citrix ICA Java Client time zone is estimated.
This feature should be disabled in a SmartPlant Foundation integrated environment.
For the handling of licensing tokens, SmartPlant License Manager should use the local server
time to track the expiration of tokens in the enterprise. If CTZ feature is enabled, the License
Server will not be able to accurately track the expiration of tokens, and licensing problems will
result.
Computer Management >Services and Applications > Services > Citrix Virtual
Memory Optimization > Disabled.
To repair the corrupt .NET images in place without removing and reinstalling software:
1. Complete the "Proactive" steps in the previous section: 1.) Stop the VMO service and, 2.)
Disable the service as a FARM-WIDE Policy.
2. Open a command prompt to C:\windows\Microsoft.Net\framework64\ and run "ngen.exe
update" (Ignore any embedded errors – many are expected. The process will take a few
minutes).
3. Open a command prompt to C:\windows\Microsoft.Net\framework\ and run "ngen.exe
update" (same-to-same)
This will fix .NET 3.5 and 3.0 and 1.1 images in addition to the 2.0 because the .NET
2.0 NGEN is the unified definition for all of these versions of .NET – there is currently no
need to run NGEN for 3.0/3.5/1.1 – just for 2.0. If 2.0 does not exist on the computer, then
the 3.0/3.5 NGEN(s) would work.
The fact that the Queue Type is set to batch indicates that all queues are local to this node.
2. Exit Batch Manager and start the PDS Queue utility. In order to create Queues on a
computer using UAC, you must right-click the PDS Queue utility and select Run as
administrator.
3. You may get a message that All Products Have Queues Created. Accept this warning.
The Queue Creation utility displays Reading information from the queue.lst file and the
local machine.
The queue.lst file is not to be confused with the queue_descript file. The queue.lst file is
located in the same directory with the proj file, and is used by the PDS Queue Creation
utility.
When this dialog box displays, all products are dithered (in this example) because the PDS
Queue Creation utility has determined that queues for all products have been created.
4. By turning on Enable all for configuration, all products become available.
5. Select the product whose queues will be reconfigured (in this example, PD_Clash). After
clicking the product, you can click the list by the Queue Name field to display the list of all
queues that product uses. If ALL is selected, all of the queues that appear in the list will be
reconfigured.
6. In the next figure, you can see that the Pdclash_server queue has been chosen to be
reconfigured, the Remote Node box has been checked, and the name of the server has
been entered.
Note that when the pipe queue is created, neither the existence of the remote node
nor the existence of the corresponding batch queue are checked; you must be certain that
the server name is correct and that the corresponding batch queue exists on the specified
server.
If the queue already exists, the software turns on Overwrite Existing Queue. You must
leave the setting turned on to re-create the existing queue as the new pipe queue.
7. Click OK to display the following message regarding the queue.lst file:
When creating a pipe queue to a remote node, clicking Yes on this dialog box will write
information for the specified queue(s) into the queue.lst file. By default, the queue.lst file has
entries that look like this:
[PD_Clash Queues]
node=
When a client node that is using this proj file creates a pipe queue used by this discipline
and saves the information to the queue.lst file, the information will be changed. Considering
the example of the Pdclash_server queue that was created as a pipe queue to the node
CADSRV, the PD_Clash entry in the queue.lst file would now look like this:
[PD_Clash Queues]
node=
PDclash_server=CADSRV
When another client node is creating PD_Clash pipe queues using the PDS Queue
Configuration utility and Read data from ASCII file has been selected, the node CADSRV
will appear in the Remote Node field. In this manner, the System Administrator can create
all required pipe queues from one client, change the permissions of the queue.lst file to read
only, and then other clients will see the preferred location to create their pipe queues to.
Changing the permissions of the queue.lst file to read-only will not stop clients from creating
pipe queues to other nodes, but it will show them where they should be created to and also
stop them from altering the information in this file.
Some queues are shared by more than one application. For example, the PDreport queue
is used by PD_Clash and PD_Projec as well as PD_Report. If PD_Clash pipe queues are
created, the information for the PDreport queue will also appear in the PD_Report and
PD_Projec sections of the queue.lst file.
8. After creating the pipe queue using the PDS Queue Creation utility, go back into Batch
Manager and make sure that the queue was successfully created to the correct destination.
With the queue selected as shown above, click Queue > Properties from the menu bar, then
click the Destinations tab to see where this pipe queue's destination is.
This is a quick way to check where batch jobs sent to this queue will be processed. It is possible
to add additional destinations to this pipe queue; if the first destination in the list is disabled, the
next one will be used. See the on-line help for additional information.
After the pipe queue has been created, the following items should also be checked to make sure
the pipe queue can be used successfully:
Does a batch queue by the same name exist on the specified server?
A batch queue with the same name must exist on the server. In this example, the
PDclash_server batch queue must exist on the node CADSRV.
When PDS\mary submits a batch job on node PDS1 which is piped to the same queue on the
node CADSRV, she will be mapped to the PDS\pds user. Because this user has access to the
project files the batch job will complete successfully.
A W
Adding Application Path Statements to the What's New with Citrix Integration • 7
System Path • 25 Windows Firewall for Windows XP and
Additional Citrix Implementation Topics • 25 Windows 2003 • 20
B
Batch Jobs and the Citrix Server • 35
C
Citrix Client Time Zones • 30
Commands Set in PDS.CMD • 10
Configuring Dual Monitors • 27
Configuring the PDS Batch Mail Utility • 42
Custom CMD Files for Publishing PDS • 9
D
Disable the Citrix Virtual Memory Optimizer
• 31
I
Installation of SmartPlant License Manager
• 19
M
Modifying Batch Queues for Redirected
Processing • 35
P
PDS.CMD Files • 10
Plant Design System (PDS) and Citrix • 9
Preface PDS • 5
Publishing Complex Links or Shortcuts • 27
S
Setting the RIS_PARAMETERS
Environment Variable • 41
SmartPlant License Manager and Citrix • 21
T
TEMP Variables • 14