msc.acumen 2006 release and installation guide

46
MSC.Acumen 2006 Release and Installation Guide

Upload: kevin

Post on 15-Nov-2014

114 views

Category:

Documents


1 download

DESCRIPTION

This manual contains instructions for installing MSC.Acumen in both WIndows and UNIX enviroments. It also describes the new features and improvements in this release.

TRANSCRIPT

Page 1: MSC.Acumen 2006 Release and Installation Guide

MSC.Acumen 2006

Release and Installation Guide

Page 2: MSC.Acumen 2006 Release and Installation Guide

CorporateMSC.Software Corporation2 MacArthur PlaceSanta Ana, CA 92707Telephone: (800) 345-2078Fax: (714) 784-4056

EuropeMSC.Software GmbHAm Moosfeld 1381829 MunichGERMANYTelephone: (49) (89) 43 19 87 0Fax: (49) (89) 43 61 71 6

Asia PacificMSC.Software CorporationEntsuji-Gadelius Building2-39, Akasaka 5-chomeMinato-ku, TOKYO 107-0052, JAPANTelephone: (81) (3) 3505 0266Fax: (81) (3) 3505 0914

Worldwide Webwww.mscsoftware.com

Disclaimer

MSC.Software Corporation reserves the right to make changes in specifications and other information contained in this document without prior notice.

The concepts, methods, and examples presented in this text are for illustrative and educational purposes only, and are not intended to be exhaustive or to apply to any particular engineering problem or design. MSC.Software Corporation assumes no liability or responsibility to any person or company for direct or indirect damages resulting from the use of any information contained herein.

User Documentation: Copyright 2006 MSC.Software Corporation. Printed in U.S.A. All Rights Reserved.

This notice shall be marked on any reproduction of this documentation, in whole or in part. Any reproduction or distribution of this document, in whole or in part, without the prior written consent of MSC.Software Corporation is prohibited.

MSC is a registered trademark of the MSC.Software Corporation. NASTRAN is a registered trademark of the National Aeronautics and Space Administration. MSC.Nastran is an enhanced proprietary version developed and maintained by MSC.Software Corporation. MSC., MSC.Patran, and MSC.Acumen are trademarks of MSC.Software Corporation.

All other trademarks are the property of their respective owners.

ACM*V2006*Z*Z*Z*DC-904000

Page 3: MSC.Acumen 2006 Release and Installation Guide

MSC.Patran Release Guide

MSC.Acumen 2006Author’s Release and Installation Guide

� Windows NT Installation Instructions

� UNIX Installation Instructions

� Documentation Setup

� Runtime Licensing

� Xml To Xio File Translation

� Javascript Support

� Demonstration Applications

� Environment Variables

� PCL Function Notes

� Resizing Forms

� Form Widget Access Functions

� Client Data Access Functions

� Linux Notes

� Application Initialization

� Multiple Form User Interface

� Installation Notes

Page 4: MSC.Acumen 2006 Release and Installation Guide

2

1 Windows NT Installation Instructions1. Place the CD in the drive

2. Run the Setup.exe executable in the root directory of the CD using either the "Start" "Run" "Browse" desktop form or from a command window command line.

The setup executable will run and present the user with the following forms:

• Installation Folder.

This directory location is were the installation application will unpack the files needed to continue the MSC Acumen installation process. Note that this form does not specify the directory in which MSC Acumen will be installed.

• Unpacking

This form is displayed while the installation files are being unpacked into the directory specified by the "Acumen - Installation Folder" form.

• Welcome

This is the initial installation form which should be backed by a full screen splash screen.

• Choose Destination Location

This form is used to define the location to be installed.

The target files will be installed into three sub-directories in the directory specified by this form:

msc_acumenmsc_acumen.docsmsc_acumen.demo

• Start Copying Files

Used to verify the installation directory and to start the file installation process.

• Choose Destination Location

This form is used to define a value for the environment variable P3_HOME if one is not already defined. This value is used to construct batch files that are used to start the various MSC Acumen demonstration applications.

• Setup Complete

Indicates the end of the installation procedure.

Note that MSC Acumen does not modify either the workstation environment variables or the registry. Rebooting the workstation after the installation of MSC Acumen is not required.

Page 5: MSC.Acumen 2006 Release and Installation Guide

3 UNIX Installation InstructionsInstallation Guide

2 UNIX Installation Instructions1. Place the CD in the drive.

If you have been graced with a system that automounts the CD, the CD should mount automatically to the appropriate mounting point.

If your system does not automount the CD, see the man page for "mount" for the appropriate information.

2. Run the "mscsetup" script located in the root of the CD-ROM file system from the command line and follow the instructions to install MSC Acumen.

Page 6: MSC.Acumen 2006 Release and Installation Guide

4

3 Documentation SetupAdditional documentation is provided with MSC Acumen in the form of an Application Authoring Guide, several PCL function reference manuals, and a new documentation index page.

The default installation location for the MSC Acumen help files are in the following files and directories:

<Acumen installation_dir>/msc_acumen.docs/patran/acumen<Acumen installation_dir>/msc_acumen.docs/patran/develop<Acumen installation_dir>/msc_acumen.docs/patran/user_manual<Acumen installation_dir>/msc_acumen.docs/patran/develop_directory.fm

These help files are not installed into the MSC Patran environment at installation time as there is no way to anticipate all of the possible combinations and locations of MSC Patran vs. MSC Acumen vs. an MSC Acumen application.

Once the MSC Acumen documentation is installed, it can be accessed by starting an MSC Acumen application, placing the focus on the main MSC Acumen user interface form, and pressing the F1 key.

Do the following to setup the documentation on UNIX:

1. Relocate the original MSC Acumen documents.mv <Acumen installation_dir>/msc_acumen.docs <Acumen installation_dir>/msc_acumen.docs.acumen

2. Move the original files so that it does not get overwritten:mv ${P3_HOME}/helpfiles/patran_directory.fm ${P3_HOME}/helpfiles/patran_directory.fm.original

mv ${P3_HOME}/helpfiles/modules/develop_spec.fm ${P3_HOME}/helpfiles/modules/develop_spec.fm.original

mv ${P3_HOME}/helpfiles/user_manual/built_ins ${P3_HOME}/helpfiles/user_manual/built_ins.original

mv ${P3_HOME}/helpfiles/user_manual/built_ins_examples ${P3_HOME}/helpfiles/user_manual/built_ins_examples.origina

mv ${P3_HOME}/helpfiles/user_manual/customization ${P3_HOME}/helpfiles/user_manual/customization.original

3. Set up the needed links:ln -s <Acumen installation_dir>/msc_acumen.docs.acumen/patran/develop_directory.fm <P3_HOME>/helpfiles/patran/patran_directory.fm

ln -s <Acumen installation_dir>/msc_acumen.docs.acumen/patran/acumen/acumen_directory.fm <P3_HOME>/helpfiles/patran/modules/develop_spec.fm

ln -s <Acumen installation_dir>/msc_acumen.docs.acumen/patran/acumen/app_author <P3_HOME>/helpfiles/patran/modules/app_author

Page 7: MSC.Acumen 2006 Release and Installation Guide

5 Documentation SetupInstallation Guide

ln -s <Acumen installation_dir>/msc_acumen.docs.acumen/patran/develop <P3_HOME>/helpfiles/patran/develop

ln -s <Acumen installation_dir>/msc_acumen.docs.acumen/patran/acumen <P3_HOME>/helpfiles/patran/acumen

ln -s <Acumen installation_dir>/msc_acumen.docs.acumen/patran/user_manual/built_ins <P3_HOME>/helpfiles/patran/user_manual/built_ins

ln -s <Acumen installation_dir>/msc_acumen.docs.acumen/patran/user_manual/built_ins_examples <P3_HOME>/helpfiles/patran/user_manual/built_ins_examples

ln -s <Acumen installation_dir>/msc_acumen.docs.acumen/patran/user_manual/customization <P3_HOME>/helpfiles/patran/user_manual/customization

ln -s ${P3_HOME}/helpfiles <Acumen installation_dir>/msc_acumen.docs

Do the following to setup the documentation on WINNT:

1. Change to the directory in which the MSC.Patran, help files are installed:cd %P3_HOME%\helpfiles

2. Move the original files so that it does not get overwritten:

3. Copy the needed file sets:xcopy <Acumen installation_dir>/msc_acumen.docs/patran/develop_directory.fm <P3_HOME>/helpfiles/patran/patran_directory.fm

xcopy <Acumen installation_dir>/msc_acumen.docs/patran/acumen/acumen_directory.fm <P3_HOME>/helpfiles/patran/modules/develop_spec.fm

xcopy /s /i <Acumen installation_dir>/msc_acumen.docs.acumen/patran/acumen/app_author <P3_HOME>/helpfiles/patran/modules/app_author

xcopy /s /i <Acumen installation_dir>/msc_acumen.docs/patran/develop <P3_HOME>/helpfiles/patran/develop

xcopy /s /i <Acumen installation_dir>/msc_acumen.docs/patran/acumen <P3_HOME>/helpfiles/patran/acumen

xcopy /s /i <Acumen installation_dir>/msc_acumen.docs/patran/user_manual/built_ins <P3_HOME>/helpfiles/patran/user_manual/built_ins

xcopy /s /i <Acumen installation_dir>/msc_acumen.docs/patran/user_manual/built_ins_examples <P3_HOME>/helpfiles/patran/user_manual/built_ins_examples

mv patran_directory.fm patran_directory.fm.original

mv modules/develop_spec.fm modules\develop_spec.fm.original

mv user_manual/built_ins user_manual\built_ins.original

mv user_manual/built_ins_examples user_manual\built_ins_examples.original

mv user_manual/customization user_manual\customization.original

Page 8: MSC.Acumen 2006 Release and Installation Guide

6

xcopy /s /i <Acumen installation_dir>/msc_acumen.docs/patran/user_manual/customization <P3_HOME>/helpfiles/patran/user_manual/customization

xcopy /s /i ${P3_HOME}/helpfiles <Acumen installation_dir>/msc_acumen.docs

Page 9: MSC.Acumen 2006 Release and Installation Guide

7 Runtime LicensingInstallation Guide

4 Runtime LicensingMSC Acumen supports a Runtime license.

This license can be used with MSC Acumen only by placing the following command on the command line used to start MSC Patran and the MSC Acumen application (the name is case sensitive):

${P3_HOME}/bin/p3 -ifile aa_init.pcl -iam MSC.Acumen_RunTime

The MSC Acumen runtime license will be used only when the environment variable ACUMEN_INTERFACE is set to DISABLE.

A command line window text message similar to the following will contain the text "MSC.Acumen" indicating that a run time license is being used.

# MSC.Acumen #### has obtained 1 concurrent license(s) from FLEXlm

In all other cases licensing will fall back to the default of using an MSC Patran license.

Page 10: MSC.Acumen 2006 Release and Installation Guide

8

5 Xml To Xio File TranslationFile translation from xml to xio files has been improved to dramatically reduce the on disk size of .xio files.

Backwards compatibility with older .xio files has been preserved.

An external .xml to .xio translator executable is no longer needed.

MSC Acumen will automatically look for an .xio and .xml file as needed. The .xio file will be updated using the following rules:

• An .xio file was found, but not an .xml file.

Use the .xio file for the application.

• An .xml file is found but an .xio file cannot be found.

Translate the .xml file into an .xio file with the same directory location as the .xml file. Use the .xio file for the application.

• An .xio file is found and an .xml file that is newer or younger than the .xio file has been found.

Translate the .xml file into an .xio file with the same directory location as the .xml file. Use the .xio file for the application.

• An .xml file is found and an .xio file that is newer or younger than the .xml file has been found.

Use the .xio file for the application.

The translator code will look for two PCL functions: acumen_xml_pre () and acumen_xml_post (). If these functions exist in the application code, they will be called with two input string arguments. With both functions the first argument will be the full path and file name for the .xml file and the second argument will be the full path and file name for the .xio file. These two functions are called immediately before and after an .xml file is translated into an .xio file and allow for customer and application specific pre and post processing of .xio and .xml files.

Page 11: MSC.Acumen 2006 Release and Installation Guide

9 Javascript SupportInstallation Guide

6 Javascript SupportJavascript support for the WINNT platform has been provided.

The html browser widget is implemented on the WINNT platform using an ActiveX link of Internet Explorer to MSC Patran. This allows the browser widget to support the full Internet Explorer feature set, including Javascript.

MSC Acumen will call any pcl function listed with an '<A HREF="PCL:' The arguments passed to the called pcl function take the form of a string with arguments delimited with colons ":" and semi-colons ";" .

The imbedded semi-colon characters can cause problems as they can be confused as a delimiter in Internet Explorer.

This issue can be worked around by using a hexidecimal notation for the imbedded semicolon characters.

Support has been added for the case insensitive use of hexidecimal notation for semicolons "%3B" and colons "%3A" as in the following example:

{window.location.href="PCL:AAI.html_calls(FUNC:AAI.next_dialog%3BSTR:steptesta.xml%3BSTR:1.%3BSTR:picking)";}

Page 12: MSC.Acumen 2006 Release and Installation Guide

10

7 Demonstration ApplicationsThree separate demonstration applications are provided with this delivery:

• Brake Lever

A basic demonstration application focused on the design of disk brakes.

• Dynamo

Demonstrates the use of the MSC Acumen feature that allows for the dynamic setting of form information.

Also provides other test operations.

• Hello World

An example of a minimal MSC.Acumen application.

• Helper

Demonstrates different ways in which help systems can be integrated into an MSC Acumen application.

• Master

This is an application of applications. It combines the Brake Lever, Dynamo, Helper, and Hello World under a single combined and integrated MSC Acumen application.

This application demonstrates a technique that could be used to manage larger project development efforts. Pieces of the project can be developed and tested separately and then integrated into a unit.

The Brake Lever application was never designed to be integrated in this manner and demonstrates some of the issues that can cause trouble with this type of integration process.

The demonstration applications will be installed into the msc_acumen.demo subdirectory under directories with the following names:

brk_lvrdynamohello_worldhelpermaster

Each demonstration application directory will contain a script or batch file that is used to start the application.

brk_lvr/brk_lvrbrk_lvr/brk_lvr.cmd

brk_lvr/brk_lvr_disable.cmdbrk_lvr/brk_lvr_enable.cmd

Page 13: MSC.Acumen 2006 Release and Installation Guide

11 Demonstration ApplicationsInstallation Guide

dynamo/dynamodynamo/dynamo.cmd

hello_world/hello_worldhello_world/hello_world.cmd

helper/helperhelper/helper/helper.cmd

master/mastermaster/master/master.cmd

Each of the appropriate script or command files can be edited with a text editor as needed to correctly define the needed environment variables.

MSC.Acumen requires no modifications to environment variables or registry entries. All environment information needed to start and run an MSC Acumen application can be contained in the script or command file used to start the application.

A shortcut on the desktop or a shell alias can be used to provide a convenient starting mechanism for the user.

Page 14: MSC.Acumen 2006 Release and Installation Guide

12

8 Environment VariablesMSC Acumen requires no modifications to the workstation parent environment variables or registry entries.

One of the original design goals of MSC Acumen was to have as small an impact as possible on MSC Patran or any other applications installed on the workstation.

This goal was achieved by using environment variables that can be defined in a script or command file. These environment variables are used to identify the location of the MSC Acumen core code, required application files, the MSC Patran files, and the location of an external html browser used to display help files.

The environment variables are defined as follows. The PCL functions that can be used to retrieve the environment variable values are also listed below.

Please make all effort when developing an MSC Acumen application to make use of the PCL functions provided to retrieve the appropriate environment variable values.

ACUMEN_HOMEPurpose

This environment value defines the installation location of the MSC/Acumen Application Core and MSC/Acumen Toolkit core code.

Assumed file locations and names:

All core .plb and status message files will be placed directly in the ACUMEN_HOME directory.

It will be assumed that the status message file will have the name "aa_message_core.dat"

It will be assumed that the core shared libraries will be placed in the location "ACUMEN_HOME"/lib for UNIX and "ACUMEN_HOME"/bin for WINNT, allowing the location to be consistent with the rules currently used by MSC.Patran.

Default value.

If the environment variable "ACUMEN_HOME" is not defined, the default value of "P3_HOME" will be used. If "P3_HOME" is not defined, "/patran/patran3" will be used for UNIX, "c:\msc" for WINNT.

Analysis Application environment variables replaced.

"ACUMEN_DIR", "AdvisorPLB"

Page 15: MSC.Acumen 2006 Release and Installation Guide

13 Environment VariablesInstallation Guide

ACUMEN_APPLICATIONSPurpose

This environment variable provides the path and file name for the home drive page of a user developed MSC/Acumen application.

Assumed file locations and names:

It will be assumed that the master .xio and .xml files will be located directly in the ACUMEN_APPLICATIONS directory.

It will be assumed that the .def file will have the same path and base file name as the application home drive page with a .def extension.

It will be assumed that the labels file will have the same path and base file name as the application home drive page with a .labels extension.

It will be assumed that all .html help files will be in a subdirectory under the directory in which the home drive page is located named "help".

It will be assumed that the pulldown menu title definitions file will have the same path and base file name as the application home drive page with a .dwn extension.

It will be assumed that application specific .plb file will have the same path and base file name as the application home drive page with a .plb extension. If a file with the specified extension cannot be found, no action will be taken.

It will be assumed that application specific .png files will be in a subdirectory under the directory in which the home drive page is located named "app_images".

Default value.

If the environment variable "ACUMEN_APPLICATIONS" is not defined, the value of "ACUMEN_HOME/acumen_applications/master" will be used where "master" will be the default application name.

Analysis Application environment variables replaced:

"AdvisorPAGE1", "AdvisorLIB",

"AdvisorFORMPARAMS", "AdvisorPULLDOWN",

"AdvisorERROR", "AdvisorINPUTS"

Page 16: MSC.Acumen 2006 Release and Installation Guide

14

ACUMEN_INTERFACEPurpose

This environment variable will "ENABLE" or "DISABLE" the MSC.Patran menu bar pull down interface to MSC/ACUMEN.

Default value.

The default value of this environment variable is "DISABLE".

The setting of this environment variable will not be case sensitive.

Analysis Application environment variables replaced.

"PATRAN_USER"

ACUMEN_BROWSERPurpose

This environment variable provides a string that will be used to start the web browser used to display HTML help pages. This string might take the following form:

/usr/netscape/netscape

A fully qualified path and file name for the appropriate file will be passed to the executable through the command line.

Default value: none.

This value is established at installation time, checked and validated at run time. If the browser cannot be found, a warning message will be displayed at MSC/Acumen startup.

Analysis Application environment variables replaced.

"AdvisorBROWSER"

ACUMEN_MOTIFPurpose

To force the use of the MSC.Acumen motif interface with Windows NT. This provides for backwards compatibility with MSC.Patran V8.5 on the Windows NT platform.

Default value.

The default value of this environment variable is "DISABLE" on the Windows NT platform, "ENABLE" on the UNIX platforms.

The setting of this environment variable is not be case sensitive.

Page 17: MSC.Acumen 2006 Release and Installation Guide

15 Environment VariablesInstallation Guide

ACUMEN_Y_SCALEPurpose

Allows the definition of a real value used to scale the MSC Acumen user interface along the Y axis.

This provides a method to rescale the MSC Acumen user interface for a better fit on LCD displays.

Default value.

Depending on the settings of ACUMEN_MOTIF, ACUMEN_INTERFACE and the type of machine (Windows NT vs. UNIX), the default value of ACUMEN_Y_SCALE is from 0.8-1.10.

HTML_IMAGE_PATHPurpose

Defines the path used to retrieve images with xml files.

aa_env.ret_acumen_home ( acumen_home )This PCL function retrieves the value of ACUMEN_HOME.

Inputs:

None.

Outputs:

Notes:

The value returned will be determined by the value of the environment variable ACUMEN_HOME or the default rules listed above.

STRING acumen_home This argument will return the value of ACUMEN_HOME.

INTEGER <return_val> This function will return a value of zero if no errors have occurred and a positive value to indicate an error.

Page 18: MSC.Acumen 2006 Release and Installation Guide

16

aa_env.ret_acumen_app ( acumen_app, acumen_master, acumen_ext )

This PCL function retrieves the value of ACUMEN_APPLICATIONS parsed into three components.

Inputs:

None.

Outputs:

Notes:

The value returned will be determined by the value of the environment variable ACUMEN_APPLICATIONS or the default rules listed above.

aa_env.ret_acumen_brw ( acumen_brw )This PCL function retrieves the value of ACUMEN_BROWSER.

Inputs:

None.

Outputs:

STRING acumen_app This argument will return the path value of ACUMEN_APPLICATIONS.

STRING acumen_master This argument will return the body of the file name of the home drive page specified by ACUMEN_APPLICATIONS.

STRING acumen_ext This argument will return the extension of the file name of the home drive page specified by ACUMEN_APPLICATIONS.

INTEGER <return_val> This function will return a value of zero if no errors have occurred and a positive value to indicate an error.

STRING acumen_brw This argument will return the value of ACUMEN_BROWSER.

INTEGER <return_val> This function will return a value of zero if no errors have occurred and a positive value to indicate an error.

Page 19: MSC.Acumen 2006 Release and Installation Guide

17 Environment VariablesInstallation Guide

Notes:

The value returned will be determined by the value of the environment variable ACUMEN_BROWSER or the default rules listed above.

aa_env.ret_acumen_int ( acumen_int )This PCL function retrieves the value of ACUMEN_INTERFACE.

Inputs:

None.

Outputs:

Notes:

The value returned will be determined by the value of the environment variable ACUMEN_INTERFACE or the default rules listed above.

aa_env.ret_acumen_y_scale ( y_scale )This PCL function retrieves the value of ACUMEN_Y_SCALE

Inputs:

None.

Outputs:

Notes:

The value returned will be determined by the value of the environment variable ACUMEN_Y_SCALE or the default rules listed above.

STRING acumen_int This argument will return the value of ACUMEN_INTERFACE.

INTEGER <return_val> This function will return a value of zero if no errors have occurred and a positive value to indicate an error.

REAL y_scale This argument will return the value of ACUMEN_Y_SCALE.

INTEGER <return_val> This function will return a value of zero if no errors have occurred and a positive value to indicate an error.

Page 20: MSC.Acumen 2006 Release and Installation Guide

18

aa_env.ret_acumen_html ( s_html )This PCL function retrieves the value of HTML_IMAGE_PATH.

Inputs:

None.

Outputs:

get_acumen_motif ( s_motif )This PCL function retrieves the value of ACUMEN_MOTIF.

Inputs:

None.

Outputs:

STRING s_html This argument will return the value of HTML_IMAGE_PATH.

INTEGER <return_val> This function will return a value of zero if no errors have occurred and a positive value to indicate an error.

STRING s_motif This argument will return the value of ACUMEN_MOTIF.

INTEGER <return_val> This function will return a value of zero if no errors have occurred and a positive value to indicate an error.

Page 21: MSC.Acumen 2006 Release and Installation Guide

19 PCL Function NotesInstallation Guide

9 PCL Function NotesThe following PCL functions internally allocate space as needed for returned string and array arguments. Existing code that makes use of these functions may have to be modified so that the passed argument for these returned values are VIRTUAL data values.

AASTATE.get_ur_string ( stepid, varname, svalue, nullflag )Purpose:

This function will retrieve an integer value from the state virtual file.

Input:

Output:

Returns:

None.

AASTATE.get_uresponse ( stepid, varname, realval, ival, strval, dtype, nullflag )

Purpose:

This function will retrieve user response variables from the state virtual file.

Inputs:

STRING stepid [ ] This value specifies the step identifier string associated with the retrieved value.

STRING varname [ ] This value specifies the name of the value to be retrieved.

STRING svalue [ VIRTUAL ] This argument returns the retrieved value.

INTEGER nullflag This value returns 0 when the function executes successfully and a non zero value to indicate a change in status or an error.

STRING stepid [ ] This value specifies the step identifier for the variable to be retrieved.

STRING varname { } This value specifies the name of the value to be retrieved.

Page 22: MSC.Acumen 2006 Release and Installation Guide

20

Output:

Returns:

None.

Remarks:

Only one real, integer, or string value can be associated with a variable name and step identifier value.

AASTATE.get_ur_stringarray ( stepid, arrayname, nvalue, svalue )

Purpose:

This function will retrieve a string array from the state virtual file.

Input:

Output:

REAL realval This value returns the retrieved real.

INTEGER ival This value returns the retrieved integer.

STRING strval [ VIRTUAL ] This value returns the retrieved string.

INTEGER dtype This value returns the type of data that was recorded. This value will be set to 1 to indicate that a real value was retrieved, a value of 2 to indicate that an integer was retrieved, and 3 to indicate that a string was retrieved.

INTEGER nullflag This value returns 0 when the function executes successfully and a non zero value to indicate a change in status or an error.

STRING stepid [ ] This value specifies the step identifier string associated with the retrieved value.

STRING varname [ ] This value specifies the name of the value to be retrieved.

INTEGER nvalue This value returns the number of offsets in the retrieved array.

STRING svalue [ VIRTUAL ] ( VIRTUAL )

This value returns the retrieved array.

Page 23: MSC.Acumen 2006 Release and Installation Guide

21 PCL Function NotesInstallation Guide

Remarks:

Only one real, integer, or string array can be associated with a variable name and step identifier value.

AASTATE.get_ur_realarray ( stepid, arrayname, nvalue, rvalue )

Purpose:

This function will retrieve a real array from the state virtual file.

Input:

Output:

Remarks:

Only one real, integer, or string array can be associated with a variable name and step identifier value.

AASTATE.get_ur_integerarray ( stepid, arrayname, nvalue, ivalue )

Purpose:

This function will retrieve an integer array from the state virtual file.

Input:

STRING stepid [ ] This value specifies the step identifier string associated with the retrieved value.

STRING varname [ ] This value specifies the name of the value to be retrieved.

INTEGER nvalue This value returns the number of offsets in the retrieved array.

REAL rvalue ( VIRTUAL ) This value returns the retrieved array.

STRING stepid [ ] This value specifies the step identifier string associated with the retrieved value.

STRING varname [ ] This value specifies the name of the value to be retrieved.

Page 24: MSC.Acumen 2006 Release and Installation Guide

22

Output:

Remarks:

Only one real, integer, or string array can be associated with a variable name and step identifier value.

STATEUT.get_ur_array ( stepid, varname, nvalue, u_int_array, u_real_array, u_string_array, d_type )

Purpose:

This function is used to retrieve user variables stored in the virtual file.

Inputs:

Outputs:

INTEGER nvalue This value returns the number of offsets in the retrieved array.

INTEGER ivalue ( VIRTUAL ) This value returns the retrieved array.

STRING stepid [ 4 ] This value specifies the step identifier.

STRING varname [ ] This value specifies the name of the variable to be saved.

INTEGER nvalue This value returns the number of array offsets in the variable. This value will be set to 0 if the variable could not be retrieved.

INTEGER u_int_array ( VIRTUAL )

This value returns an integer array retrieved from the virtual file.

REAL u_real_array ( VIRTUAL )

This value returns a real array retrieved from the virtual file.

STRING u_string_array [ VIRTUAL ] ( VIRTUAL )

This value returns a string array retrieved from the virtual file.

Page 25: MSC.Acumen 2006 Release and Installation Guide

23 PCL Function NotesInstallation Guide

Remarks:

This function will allocate space for the returned array arguments.

AAI.FILTER_URL ( s_input, s_output )PURPOSE:

Filter and translate the ascii representation of characters passed in a string through an URL.

INPUTS:

OUTPUTS:

NOTES:

This function will filter colon ":" and semicolon ";" encoded as hexidecimal representations of the ascii character. The hexidecimal representations of the ascii character can have the following format.

Encoded ASCII

form character

%3b ;

%3B ;

%3a :

%3A :

INTEGER d_type This value returns 1 to indicate that an integer array is being returned, 2 for a real array, and 3 for a string array.

INTEGER <Return Value> This function returns a value of 0 when executed successfully and a zero value to indicate a change in status or an error.

STRING s_input The string value passed through an URL possibly containing hexidecimal encoded ascii characters.

STRING s_output [ VIRTUAL ] The filtered string.

Page 26: MSC.Acumen 2006 Release and Installation Guide

24

AAI.URL_SUBSTR ( s_srch, s_rplc, s_inout )PURPOSE:

Take a string, search for a sequence of characters and replace one sequence of characters with another.

INPUTS:

OUTPUTS:

NOTES:

This function will do a search and replace operation on the contents of s_inout, replacing and overwriting the original string contents with the results of the operation.

The s_inout string must be long enough to accommodate the results of the search and replace operation or the output will get truncated.

STRING s_srch The string value to be searched for and replaced.

STRING s_rplc The string value that will be used to replace the search string when it is found.

STRING s_inout The string on which the search and replace operation will take place.

STRING s_inout The string on which the search and replace operation has taken place.

Page 27: MSC.Acumen 2006 Release and Installation Guide

25 Resizing FormsInstallation Guide

10 Resizing FormsThe forms that comprise the MSC Acumen user interface consists of standard MSC Patran forms created using PCL code.

These forms are created when a MSC Acumen user application is started and when the "Quick Review" form is displayed for the first time. These forms are created using the form object definitions in the application xml files, the internal rules compiled into the MSC Acumen core code, and the rules compiled into the MSC Patran core code.

The form sizing and location rules compiled into the MSC Acumen core code can now be redefined with the use of an application and platform specific "sizer" file.

NOTE that the sizer file can only modify the rules compiled into the MSC Acumen core code, not the rules compiled into MSC Patran. For example, the sizer file does not allow for the repositioning of the main MSC Acumen form on the Windows NT platform.

An MSC Acumen sizer file is located in the directory defined by the environment variable ACUMEN_APPLICATIONS. The sizer file has the same file name as the home drive page for the application but with the file extension ".sizer"

The initial file is both application specific and specific to the platform on which MSC Acumen is being run.

Care should be taken in making modifications to the values in a sizer file. The forms are created early in the startup of MSC Patran when error reporting resources are not yet available. The form creation functions themselves are very sensitive to passed argument values and an inappropriate value will cause a crash with a traceback to the command line.

The initial values for the sizer file can be obtained using the following method.

1. Set the environment variable ACUMEN_INTERFACE to ENABLE.

2. Start the application and run through the until you are at a place where the quick review form can be displayed.

3. Display the "Quick Review" form.

4. Run the following pcl function on the MSC Patran command line:

aaui_size.write_sizer_file ( "<filename>" )

This function call will create a file named <filename> in the current directory.

5. Exit the application.

6. Copy <filename> to ACUMEN_APPLICATIONS/<home drive page>.sizer

7. Restart your application to make sure that it still works.

8. Modify CUMEN_APPLICATIONS/<home drive page>.sizer as needed, restarting the application to test.

Page 28: MSC.Acumen 2006 Release and Installation Guide

26

11 Form Widget Access FunctionsThe MSC Patran testing environment is a command line driven. Testing of MSC Acumen in an automated fashion in this environment is done with session files where form call back functions are called directly and widgets are manipulated to provide appropriate input values.

Functions have been added to the MSC Acumen core to allow the individual form widgets to be accessed and manipulated using the ui_wid_set () function.

These functions are listed below. Be warned; these functions are used primarily for testing purposes and may be modified as needed in future releases of MSC Acumen.

ACUMEN_GET_WID_TYPE ( w_widget, i_wid_type, s_wid_type, i_wid_flags, s_class, s_name, w_form, w_parent, w_sibling, w_child )

PURPOSE:

This function will return the properties of a widget.

INPUTS:

OUTPUTS:

WIDGET w_widget The value representing the form from which the property values will be obtained.

INTEGER i_wid_type A value representing the type of widget.

STRING s_wid_type A string value describing the type of widget.

INTEGER i_wid_flags A value representing state information of the widget.

STRING s_class A value identifying the PCL class name in which the widget was created.

STRING s_name A value representing the name of the widget. This value is often blank.

WIDGET w_form A value identifying the form that represents the top of the tree of forms that this widget is a part of.

WIDGET w_parent This value identifies the parent of this widget.

Page 29: MSC.Acumen 2006 Release and Installation Guide

27 Form Widget Access FunctionsInstallation Guide

NOTES:

This function is useful for programatically identifying a widget to choose the manner in which it will be modified. For example, the value of a databox can be changed using a call to ui_wid_set ( "VALUE" ) but a label would be modified using a ui_wid_set ( "LABEL" ). This function could be used to identify when it is appropriate to us "LABEL" and when it is appropriate to use "VALUE".

Enough information is returned where it should be possible to identify all of the widgets and the organizational structure of a form starting with any widget value from that form.

AAUI_FORMS.GET_FORM ( w_widget ) AAUI_FORMS.SET_FORM ( w_widget )

PURPOSE:

Get and set the widget for the main MSC Acumen user interface form.

AAUI_FORMS.GET_APPLY_BUTTON ( w_widget ) AAUI_FORMS.SET_APPLY_BUTTON ( w_widget )

PURPOSE:

Get and set the widget for the apply button on the main MSC Acumen user interface form.

AAUI_FORMS.GET_BACKUP_BUTTON ( w_widget ) AAUI_FORMS.SET_BACKUP_BUTTON ( w_widget )

PURPOSE:

Get and set the widget for the backup button on the main MSC Acumen user interface form.

WIDGET w_sibling A value identifying a sibling of this widget. This might represent the widget of the next item in a menu or listbox.

WIDGET w_child A value identifying a child of this widget. An example might be a databox in a frame. The current widget would be the frame, the child would be the databox.

Page 30: MSC.Acumen 2006 Release and Installation Guide

28

AAUI_FORMS.GET_DIALOG_HTML ( w_widget ) AAUI_FORMS.SET_DIALOG_HTML ( w_widget )

PURPOSE:

Get and set the widget for the html browser on the main MSC Acumen user interface form.

AAUI_FORMS.GET_DUMMY_LABEL ( w_widget ) AAUI_FORMS.SET_DUMMY_LABEL ( w_widget )

PURPOSE:

Get and set the widget for the dummy label.

The dummy label is used as a tool for sizing objects on the form.

AAUI_FORMS.GET_HELP_BUTTON ( w_widget ) AAUI_FORMS.SET_HELP_BUTTON ( w_widget )

PURPOSE:

Get and set the widget for the help button on the main MSC Acumen user interface form.

AAUI_FORMS.GET_INPUT_BOX ( w_widget ) AAUI_FORMS.SET_INPUT_BOX ( w_widget )

PURPOSE:

Get and set the widget for the input box that occupies the bottom third of the main MSC Acumen user interface form.

AAUI_FORMS.GET_MAIN_PANEL ( w_widget ) AAUI_FORMS.SET_MAIN_PANEL ( w_widget )

PURPOSE:

Get and set the widget for the main panel on the main MSC Acumen user interface form.

AAUI_FORMS.GET_MAIN_SWITCH ( w_widget ) AAUI_FORMS.SET_MAIN_SWITCH ( w_widget )

PURPOSE:

Get and set the widget for the main switch on the main MSC Acumen user interface form.

Page 31: MSC.Acumen 2006 Release and Installation Guide

AAUI_FORMS.GET_QUIT_BUTTON ( w_widget ) AAUI_FORMS.SET_QUIT_BUTTON ( w_widget )

PURPOSE:

Get and set the widget for the quit button on the main MSC Acumen user interface form.

AAUI_FORMS.GET_REVIEW_BUTTON ( w_widget ) AAUI_FORMS.SET_REVIEW_BUTTON ( w_widget )

PURPOSE:

Get and set the widget for the review button on the main MSC Acumen user interface form.

AAUI_FORMS.GET_DATABOX_WIDGET ( i_wid_offset ) AAUI_FORMS.SET_DATABOX_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set a widget for the databox array of widgets on the main MSC Acumen user interface form.

AAUI_FORMS.GET_FILE_WIDGET ( i_wid_offset ) AAUI_FORMS.SET_FILE_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set a widget for the file array of widgets on the main MSC Acumen user interface form.

AAUI_FORMS.GET_LBOX_WIDGET ( i_wid_offset ) AAUI_FORMS.SET_LBOX_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set a widget for the listbox array of widgets on the main MSC Acumen user interface form.

Page 32: MSC.Acumen 2006 Release and Installation Guide

AAUI_FORMS.GET_OPT_WIDGET ( i_wid_offset ) AAUI_FORMS.SET_OPT_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set a widget for the option menu array of widgets on the main MSC Acumen user interface form.

AAUI_FORMS.GET_SBAR_WIDGET ( i_wid_offset ) AAUI_FORMS.SET_SBAR_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set a widget for the slide bar array of widgets on the main MSC Acumen user interface form.

AAUI_FORMS.GET_SDBOX_WIDGET ( i_wid_offset ) AAUI_FORMS.SET_SDBOX_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set a widget for the select data box array of widgets on the main MSC Acumen user interface form.

AAUI_FORMS.GET_SFRAME_WIDGET ( i_wid_offset ) AAUI_FORMS.SET_SFRAME_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set a widget for the select frame array of widgets on the main MSC Acumen user interface form.

AAUI_FORMS.GET_TBOX_WIDGET ( i_wid_offset ) AAUI_FORMS.SET_TBOX_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set a widget for the text box array of widgets on the main MSC Acumen user interface form.

Page 33: MSC.Acumen 2006 Release and Installation Guide

AAUI_FORMS.GET_TOG_WIDGET ( i_wid_offset ) AAUI_FORMS.SET_TOG_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set a widget for the toggle array of widgets on the main MSC Acumen user interface form.

AAUI_FORMS.GET_MAXWID_ARRAY ( i_array )PURPOSE:

Get an array of integers that is used to keep track of the sizes of the arrays of widgets.

OUTPUTS:

NOTES:

This function will allocate the output array as needed.

INTEGER i_array ( VIRTUAL ) This value returns an array of integers used to keep track of the sizes of the arrays of widgets.

The offsets of this array are for the following widget array types:

Offset Type

1 Databoxe widgets

2 File widgets

3 Listbox widgets

4 Option menu widgets

5 Slide bar widgets

6 Select data box widgets

7 Text box widgets

8 Toggle widgets

Page 34: MSC.Acumen 2006 Release and Installation Guide

AAUI_FORMS.SET_MAXWID_ARRAY ( i_array )PURPOSE:

Set an array of integers that is used to keep track of the sizes of the arrays of widgets.

INPUTS:

OUTPUTS:

NOTES:

The input array passed to this function must match the target array exactly in size, number of dimensions, and in upper and lower boundary limits.

The size, dimensionality, and upper and lower boundary limits can be found with a call to AAUI_FORMS.GET_MAXWID_ARRAY ( )

INTEGER i_array ( VIRTUAL ) This value sets an array of integers used to keep track of the sizes of the arrays of widgets.

The offsets of this array are for the following widget array types:

Offset Type

1 Databox widgets

2 File widgets

3 Listbox widgets

4 Option menu widgets

5 Slide bar widgets

6 Select data box widgets

7 Text box widgets

8 Toggle widgets

INTEGER <return value> This function will return 0 indicating success or a non-zero value indicating the following error states:

1 The number of dimensions for the target array is incorrect.

2 The number of dimensions for the passed input array is incorrect.

3 The lower boundary array value for the passed input array is incorrect.

4 The upper boundary array value for the passed input array is incorrect.

Page 35: MSC.Acumen 2006 Release and Installation Guide

AAQUICK.GET_FORM ( w_widget ) AAQUICK.SET_FORM ( w_widget )

PURPOSE:

Get and set the widget for the MSC Acumen quick review form.

AAQUICK.GET_DUMMY_LABEL ( w_widget ) AAQUICK.SET_DUMMY_LABEL ( w_widget )

PURPOSE:

Get and set the widget for dummy label on the MSC Acumen quick review form.

The dummy label is used as a tool for sizing objects on the form.

AAQUICK.GET_SCR_FRAME ( w_widget ) AAQUICK.SET_SCR_FRAME ( w_widget )

PURPOSE:

Get and set the widget for scroll frame on the MSC Acumen quick review form.

AAQUICK.GET_COMBO_WIDGET ( i_wid_offset ) AAQUICK.SET_COMBO_WIDGET ( w_widget, i_wid_offset )

PURPOSE:

Get and set the widgets used to display information on the MSC Acumen quick review form.

NOTES:

The combo widgets array can consist of a mix of label, databox, and option menu widgets.

The ACUMEN_GET_WID_TYPE () function can be very handy as a tool to identify the widget type when these widgets are manipulated with a call to ui_wid_set () or ui_wid_get ().

Page 36: MSC.Acumen 2006 Release and Installation Guide

AAQUICK.GET_OPT_ITEM ( i_wid_offset ) AAQUICK.SET_OPT_ITEM ( w_widget, i_wid_offset )

PURPOSE:

Get and set the widgets used to display information on the MSC Acumen quick review form.

NOTES:

The opt widgets array contains the item widgets used with option menu widgets in the combo widgets array.

The ACUMEN_GET_WID_TYPE () function can be very handy as a tool to identify the widget type when these widgets are manipulated with a call to ui_wid_set () or ui_wid_get ().

AAQUICK.GET_SEPERATOR ( i_wid_offset ) AAQUICK.SET_SEPERATOR ( w_widget, i_wid_offset )

PURPOSE:

Get and set the separator widgets used to format information on the MSC Acumen quick review form.

AAQUICK.GET_STEP_LABEL ( i_wid_offset ) AAQUICK.SET_STEP_LABEL ( w_widget, i_wid_offset )

PURPOSE:

Get and set the step label widgets used to display information on the MSC Acumen quick review form.

AAQUICK.GET_VAR_LABEL ( i_wid_offset ) AAQUICK.SET_VAR_LABEL ( w_widget, i_wid_offset )

PURPOSE:

Get and set the variable label widgets used to display information on the MSC Acumen quick review form.

Page 37: MSC.Acumen 2006 Release and Installation Guide

12 Client Data Access FunctionsMSC Acumen records state information that can be used to restore the state of an MSC Acumen application when an existing database file is opened.

This state information is specified by the application author using the state functions discussed in the documentation.

This state information is managed by storing, retrieving, and manipulating client information in the MSC Patran database using the following MSC Patran core functions:

db_count_client_labels_by_typedb_create_client_datadb_delete_client_datadb_get_all_client_datadb_get_client_datadb_get_client_id_by_labeldb_get_client_labels_by_type

Unfortunately some information needs to be known to retrieve the state information. Even with the use of the underlying client information functions, the application designer must at least know the type information for the client data of interest.

MSC Acumen uses three hard coded data types for storage of state table information: 444, 555, and 666.

Three functions have been added to make retrieving client data easier for the MSC Acumen author.

Note that the format and type of data returned by these functions is highly application design dependant.

STATEUT.LIST_CLIENT_DATA ( )PURPOSE:

Lists all client data used by MSC Acumen to the session file.

INPUTS:

OUTPUTS:

INTEGER <return value> Returns a value of 0 for success or a non zero value indicating a failure.

Page 38: MSC.Acumen 2006 Release and Installation Guide

STATEUT.LIST_CLIENT_DATA_TYPE ( i_type )PURPOSE:

Lists all client data of the specified type to the session file.

INPUTS

OUTPUTS:

STATEUT.GET_CLIENT_DATA ( i_type, i_cnt, i_id, i_lbl, i_clnt_type, i_num_log, i_num_int, i_num_real, i_num_strings, i_num_str_len, l_data, i_data, r_data, s_data )

PURPOSE:

Returns all client data information specified by type.

INPUTS:

OUTPUTS:

INTEGER <return value> Returns a value of 0 for success or a non zero value indicating a failure.

INTEGER i_type This value specifies the client data type to be retrieved.

INTEGER i_cnt This value returns the number of client data sets of the specified type.

INTEGER i_id ( VIRTUAL ) This array returns the id values for the client data sets of the specified type. The array is single dimensional with an upper boundary value specified by the output value i_cnt.

INTEGER i_lbl ( VIRTUAL ) This array returns the label values for the client data sets of the specified type. The array is single dimensional with an upper boundary value specified by the output value i_cnt.

INTEGER i_clnt_type This array returns the client type (VIRTUAL ) values for the client data sets of the specified type. The array is single dimensional with an upper boundary value specified by the output value i_cnt.

Page 39: MSC.Acumen 2006 Release and Installation Guide

INTEGER i_num_log This array returns the number (VIRTUAL) of logical values for the client data sets of the specified type. The array is single dimensional with an upper boundary value specified by the output value i_cnt.

INTEGER i_num_int This array returns the number (VIRTUAL) of integer values for the client data sets of the specified type. The array is single dimensional with an upper boundary value specified by the output value i_cnt.

INTEGER i_num_real This array returns the number (VIRTUAL) of real values for the client data sets of the specified type. The array is single dimensional with an upper boundary value specified by the output value i_cnt.

INTEGER i_num_strings This array returns the number ( VIRTUAL) of string values for the client data sets of the specified type. The array is single dimensional with an upper boundary value specified by the output value i_cnt.

INTEGER i_num_str_len This array returns the maximum length (VIRTUAL) of the string values for the client data sets of the specified type. The array is single dimensional with an upper boundary value specified by the output value i_cnt.

LOGICAL l_data This array returns the logical ( VIRTUAL) data for the client data sets of the specified type.

This array is two dimensional. [ l_data (x,y) ]

The first dimension has an upper boundary value specified by the output value i_cnt. The second dimension has an upper boundary specified by the largest value in the array returned by i_num_log.

Page 40: MSC.Acumen 2006 Release and Installation Guide

INTEGER i_data This array returns the integer (VIRTUAL) data for the client data sets of the specified type.

This array is two dimensional. [ i_data (x,y ) ]

The first dimension has an upper boundary value specified by the output value i_cnt. The second dimension has an upper boundary specified by the largest value in the array returned by i_num_int.

REAL r_data This array returns the real (VIRTUAL) data for the client data sets of the specified type.

This array is two dimensional. [ r_data ( x, y ) ]

The first dimension has an upper boundary value specified by the output value i_cnt. The second dimension has an upper boundary specified by the largest value in the array returned by i_num_real.

STRING s_data This array returns the string (VIRTUAL ) data for the client data sets [ VIRTUAL ] of the specified type.

This array is two dimensional. [ s_data ( x, y ) ]

The first dimension has an upper boundary value specified by the output value i_cnt. The second dimension has an upper boundary specified by the largest value in the array returned by i_num_strings. The length of the strings is specified by the largest value in the array returned by i_num_str_len.

INTEGER <return value> Returns a value of 0 for success or a non zero value indicating a failure.

Page 41: MSC.Acumen 2006 Release and Installation Guide

NOTES:

The built in PCL functions sys_array_hbound (), sys_array_lbound (), sys_array_nbound () are very useful in identifying and working with arrays.

Page 42: MSC.Acumen 2006 Release and Installation Guide

13 Linux NotesThe mscsetup installation script file requires the Korn Shell or ksh to do its magic. If your system does not have ksh installed a good place to start looking for a copy is http://www.kornshell.com/

Page 43: MSC.Acumen 2006 Release and Installation Guide

14 Application InitializationMSC Acumen now supports the ability to optionally call a function named:

acumen_app_init ()

This function is called with no passed arguments and expects no returned values.

This function does not exist in MSC Patran or the core MSC Acumen code, allowing an application author to define the function in the application pcl code.

This function is called, if it exists, at the start of the call to aaui.init ()

This function is very useful for setting up a multiple form user interface for MSC Acumen.

Page 44: MSC.Acumen 2006 Release and Installation Guide

15 Multiple Form User InterfaceMSC Acumen now supports the ability to place the three separate sections of the default user interface on up to three separate forms.

The default or "classic" MSC Acumen user interface consists of three separate parts:

• A main or step panel where the application steps completed are controlled and listed which occupies roughly the upper third of the user interface.

• An HTML panel which occupies roughly the middle third of the user interface.

• An input panel which occupies roughly the bottom third of the user interface.

Two core functions have been created which allow either the "step" panel and/or the "input" panels to be placed on separate forms.

These functions:

aaui.set_step_seperate ( l_true_false )aaui.set_input_seperate ( l_true_false )

Can be called either with a p3midilog.pcl file or through the acumen_app_init ( ) function.

Page 45: MSC.Acumen 2006 Release and Installation Guide

16 Installation NotesHewlett Packard UNIX machines may have problems reading the MSC Acumen CD-ROM.

Symptoms of these problems are extra characters at the end of file names on the delivery CD after it has been mounted on a machine.

A workaround has been provided in the form of a tar file in a subdirectory containing the complete installation cd file set.

This tar file is located in

msc_acumen/msc_acumen.tar

on the CD-ROM.

The tar command ( see man tar ) can be used to extract the installation cd file set to a temporary directory. The mscsetup script file can then be run in the temporary directory to install MSC Acumen.

Page 46: MSC.Acumen 2006 Release and Installation Guide