Beruflich Dokumente
Kultur Dokumente
Acumen 2006
Application Author’s Guide
Main Index
Corporate
MSC.Software Corporation
2 MacArthur Place
Santa Ana, CA 92707 USA
Telephone: (800) 345-2078
Fax: (714) 784-4056
Europe
MSC.Software GmbH
Am Moosfeld 13
81829 Munich, Germany
Telephone: (49) (89) 43 19 87 0
Fax: (49) (89) 43 61 71 6
Asia Pacific
MSC.Software Japan Ltd.
Entsuji-Gadelius Building
2-39, Akasaka 5-chome
Minato-ku, Tokyo 107-0052, Japan
Telephone: (81) (3) 3505 0266
Fax: (81) (3) 3505 0914
Worldwide Web
www.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-904001
Main Index
C O N T E N T S
MSC.Acumen Application Author’s Guide
MSC.Acumen Application Author’s
Guide,
1
Authoring ■ Definitions, 2
MSC.Acumen
■ Product Overview, 3
Applications
❑ Typical File Structure for an MSC.Acumen Installation, 3
❑ Core Run –Time Software Libraries Installation and File
Structure, 4
❑ Specific MSC.Acumen Applications Installation and File
Structure, 5
❑ Run-Time Environment Variables Set by the Invoking Script
File, 6
■ What is an MSC.Acumen Application?, 9
■ Why an MSC.Acumen Application?, 10
■ Principles for Effective Application Development, 12
■ MSC.Acumen Data Flow Diagrams, 15
❑ General Dataflow, 15
❑ Detailed Data Flow, 16
2
Drive Pages ■ Drive Page Overview, 18
■ Elements of a Drive Page, 19
❑ Element Relations, 20
Main Index
■ Example of a Home Drive Page (Steps 2-n), 32
■ XML Tag Definitions, 51
❑ Advisor Tag, 51
❑ <advisor>, 51
❑ Defsteps Tag, 53
❑ <defsteps>, 53
❑ Ds Tag, 53
❑ <ds>, 53
❑ Step Tag, 54
❑ <step>, 54
❑ UresponseTag, 55
❑ <uresponse>, 55
❑ Response Tag, 57
❑ <response>, 57
❑ Lrule Tag, 57
❑ <lrule>, 57
❑ Dialog Tag, 58
❑ <dialog>, 58
❑ Returnerror Tag, 61
❑ <returnerror>, 61
3
Function ■ Function Definitions File Overview, 68
Definitions Text
■ Function Definitions File Example, 69
File
■ Syntax of Keywords, 72
❑ Syntax for the Different Widget Types, 76
❑ Specification of call parameters for which no widgets are
displayed, 78
4
Introduction to ■ What is HTML, and why do I need to know about it for
HTML MSC.Acumen?, 82
■ Example of a Simple HTML Page, 83
■ Document Tags, 84
■ Lists, 86
■ Anchors, 88
Main Index
5
State Table ■ State Table Overview, 90
Functional
■ Record User Response Variable, 92
Interface
❑ AASTATE.record_ur_real, 92
❑ AASTATE.record_ur_realarray, 92
❑ AASTATE.record_ur_integer, 93
❑ AASTATE.record_ur_integerarray, 93
❑ AASTATE.record_ur_string, 95
❑ AASTATE.record_ur_stringarray, 95
❑ AASTATE.record_uresponse, 96
6
User Interface ■ Main Panel, 112
Functions ❑ AAUI.mainpanel_include_steps, 112
❑ AAUI.mainpanel_current_step, 112
❑ AAUI.mainpanel_step_complete, 113
❑ AAUI.mainpanel_lock_steps, 113
❑ AAUI.mainpanel_unlock_steps, 114
Main Index
❑ AAUI.mainpanel_unselect_steps, 114
❑ AAUI.switch_highlight, 115
❑ AAUI.switch_highlight_restorer, 115
■ Buttons, 117
❑ AAUI.sthelp_helpcb, 117
❑ AAUI.helpdoc_display, 117
❑ AAUI.quickreview_quickcb, 119
❑ AAUI.quit_quitcb, 119
❑ AAUI.backup_backupcb, 120
❑ AAUI.backup_status, 120
❑ AAUI.notify_backup_done, 121
❑ AAUI.backup_enable, 121
7
Drive Page ■ Introduction, 134
Interpreting ■ PCL Function Descriptions, 135
Functions
❑ AAI.html_calls, 135
❑ AAI.get_step1id, 136
❑ AAI.allsteps_display, 137
❑ AAI.init_step_dialog, 137
❑ AAI.step_help_doc, 138
❑ AAI.next_dialog, 138
❑ AAI.dynamic_next_dialog, 140
❑ AAI.queued_dialog, 141
❑ AAI.queued_msg, 141
❑ AAI.queued_ftn, 142
❑ AAI.initiate_ftn, 142
❑ AAI.exit_ftn, 143
Main Index
8
General Utility ■ Introduction, 146
Functions
■ PCL Function Descriptions, 147
❑ acumen_drive_page_trans, 147
❑ aa_env.ret_acumen_app, 148
❑ aa_env.ret_acumen_brw, 149
❑ aa_env.ret_acumen_home, 150
❑ aa_env.ret_acumen_int, 151
❑ aa_env.validate_path, 152
Main Index
Main Index
MSC/PATRAN User’s Guide, Part 4: Finite Element Modeling
Preface
Main Index
iv
Preference Guides
❏ ABAQUS
❏ ANSYS
❏ LS-DYNA
❏ MSC.Marc
❏ MSC.Dytran
❏ MSC.Nastran
❏ PAMCRASH
❏ SAMCEF
❏ PATRAN 2 Neutral File
Main Index
CHAPTER v
Preface
Technical Support
For help with installing or using an MSC.Software product, contact your local technical support
services. Our technical support provides the following services:
• Resolution of installation problems
• Advice on specific analysis capabilities
• Advice on modeling techniques
• Resolution of specific analysis problems (e.g., fatal messages)
• Verification of code error.
If you have concerns about an analysis, we suggest that you contact us at an early stage.
You can reach technical support services on the web, by telephone, or e-mail:
Web Go to the MSC.Software website at www.mscsoftware.com, and click on Support. Here, you can
find a wide variety of support resources including application examples, technical application
notes, available training courses, and documentation updates at the MSC.Software Training,
Technical Support, and Documentation web page.
Phone United States Frimley, Camberley
and Telephone: (800) 732-7284 Surrey, United Kingdom
Fax Fax: (714) 784-4343 Telephone: (44) (1276) 67 10 00
Fax: (44) (1276) 69 11 11
Munich, Germany Tokyo, Japan
Telephone: (49) (89) 43 19 87 0 Telephone: (81) (3) 3505 02 66
Fax: (49) (89) 43 61 71 6 Fax: (81) (3) 3505 09 14
Rome, Italy Paris, France
Telephone: (390) (6) 5 91 64 50 Telephone: (33) (1) 69 36 69 36
Fax: (390) (6) 5 91 25 05 Fax: (33) (1) 69 36 45 17
Moscow, Russia Gouda, The Netherlands
Telephone: (7) (095) 236 6177 Telephone: (31) (18) 2543700
Fax: (7) (095) 236 9762 Fax: (31) (18) 2543707
Madrid, Spain
Telephone: (34) (91) 5560919
Fax: (34) (91) 5567280
Main Index
vi
Email Send a detailed description of the problem to the email address below that corresponds to the
product you are using. You should receive an acknowledgement that your message was
received, followed by an email from one of our Technical Support Engineers.
Training
The MSC Institute of Technology is the world's largest global supplier of
CAD/CAM/CAE/PDM training products and services for the product design, analysis and
manufacturing market. We offer over 100 courses through a global network of education
centers. The Institute is uniquely positioned to optimize your investment in design and
simulation software tools.
Our industry experienced expert staff is available to customize our course offerings to meet your
unique training requirements. For the most effective training, The Institute also offers many of
our courses at our customer's facilities.
The MSC Institute of Technology is located at:
2 MacArthur Place
Santa Ana, CA 92707
Phone: (800) 732-7211
Fax: (714) 784-4028
The Institute maintains state-of-the-art classroom facilities and individual computer graphics
laboratories at training centers throughout the world. All of our courses emphasize hands-on
computer laboratory work to facility skills development.
We specialize in customized training based on our evaluation of your design and simulation
processes, which yields courses that are geared to your business.
In addition to traditional instructor-led classes, we also offer video and DVD courses, interactive
multimedia training, web-based training, and a specialized instructor's program.
Internet Resources
MSC.Software (www.mscsoftware.com)
MSC.Software corporate site with information on the latest events, products and services for the
CAD/CAE/CAM marketplace.
Engineering-e.com (www.engineering-e.com)
Engineering-e.com is the first virtual marketplace where clients can find engineering expertise,
and engineers can find the goods and services they need to do their job
MSC.Linux (www.mscsoftware.com/hpc)
Now with almost 40-years of unparalleled experience in scientific and technical computing,
MSC.Software is leveraging this knowledge to deliver its customers state-of-the-art, high
performance computing solutions based on clustered computing for running engineering and
life sciences applications.
CATIASOURCE (plm.mscsoftware.com)
Your SOURCE for Total Product Lifecycle Management Solutions.
Main Index
viii
Main Index
CHAPTER ix
Preface
Name:_____________________________________________________________
Title: ______________________________________________________________
Company: _________________________________________________________
Address:___________________________________________________________
__________________________________________________________________
Telephone:_________________Email: __________________________________
Signature:______________________________ Date: ______________________
Name:_____________________________________________________________
Title: ______________________________________________________________
Signature:______________________________ Date: ______________________
Main Index
x
Fold here
_______________________
_______________________ Place
Stamp
_______________________ Here
MSC.Software Corporation
Attention: Legal Department
2 MacArthur Place
Santa Ana, CA 92707
Fold here
Main Index
MSC.Acumen Author’s Guide
CHAPTER
Authoring MSC.Acumen Applications
1
■ Definitions
■ Product Overview
■ What is an MSC.Acumen Application?
Main Index
2
1.1 Definitions
SGML - Standard Generalized Markup Language.
HTML - Hypertext Markup Language (a particular implementation of SGML).
XML - Extensible Markup Language, enhanced SGML implementation employing HTML-like
tags.
Tags - used in HTML and XML to identify elements according to their content and purpose. The
following is an XML tag:
<step stepid="2." stephelp="brakeparts/html/st2help.html">
For XML tag definitions, see <hypertext>XML Tag Definitions (p. 46).
For HTML tag definitions, see <hypertext>Supported HTML tags and options (p. 54).
Elements/Attributes - parts of a tag (in the above example, "step" is an element; "stepid" and
"stephelp" are attributes).
.png - portable network graphics file (replaces .gif).
Drive Page - a file (.xml) which scripts the work flow, sending control to sub-pages for common
or repetitive tasks.
State Table - persistent memory method of recording and retrieving information
acumen_drive_page_trans - a program that creates an indexed version (.xio) of drive pages
(.xml) for efficient reading by the platform software.
Automated Link Rules - used in the drive page to make automated hypertext-like links to the
correct starting HTML dialog for each step.
Step- A scripted analysis process is divided up into manageable units called “steps”.
MSC.Acumen provides a process control by presenting steps as defined by an expert author
through the XML <step> tags. Steps may have enforced prerequisites to their execution. A step
may hold the user captive in that part of the application until it is successfully completed.
Dialog- A new display event in the MSC.Acumen interface results from the transition to a new
“dialog”. A dialog always has a “mini web page” HTML display associated with it. The
philosophy of MSC.Acumen is that the interface is always talking to the user, giving clear
instructions about what to do next. A dialog event is encoded in XML through the <dialog> tag.
A step may have several dialogs. The author has available several logic processing operations
for controlling the transition between dialogs including the automated link rules.
Page- In the context of this document, the word “page” refers to a physical file as opposed to one
display event. A single drive page may contain several steps and many diaogs encoded in XML.
Therefore, from one XML page written by the author, numerous separate displays can be shown
on the user interface.
Main Index
CHAPTER 1 3
Authoring MSC.Acumen Applications
• .dwn file - This is the MSC.Acumen pull-down labels file. This is used for invoking
MSC.Acumen in the “Authoring mode” where all of the standard MSC.Patran forms
are available along with the MSC.Acumen “single form drive page interface”. The
labels file allows for customizing with a foreign language.
• .labels file - This text file contains the labels that are displayed on the MSC.Acumen
“single form drive page interface”. This file allows for customizing with a foreign
language. It also allows a relative sizing control of the three main interface scroll boxes
(work flow manager, dialog, inputs) through changing two integer values.
• .xml files - These are the source “drive page” files that govern the process flow and user
interface display during the execution of an application.
• .xio files - These are the indexed or compiled version of .XML drive pages. They are
pre-processed by a special C-code function for purposes of efficient reading.
• .bat file - This is the “batch” script file that sets certain environment variables and then
invokes MSC.Patran or “Application Core” with the special “aa_init,pcl” initiation
script operating. The environment variables are described below. This .bat file must
be edited for any new installation to make all path descriptions consistent.
set P3_HOME=c:\msc\patranv85
set ACUMEN_HOME=c:\msc\acumen_core
set ACUMEN_APPLICATIONS=c:\msc\brk_lvr\acumen_drive.xio
set ACUMEN_BROWSER=c:\ProgramFiles\Netscape\Communicator\Program\netscape.exe
set ACUMEN_INTERFACE=DISABLE
set HTML_IMAGE_PATH=c:\msc\brk_lvr\app_images
set ACUMEN_Y_SCALE=.95
c:\msc\patranv85\bin\patran -ifile c:\msc\acumen_core\aa_init.pcl
The final line of this file invokes the commercial MSC.Patran executable with the special
“aa_init.pcl” initialization script. The correct path to “init.pcl” in the core MSC.Acumen
run-time software installation must be specified.
The environment variable declarations that define file paths must also be edited to define those
paths correctly according to the installation. Following are descriptions for what the
environment variables are used for.
1. P3_HOME - This defines the installation path for commercial MSC.Patran or the
alternative “Application Core”.
2. ACUMEN_HOME - This defines the installation path for the core MSC.Acumen
run-time software libraries. Files such as “aa_platform.plb” and “aa_uiprimary.plb”
are located in this defined directory.
• Assumed file locations and names:
• All core .plb and status message files will be placed directly in the
Main Index
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
6
Main Index
8
Main Index
CHAPTER 1 9
Authoring MSC.Acumen Applications
Dialog Box
Inputs Box
Main Index
10
DEFINITION PHASE:
1. Maximize application value per investment of authoring. Look at the business goal for
creating applications. We are generally seeking to reduce design cycle time and to
shorten the time-to-market for new products by moving product simulation into the
early design phases. When considering which applications to write, look at the
business case first. Choose first those applications that will enjoy frequent usage and
will impact the design process most.
2. Make sure that a thorough job is done in the definition phase. The user group has an
idea of what they want, but they also need some help at refining their goals and
specifying the best applications to improve the product design processes. They may not
have a clear idea of the options possible in MSC.Acumen solutions. An independent
look at the design process often results in ideas for improvement that are not obvious
to those using the existing process and conditioned to the process assumptions. The
independent observer challenges assumptions in order to understand the process.
3. The application author must learn the culture, relevant technology, definition of terms,
and units employed by the end users. The applications must deliver the knowledge
and methods of the simulation expert to non-expert simulators in terms that they can
understand. Authors must sometimes capture the expert methods of others and deliver
them through an application to the end users. Sufficient attention is required to capture
all methods and options with good fidelity.
4. Consider how the application fits into the design process as opposed to viewing it as
an isolated tool. Ask questions such as:
• Where does the input data come from?
• Where do output results data go, and how are they used?
• Is special results processing required? Would an HTML output report help the process
and documentation effort?
• What form of geometry data is available? Are process changes required to make more
suitable geometry data available?
• Would it better serve the design process to run a parameter driven idealized geometry
generation using native MSC.Patran constructions? The CAE evolved geometry is then
transmitted to CAD via AP203 export/import.
Answering these questions will suggest writing an application that reaches past its
FEA solution boundaries to better interface with the design process. Typically, a
significant amount of work should be given to special analysis results processing, and
exporting those processed results in a format that enhances the design and
Main Index
documentation process.
CHAPTER 1 11
Authoring MSC.Acumen Applications
5. Be sensitive to the needs of all affected by the work that you are doing. Change can be
disruptive and difficult, but can bring great value. Seek maximum benefit to the
organization. The simulation experts can become more effective by leveraging their
knowledge and methods into widely used applications. The design staff can increase
their efficiency by using the applications. Seek the win-win situations.
IMPLEMENTATION PHASE:
6. Start the implementation phase by creating a simulation process flow chart. The flow
chart is useful to insure that all important logical options or scenarios are considered.
Also, a flow chart helps to eliminate logical process errors. Currently we are
investigating the possibility for employing a flow charting software that will
automatically output a skeleton XML corresponding to the flow chart symbols used. A
XML editor loaded with the MSC.Acumen drive page DTD (Data Type Definition) will
be used to conveniently fill in drive page details.
7. Format the XML page with blank lines and comments so that it reads with visual ease.
Make the logical paths look obvious by spacing and naming. See the example brake
lever application drive page as a style guide, <hypertext>Example of a Home Drive
Page (Step 1) (p. 27).
8. Use terms and phrases that are familiar to the end user. Avoid specialized CAE jargon
and acronyms. Speak the language of the product designers who will use the
application.
9. Request data in the units and terms that are commonly available and familiar to the
users. Let the computer do the work of making conversions and combining terms. A
representative of the end users will best dictate what these terms and units are.
10. Try to represent all important logical branches on the XML drive pages in terms of
<lrule> branches, <dialog> tag attributes, <returnerror> branches, hypertext links, etc.
<!--accentuated with comment statements --> as opposed to hiding them inside of PCL
functions.
11. In general, all HTML dialog displayed should come from <dialog> tags on the XML
drive pages. An exception is the dynamic dialog capability enabled by the
AAI.dynamic_next_dialog() call. The HTML can have a dynamic computed part
followed by a static part that is read from the drive page.
12. Never leave the user hanging with nowhere to go. You are dictating the scenario and
all options. Always display an HTML dialog that tells the user what to do next.
13. Plan for and schedule prototype testing and evaluation by representatives of the
application users. We recommend adapting the approach documented by the ASTM
E1340-96 rapid prototyping standard. This process validates the specification and the
software at major milestones to insure on-target development and to avoid
misconceptions, miscommunications, and unwanted surprises. The end users feel
included and become supportive and eager to adapt the developed applications.
Main Index
12
Main Index
CHAPTER 1 13
Authoring MSC.Acumen Applications
Main Index
14
Main Index
MSC..Acumen Author’s Guide
CHAPTER
Drive Pages
2
■ Drive Page Overview
■ Elements of a Drive Page
■ Drive Page Style Guide
Main Index
18
Main Index
CHAPTER 2 19
Drive Pages
Element Relations
Home Drive Page (Step 1)
<advisor>
<defsteps>
<ds>
<Step>
<Uresponse>
<response>
<response>
<Dialog> <Dialog>
<HTML> <HTML>
</HTML> </HTML>
<Dialog> <Dialog>
<HTML> <HTML>
</HTML> </HTML>
Main Index
20
<advisor>
<defsteps>
<ds>
<ds>
<ds>
<Step> <Step>
<Uresponse> <Uresponse>
<response> <response>
<response> <response>
<lrule> <lrule>
<lrule> <lrule>
<Dialog>
<HTML>
<Dialog>
<HTML>
<Dialog>
<HTML>
<Dialog>
<HTML>
<Step> <Step>
<Uresponse> <Uresponse>
<response> <response>
<response> <response>
<lrule> <lrule>
<lrule> <lrule>
<Dialog>
<HTML>
<Dialog>
<HTML>
<Dialog>
<HTML>
<Dialog>
<HTML>
Main Index
This page uses the <defsteps> tag to define analysis steps 2 through n that are displayed in the
UI form step selection box. The home page must contain separate <step> tag entries
corresponding to all steps defined in the <defsteps> tag. These separate <step> tags may
possibly transfer control to other sub-pages. Sub-pages have independent <step> tags but do not
CHAPTER 2 21
Drive Pages
have <defsteps> tags. The Step-1 Home page and the Home page for Steps 2-n are the only two
pages (physical XML files) that use <defsteps> tags. See <hypertext>Example of a Home Drive
Page (Steps 2-n) (p. 30).
“Home Drive Page” versus sub pages
When the application user selects a step on the user interface form, or alternatively the
AAUI.switch-highlight (stepid) function is called for automated step selection, the software first
reads a “home drive page” XML file to find the corresponding <step> tag. Home drive pages are
where the processing of each analysis step starts.
<defsteps> tags to define the steps displayed on the user interface form are only valid and only
read from home drive pages.
Once the appropriate <step> tag is located on a home drive page, an automated link rule or a
hypertext link invoking the AAI.next_dialog ( ) function can transfer control to a sub page.
Going to a sub page is analogous to a gosub call in programming languages. <step> tags listed
on a sub page are independent of the <step> tags on home pages and may have completely
different IDs. <step> tag IDs from sub pages do not appear on the user interface step selection
panel.
PCL function calls are available to determine path names to the Step-1 home drive page and the
home drive page for all subsequent steps.
The Step-1 home drive page is defined by the environment variable
ACUMEN_APPLICATIONS. The pcl function aa_env.ret_acumen_app ( ) as documented in
Chapter 8 will return the Step-1 home drive page.
A relative path of the home drive page for Steps 2-n is defined by the user response string
variable “NEXTPAGE” stored under Step-1 in the state table. A PCL call to the state table
AASTATE.get_ur_string is used to obtain this relative path.
Main Index
22
A <step> tag for each stepid should follow in order. Place a comment at the top of each step to
clearly mark the beginning of the step tag.
<!--
***
*** Step 2 "Acquire Geometry"
***
*** -->
<step stepid = "2."
stephelp = "helpdocs/st2help.html">
The first tag within the <step> tag should be the <uresponse> tag. Each <response> tag should
be on one line, and formatted so that each attribute lines up vertically.
<uresponse>
<response name="thickness" type="REAL"> </response>
<response name="complete" type="STRING" values="C,X" readonly>
</response>
<response name="geomsource" type="STRING" values="ug,express" readonly>
</response>
</uresponse>
The next tag within the <step> tag should be the <lrule> tags. Each ‘if’ should be indented, and
each body of the ‘if’ statement should be indented. Always end with an ‘else’ statement to
guarantee that the logic rule will send the program flow to a dialog or another <lrule>. Note that
<lrule> tags are optional.
<lrule ruleid="gchk">
if(step("8.").uresponse("Complete")=="C")
page(".").step("8.").dialog("exclude");
else if(step("3.").uresponse("complete")=="C")
page(".").step(".").dialog("doover");
else if(step("3.").uresponse("complete")=="X")
page(".").step(".").dialog("undostep");
else if(step("2.").uresponse("complete")=="C")
page(".").step(".").dialog("extract");
else page(".").step(".").dialog("exclude");
</lrule>
Finally, the <step> tag can contain one or many <dialog> tags. Each attribute should be
Main Index indented. If a function attribute has more then one function, those should be indented to have
the ‘F’ start in the same column and should only have one function per line.
The <dialog> tags should be grouped in such a way that makes sense to someone trying to
follow the logic flow of the drive page.
CHAPTER 2 23
Drive Pages
<dialog dlgid="mesh"
inputid="lever_automesh"
quedlg=".#4.#st4ck1"
errordlg=".#4.#st4ck2"
initftn="F:ga_view_aa_set;R:0.;R:0.;R:0.;
F:gu_fit_view" >
Main Index
24
There must be a corresponding *INPUTID entry in the Function Definitions file (xxx.def) which
sets up the parameters for the PCL function call which may or may not have the same name as
the *INPUTID name. In the example below, it does have the same name.
*INPUTID=readthickness
*CLASS=AANAV
*FUNCTION=readthickness
*DBOX=REAL,Type: Thickness,1,3.
...
This information is then used to call the PCL function “readthickness” which is defined in the
file AANAV.pcl.
FUNCTIONreadthickness(thick)
REAL thick
IF(thick < 1. || thick > 5. ) THEN
...
END FUNCTION
PCL calls reference the Function Definitions file for calls that require user inputs and
corresponding widgets display. When this execution is completed, the optional queftn
referenced PCL calls will be made. Finally, when the dialog is exited, the optional exitftn
referenced PCL calls will be made.
PCL calls with fixed call sequence arguments can also be invoked through user selection of
hypertext links. The MSC.Patran embedded HTML widget supports a particular syntax in HREF
attributes to anchors for PCL call invocation. See the <hypertext>AAI.html_calls (p. 135) for the
syntax and use of the AAI.html_calls function.
Main Index
CHAPTER 2 25
Drive Pages
Main Index
26
Main Index
CHAPTER 2 27
Drive Pages
<defsteps>
<ds stepid="1." steplabel="Open Component Modeling Database"> </ds>
</defsteps>
<uresponse>
<response name="complete" type="STRING" values="C,X" readonly>
</uresponse>
<lrule ruleid="reentry">
if (step(".").uresponse("Complete")=="C")
page(".").step(".").dialog("exclude");
else
page(".").step(".").dialog("start");
</lrule>
<dialog dlgid="exclude"
inputid="null"
initftn="F:AAUI.mainpanel_unselect_steps">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-1: (Open Database) has already been completed.
If you would like to start over with a different database,
select the <FONT Color="#FF0000">Quit button<FONT Color="#000000"> above.
<p> <FONT Color="#FF0000">Otherwise<FONT Color="#000000">, please select a
different step from above.<p></FONT></BODY></HTML>
</dialog>
<dialog dlgid="start"
inputid="null"
initftn="F:AAUI.mainpanel_lock_steps">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<CENTER><FONT Color="#FF0000">Brake Components Simulation Workflow<FONT
Color="#000000"></CENTER><p>
<TABLE WIDTH="342" HEIGHT="200" BORDER="0" CELLSPACING="2" CELLPADDING="0">
<TR>
<TD WIDTH="53%" HEIGHT="195"><p><IMG SRC="brakelogo.png"></TD>
<TD WIDTH="47%"><P>Welcome to the automotive brake components simulation workflow
Main Index package.<p>
These pages are maintained by the XXX Brakes Inc. Engineering Technology Center.
<p>Please direct all technical questions or problem reports to the Tech. Center.
</TD></TR></TABLE>
<p>Are you starting a new analysis model, or reopening an existing modeling database?
Please answer by selecting a hypertext below.
28
<ul>
<li><a HREF="PCL:AAI.html_calls(
FUNC:AAI.next_dialog;STR:step1_drive.xml;STR:1.;STR:new2)">New</a>
<li><a HREF="PCL:AAI.html_calls(
FUNC:AAI.next_dialog;STR:step1_drive.xml;STR:1.;STR:old2)">Existing</a>
<li><a HREF="PCL:AAI.html_calls(FUNC:AAUI.helpdoc_display;STR:st1help.html)">First,
help me</a> understand this step, and how the drive pages work.
</ul> </FONT></BODY></HTML>
</dialog>
<dialog dlgid="old2err"
inputid="existing_db_open"
quedlg=".#.#st1ck1" errordlg=".#.#old2err"
queftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.restore_oldstate;
FUNC:AACHECK.step1_uchk"
exitftn="FUNC:AANAV.step_wrapup;FUNC:AAI.allsteps_display">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<CENTER><IMG SRC="brakesinc.png"></CENTER><p>
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
The database file selection was not valid.
Please select again from the "Files" box below, and then select "Apply Inputs".
<p>Note that you can navigate through directories by
selecting a path in the "Directories" box and then selecting the "Filter"
button.</FONT></BODY></HTML>
</dialog>
</step>
</advisor>
30
<advisor>
<!-- Analysis Advisor Dialog Driver file for an automotive brake shoe park lever
linear static analysis using MSC/NASTRAN.
Last Revision Date: 6/12/98 -->
<defsteps>
<ds stepid="2." steplabel="Acquire Geometry"> </ds>
<ds stepid="3." steplabel="Extract Surface(s)"> </ds>
<ds stepid="4." steplabel="Build Simulation Model"> </ds>
<ds stepid="5." steplabel="Strut Reaction Constraint"> </ds>
<ds stepid="6." steplabel="Shaft Pivot Constraint"> </ds>
<ds stepid="7." steplabel="Cable Load"> </ds>
<ds stepid="8." steplabel="Evaluate"> </ds>
<ds stepid="9." steplabel="Show Results"> </ds>
</defsteps>
<!--
***
*** Step 2 "Acquire Geometry"
***
*** -->
<uresponse>
<response name="thickness" type="REAL">
<response name="complete" type="STRING" values="C,X" readonly>
<response name="geomsource" type="STRING" values="ug,express" readonly>
</uresponse>
<lrule ruleid="reentry">
if (step(".").uresponse("Complete")=="C")
page(".").step(".").dialog("exclude");
else
page(".").step(".").dialog("cad1");
</lrule>
<dialog dlgid="exclude"
inputid="null">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-2: (Acquire Geometry) has already been completed.
If you would like to start over with a different geometry file, select the
<FONT Color="#FF0000">Quit button<FONT Color="#000000"> above.<P>
<FONT Color="#FF0000">Otherwise<FONT Color="#000000">, please select a
different step from above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="cad1"
initftn="F:ga_group_create;STR:geometry;
F:ga_group_current_set;STR:geometry;"
inputid="null">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<p><FONT Color="#FF0000">Acquire Geometry:<FONT Color="#000000"><p>
Geometry is obtained from CAD files for automotive brake components analysis.
Please indicate, by selecting the appropriate hypertext link, which type of CAD
Main Index file you will use.
<UL>
<LI><A
HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;STR:2.;ST
R:ug1;
FUNC:AASTATE.record_ur_string;STR:geomsource;STR:ug;
FUNC:AAUI.mainpanel_lock_steps)">
CHAPTER 2 31
Drive Pages
<dialog dlgid="exp1"
initftn="F:AANAV.clear_geometry_group;"
inputid="express_bin_import"
quedlg=".#2.#cad2"
errordlg=".#2.#experror"
queftn="FUNC:ga_view_aa_set;R:0;R:19.;R:0"
undo="F:AANAV.remove_solids" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">EXPRESS neutral file import of a B-REP solid:<FONT
Color="#000000"><P>
Please select the binary EXPRESS file (Example: brakelever.bxp) from the files
available below.<P>
Select the <FONT COLOR="#FF0000">"Apply Inputs" <FONT COLOR="#000000">
button below after selecting the file.<P>
Note that you can navigate through directories by selecting in the "Directory
Lable" box and
then the filter button.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="ug1"
initftn="F:AANAV.clear_geometry_group;"
inputid="ugimport_method1"
quedlg=".#2.#cad2"
errordlg=".#2.#ugerror"
queftn="FUNC:ga_view_aa_set;R:0;R:19.;R:0"
undo="F:AANAV.remove_solids" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">UG CAD geometry import of a B-REP solid:<FONT
Color="#000000"><P>
Please select the CAD file (Example: brakelever.prt) from the files available
below.<P>
Select the "Apply Inputs" button below after selecting the CAD file.<P>
Note that you can navigate through directories by selecting in the directories
box and
then the filter button.<P></FONT></BODY></HTML>
</dialog>
<!-- An AACHECK class function will call up the terminal dialog for this step
depending upon the check results.-->
<dialog dlgid="cad2"
inputid="readthickness"
errordlg=".#2.#badthick"
queftn="F:AAUI.mainpanel_unlock_steps;
F:AACHECK.geom_imported" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<p><FONT Color="#FF0000">Input Thickness:<FONT Color="#000000"><p>
Please enter a value for the brake lever sheet metal thickness (millimeters) in
the box below.<P>
Select <FONT COLOR="#FF0000">"Apply Inputs" <FONT COLOR="#000000">after
entering the value.<P></FONT></BODY></HTML>
Main Index </dialog>
<dialog dlgid="experror"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
The CAD file name was either not selected or incorrect. Please try again.
32
<DL>
<DD><A HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:2.;STR:exp1)">OK</A>
</DL>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="ugerror"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
The CAD file name was either not selected or incorrect. Please try again.
<DL>
<DD><A HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:2.;STR:ug1)">OK</A>
</DL>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="badthick"
inputid="readthickness"
errordlg=".#2.#badthick"
queftn="F:AAUI.mainpanel_unlock_steps;
F:AACHECK.geom_imported" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
The thickness value input was not in a valid range. <br>
The thickness must be between 1. and 5. millimeters for a practical brake lever
design.<P>
Please enter again a value for the thickness in the box below.<P>
Select <FONT COLOR="#FF0000">"Apply Inputs" <FONT COLOR="#000000">after
entering the value.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="gick1"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
This step is complete. Please select your next step from the list
above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="gick2"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
Geometry was NOT found in your database. You must go back and repeat the
geometry acquisition step.<P></FONT></BODY></HTML>
</dialog>
</step>
<!--
***
*** Step 3 "Extract Surface(s)"
***
*** -->
<uresponse>
<response name="complete" type="STRING" values="C,X" readonly>
Main Index </uresponse>
<lrule ruleid="gchk">
CHAPTER 2 33
Drive Pages
if(step("8.").uresponse("Complete")=="C")
page(".").step("8.").dialog("exclude");
else if(step("3.").uresponse("complete")=="C")
page(".").step(".").dialog("doover");
else if(step("3.").uresponse("complete")=="X")
page(".").step(".").dialog("undostep");
else if(step("2.").uresponse("complete")=="C")
page(".").step(".").dialog("extract");
else page(".").step(".").dialog("exclude");
</lrule>
<dialog dlgid="exclude"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT COLOR="#FF0000">Step-2: (Acquire Geometry) was not completed.
<FONT COLOR="#000000">
You must successfully complete step-2 before performing this step. <P>
Please select step-2 above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="doover"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-3: (Extract Surface(s)) has already been completed.</P>
<UL><LI>
<A HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:3.;STR:undostep)">
Continuing</A> with this step also requires redoing steps 4-7 if they have been
completed</P>
<LI>
<FONT Color="#FF0000"> Otherwise<FONT Color="#000000"> select a different step
from above.
</UL>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="undostep"
inputid="null"
initftn="F:AANAV.change_C_to_X;STR:4.;
F:AANAV.change_C_to_X;STR:5.;
F:AANAV.change_C_to_X;STR:6.;
F:AANAV.change_C_to_X;STR:7.;
F:AASTATE.record_ur_string;STR:complete;STR:X;
F:AAUI.mainpanel_step_complete;STR:3.;STR:X;
F:AAUI.mainpanel_lock_steps;
F:AANAV.lever_step_3_undo;
F:ga_view_aa_set;R:0;R:19.;R:0;
F:gu_fit_view;
F:AAI.next_dialog;STR:parklever_drive.xml;STR:3.;STR:extract" >
<HTML></HTML>
</dialog>
<!-- Note that the step checking function for step 3. takes place in the
AANAV.extract_face
function. The integer status return value determines the terminal dialog. -->
<dialog dlgid="extract"
inputid="extract_face"
quedlg=".#3.#st3ck1"
errordlg=".#3.#st3ck2"
Main Index initftn="F:AANAV.lever_post_only_geometry;
"
queftn= "F:ga_view_aa_set;R:0.;R:0.;R:0.;
F:gu_fit_view;" >
<returnerror retvalue="2" retdlg=".#3.#allfaces">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<p><FONT Color="#FF0000">Pick a Surface:<FONT Color="#000000"><p>
34
Please screen pick the outside surface face or faces representing a planform
view of the design.
Your selection will be used to construct a 2-dimensional model.
You may select multiple faces of a complex design by holding the shift key
down.<P>
Finally, select the <FONT COLOR="#FF0000">"Apply Inputs" <FONT COLOR="#000000>
button.<P>
<CENTER><img src="pickface.png"></CENTER><P></FONT></BODY></HTML>
</dialog>
<!-- Success return dialog from the automated surface extraction function -->
<dialog dlgid="st3ck1"
inputid="null"
initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:C;
FUNC:AAUI.mainpanel_step_complete;STR:3.;STR:C;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
This step is complete. Please select your next step from the list
above.<P></FONT></BODY></HTML>
</dialog>
<!-- Error return from the automated surface extraction function -->
<dialog dlgid="allfaces"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
You have selected too many faces to represent a 2-D model of the lever.<P>
A common error is to select ALL faces.<P>
You must <A
HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:3.;STR:undostep)">
REDO the surface selection.</A>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="st3ck2"
inputid="null"
initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:X;
FUNC:AAUI.mainpanel_step_complete;STR:3.;STR:X;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Surface extraction failed. Your screen selections may have not been valid.<P>
You may try and repeat this step.<P></FONT></BODY></HTML>
</dialog>
</step>
<!--
***
*** Step 4 "Build Simulation Model"
***
*** -->
<uresponse>
Main Index <response name="complete" type="STRING" values="C,X" readonly>
</uresponse>
<lrule ruleid="surfck">
if(step("8.").uresponse("Complete")=="C")
page(".").step("8.").dialog("exclude");
else if(step("3.").uresponse("complete")!="C")
page(".").step(".").dialog("exclude");
else if(step("4.").uresponse("complete")=="C")
page(".").step(".").dialog("doover");
else if(step("4.").uresponse("complete")=="X")
page(".").step(".").dialog("undostep");
else page(".").step(".").dialog("mesh");
</lrule>
<dialog dlgid="exclude"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT COLOR="#FF0000>Step-3: (Extract Surface(s)) was not completed.
<FONT COLOR="#000000">
You must successfully complete step-3. before performing this step.<P>
Please select step-3. above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="doover"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-4: (Build Simulation Model) has already been completed.</P>
<UL><LI>
<A HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:4.;STR:undostep)">
Continuing</A> with this step also requires redoing steps 5-7 if they have been
completed</P>
<LI>
<FONT Color="#FF0000"> Otherwise<FONT Color="#000000"> select a different step
from above.
</UL>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="undostep"
inputid="null"
initftn="F:AANAV.change_C_to_X;STR:5.;
F:AANAV.change_C_to_X;STR:6.;
F:AANAV.change_C_to_X;STR:7.;
F:AASTATE.record_ur_string;STR:complete;STR:X;
F:AAUI.mainpanel_step_complete;STR:4.;STR:X;
F:AAUI.mainpanel_lock_steps;
F:AANAV.lever_step_4_undo;
F:AAI.next_dialog;STR:parklever_drive.xml;STR:4.;STR:mesh" >
<HTML></HTML>
</dialog>
<dialog dlgid="mesh"
inputid="lever_automesh"
quedlg=".#4.#st4ck1"
errordlg=".#4.#st4ck2"
initftn="F:ga_view_aa_set;R:0.;R:0.;R:0.;
F:gu_fit_view" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<CENTER><img src="seededges.png"></CENTER>
<p><FONT Color="#FF0000">Identify strut and cable areas:<FONT
Color="#000000"><p>
Main Index Please identify by screen picks, two particular edges of the lever geometry.
See the example image above.
<OL>
<LI>
<FONT Color="#FF0000">Select the first box below<FONT Color="#000000">, then
screen pick the edge where a strut reacts against the lever.
<LI>
36
<dialog dlgid="st4ck1"
inputid="null"
initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:C;
FUNC:AAUI.mainpanel_step_complete;STR:4.;STR:C;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
This step is complete. Please select your next step from the list
above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="st4ck2"
inputid="null"
initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:X;
FUNC:AAUI.mainpanel_step_complete;STR:4.;STR:X;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
Model building failed. Your selection of edges may have been incorrect.<P>
You may select and perform this step again. <P></FONT></BODY></HTML>
</dialog>
</step>
<!--
***
*** Step 5 "Strut Reaction Constraint"
***
*** -->
<uresponse>
<response name="loadaxis" type="INTEGER">
<response name="complete" type="STRING" values="C,X" readonly>
</uresponse>
<lrule ruleid="meshck">
if(step("8.").uresponse("Complete")=="C")
page(".").step("8.").dialog("exclude");
else if(step("4.").uresponse("complete")!="C")
page(".").step(".").dialog("exclude");
else if(step("5.").uresponse("complete")=="C")
page(".").step(".").dialog("doover");
else if(step("5.").uresponse("complete")=="X")
page(".").step(".").dialog("undostep");
Main Index else page(".").step(".").dialog("strut1");
</lrule>
<dialog dlgid="exclude"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT COLOR="#FF0000">Step-4: (Build Simulation Model) was not completed.
CHAPTER 2 37
Drive Pages
<FONT COLOR="#000000">
You must successfully complete step-4. before performing this step.<P>
Please select step-4. above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="doover"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-5: (Strut Reaction Constraint) has already been completed.</P>
<UL><LI>
<A HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:5.;STR:undostep)">
Continue</A> with this step</P>
<LI>
<FONT Color="#FF0000"> Otherwise<FONT Color="#000000"> select a different step
from above.
</UL>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="undostep"
inputid="null"
initftn="F:AASTATE.record_ur_string;STR:complete;STR:X;
F:AAUI.mainpanel_step_complete;STR:5.;STR:X;
F:AAUI.mainpanel_lock_steps;
F:AANAV.lever_step_5_undo;
F:AAI.next_dialog;STR:parklever_drive.xml;STR:5.;STR:strut1" >
<HTML></HTML>
</dialog>
<dialog dlgid="strut1"
inputid="lever_strut"
quedlg=".#5.#st5ck1"
errordlg=".#5.#st5ck2"
initftn="F:AASTATE.record_ur_integer;STR:loadaxis;INT:1;
F:AANAV.lever_zoom_in" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<p><FONT Color="#FF0000">Pick Strut Reaction Point:<FONT Color="#000000"><p>
Please select on the graphics screen, a point representing where the strut
reacts.
See the example image below.<P>
Finally, select the <FONT COLOR="#FF0000">"Apply Inputs"<FONT COLOR="#000000>
button.<br><p>
<CENTER><img src="strutpt.png"></CENTER><P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="st5ck1"
inputid = "null"
initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:C;
FUNC:AAUI.mainpanel_step_complete;STR:5.;STR:C;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
This step is complete. Please select your next step from the list
above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="st5ck2"
inputid = "null"
initftn="F:AAUI.mainpanel_unlock_steps;
Main Index FUNC:AASTATE.record_ur_string;STR:complete;STR:X;
FUNC:AAUI.mainpanel_step_complete;STR:5.;STR:X;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
This step failed. The screen picking must not have worked. Please try the step
again.<P></FONT></BODY></HTML>
38
</dialog>
</step>
<!--
***
*** Step 6 "Shaft Pivot Constraint"
***
*** -->
<uresponse>
<response name="complete" type="STRING" values="C,X" readonly>
</uresponse>
<lrule ruleid="femck">
if(step("8.").uresponse("Complete")=="C")
page(".").step("8.").dialog("exclude");
else if(step("4.").uresponse("complete")!="C")
page(".").step(".").dialog("exclude");
else if(step("6.").uresponse("complete")=="C")
page(".").step(".").dialog("doover");
else if(step("6.").uresponse("complete")=="X")
page(".").step(".").dialog("undostep");
else page(".").step(".").dialog("shaft1");
</lrule>
<dialog dlgid="exclude"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT COLOR="#FF0000">Step-4: (Build Simulation Model) was not completed.
<FONT COLOR="#000000">
You must successfully complete step-4. before performing this step.<P>
Please select step-4. above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="doover"
inputid="null">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-6: (Shaft Pivot Constraint) has already been completed.</P>
<UL><LI>
<A HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:6.;STR:undostep)">
Continue</A> with this step</P>
<LI>
<FONT Color="#FF0000"> Otherwise<FONT Color="#000000"> select a different step
from above.
</UL>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="undostep"
inputid="null"
initftn="F:AASTATE.record_ur_string;STR:complete;STR:X;
F:AAUI.mainpanel_step_complete;STR:6.;STR:X;
F:AANAV.lever_step_6_undo;
F:AAI.next_dialog;STR:parklever_drive.xml;STR:6.;STR:shaft1" >
Main Index <HTML></HTML>
</dialog>
<dialog dlgid="shaft1"
inputid="cyl_coord_in_circle"
quedlg=".#6.#shaft2"
errordlg=".#6.#cylerror"
CHAPTER 2 39
Drive Pages
initftn="F:AANAV.lever_zoom_in;
F:AAUI.mainpanel_lock_steps;" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Establish Cylindrical Coordinates for Pivot Action:<FONT
Color="#000000"><P>
Please screen pick the circular geometry edge(s) representing the circumference
of the shaft hole.
You may drag a box just around the hole to perform this selection.
See the example image below.<P>
Finally, select the <FONT COLOR="#FF0000">"Apply Inputs" <FONT COLOR="#000000">
button.<p><br>
<CENTER><img src="pickcircle.png"></CENTER><P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="cylerror"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
The circular edge(s) screen pick was either not selected or incorrect. Please
try again.
<DL>
<DD>
<A HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:6.;STR:shaft1)">OK</A>
</DL>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="shaft2"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Approximation for Points to Constrain:<FONT
Color="#000000"><P>
This shaft pivot simulation is an approximation.
Note that the shaft contacts only a portion of the hole in compression.<P>
A better shaft contact simulation requires a nonlinear simulation using special
gap elements.
You are invited however, to use your judgement and to specify the points that
react in compresion against the shaft.<P>
How do you want to constrain points?
<UL> <LI>
Constrain <A HREF="PCL:AAI.html_calls(FUNC:AANAV.shaft_pivot_allconstr)"> all
points </A>
on the hole circumference.
<LI>
Select <A
HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:6.;STR:shaft3;)"> particular </A> node points to constrain.
</UL></FONT></BODY></HTML>
</dialog>
<dialog dlgid="shaft3"
inputid="shaft_pivot_constr"
quedlg=".#6.#st6ck1"
errordlg=".#6.#st6ck2"
initftn="F:AANAV.lever_zoom_in" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Constrain Specific Points:<FONT Color="#000000">
<P>
Please screen pick the points to constrain as reacting against the shaft.<P>
Main Index Hold the shift key down to make successive picks.<P>
Select the <FONT COLOR="#FF0000">"Apply Inputs" <FONT COLOR="#000000">
button when all desired points are listed in the box below.<P>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="st6ck1"
40
inputid="null"
initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:C;
FUNC:AAUI.mainpanel_step_complete;STR:6.;STR:C;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
This step is complete. Please select your next step from the list
above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="st6ck2"
inputid="null"
initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:X;
FUNC:AAUI.mainpanel_step_complete;STR:6.;STR:X;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
The shaft pivot constraint application failed. Please repeat this
step.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="st6ck3"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
You must select and constrain more then one point to obtain a valid
solution.<BR>
Please choose again:
<UL> <LI>
Constrain <A HREF="PCL:AAI.html_calls(FUNC:AANAV.shaft_pivot_allconstr)"> all
points </A>
on the hole circumference.
<LI>
Select <A
HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:6.;STR:shaft3;)"> particular </A> node points to constrain.
</UL>
</FONT></BODY></HTML>
</dialog>
</step>
<!--
***
*** Step 7 "Cable Load"
***
*** -->
<uresponse>
<response name="complete" type="STRING" values="C,X" readonly>
</uresponse>
<dialog dlgid="exclude"
inputid="null">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT COLOR="#FF0000">Step-4: (Build Simulation Model) was not completed.
<FONT COLOR="#000000">
You must successfully complete step-4. before performing this step.<P>
Please select step-4. above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="doover"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-7: (Cable Load) has already been completed.</P>
<UL><LI>
<A HREF="PCL:AAI.html_calls(FUNC:AAI.next_dialog;STR:parklever_drive.xml;
STR:7.;STR:undostep)">
Continue</A> with this step</P>
<LI>
<FONT Color="#FF0000"> Otherwise<FONT Color="#000000"> select a different step
from above.
</UL>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="undostep"
inputid="null"
initftn="F:AASTATE.record_ur_string;STR:complete;STR:X;
F:AAUI.mainpanel_step_complete;STR:7.;STR:X;
F:AAUI.mainpanel_lock_steps;
F:AANAV.lever_step_7_undo;
F:AAI.next_dialog;STR:parklever_drive.xml;STR:7.;STR:cable1" >
<HTML></HTML>
</dialog>
<dialog dlgid="cable1"
inputid="lever_cable_load"
quedlg=".#7.#st7ck1"
errordlg=".#7.#st7ck2"
initftn="F:AANAV.lever_zoom_in" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<CENTER><img src="cablept.png"></CENTER><P>
<FONT Color="#FF0000">Apply the Cable Loading:<FONT Color="#000000"><P>
Please use the boxes below to specify the cable loading.
The image above shows an example -2220 Newton load application.
<OL> <LI>
Select the first box and then screen pick the load application point.
<LI>
Type X,Y,Z force components (Newtons) into the following three boxes.
<LI>
Select the <FONT COLOR="#FF0000">"Apply Inputs"<FONT COLOR="#000000"> button
when all inputs are ready.
</OL>
Please take note and use the appropriate sign for component values.
For example, a negative X-component pulls towards the left.<br>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="st7ck1"
inputid="null"
Main Index initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:C;
FUNC:AAUI.mainpanel_step_complete;STR:7.;STR:C;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
This step is complete. Please select your next step from the list
above.<P></FONT></BODY></HTML>
42
</dialog>
<dialog dlgid="st7ck2"
inputid="null"
initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:X;
FUNC:AAUI.mainpanel_step_complete;STR:7.;STR:X;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
This step failed. Note that a valid cable total load must be between 1000. and
3000. Newtons. The out-of-plane components must be less than 25% of the in-plane
value.<P>
Please try this step again with new inputs.<P> </FONT></BODY></HTML>
</dialog>
</step>
<!--
***
*** Step 8 "Evaluate"
***
*** -->
<uresponse>
<response name="complete" type="STRING" values="C,X" readonly>
</uresponse>
<dialog dlgid="exclude"
initftn="F:AAUI.mainpanel_unselect_steps;"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-8: (Evaluate) has already been completed.
Making model changes now is not allowed because this application is written as
a design check
procedure as opposed to an iterative design application.<P><BR>
If you wish start over with a different database, select the <FONT
Color="#FF0000">Quit button<FONT Color="#000000"> above.
<P> <FONT Color="#FF0000">Otherwise<FONT Color="#000000">, please select step 9
(Show Results) from above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="finish5"
inputid="null" >
Main Index <HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT COLOR="#FF0000">Step-5: (Strut Reaction Constraint) was not
completed.<FONT COLOR="#000000">
You must successfully complete steps 5.,6., and 7. before performing this
step.<P>
Please select step-5. above.<P></FONT></BODY></HTML>
</dialog>
CHAPTER 2 43
Drive Pages
<dialog dlgid="finish6"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-6: (Shaft Pivot Constraint) was not completed.
You must successfully complete steps 5.,6., and 7. before performing this
step.<P>
Please select step-6. above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="finish7"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
Step-7: (Cable Load) was not completed.
You must successfully complete steps 5.,6., and 7. before performing this
step.<P>
Please select step-7. above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="submit"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Job Submittal:<FONT Color="#000000"><P>
This step will submit the model to a MSC/NASTRAN batch process for solution,
and then automatically read in the results.<P>
Please select the "GO" hypertext link below to start the solution sequence.
<DL>
<DD><A HREF="PCL:AAI.html_calls(F:gu_fit_view;
F:AAI.next_dialog;STR:parklever_drive.xml;STR:8.;STR:st8mon;
F:AANAV.lever_submit)">
GO</A>
</DL>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="st8mon"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Please Wait. The analysis is running.<FONT
Color="#000000"><P>
If you have the Analysis Manager software installed on your machine,
then you can follow the job progress by observing the pop-up form.
When you observe the job finish, you must dismiss the pop-up form with the
"Close" button.<P>
</FONT></BODY></HTML>
</dialog>
<dialog dlgid="st8ck1"
inputid="null"
initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:C;
FUNC:AAUI.mainpanel_step_complete;STR:8.;STR:C;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
This step is complete. Please select the final results display step from the
list above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="st8ck2"
inputid="null"
Main Index initftn="F:AAUI.mainpanel_unlock_steps;
FUNC:AASTATE.record_ur_string;STR:complete;STR:X;
FUNC:AAUI.mainpanel_step_complete;STR:8.;STR:X;
FUNC:AANAV.step_wrapup">
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Error Condition:<FONT Color="#000000"><p>
Simulation Results were NOT successfully read back into the database. <P>
44
If you closed the "Analysis Manager" pop-up window and aborted the run, then
you must redo this step.
You cannot continue on and display results until you have a successful
simulation sequence.<P>
If your direct actions did not cause the failure, please contact your system
administrator to check your MSC/NASTRAN installation.</FONT></BODY></HTML>
</dialog>
<dialog dlgid="st8done"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
This Step has already been completed before. <P>
The automated analysis submittal is not allowed for a second
time.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="nodb"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
No database was found open. You are advised to quit and to start over.<P>
</FONT></BODY></HTML>
</dialog>
</step>
<!--
***
*** Step 9 "Show Results"
***
*** -->
<uresponse>
<response name="complete" type="STRING" values="C,X" readonly>
</uresponse>
<lrule ruleid="achk">
if(step("8.").uresponse("complete")=="C")
page(".").step(".").dialog("results");
else page(".").step(".").dialog("exclude");
</lrule>
<dialog dlgid="exclude"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT COLOR="#FF0000">Step-8: (Evaluate) was not completed.<FONT
COLOR="#000000">
You must successfully run the simulation before performing this step.<P>
Please select step-8 above.<P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="results"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">
<FONT Color="#FF0000">Results Display:<FONT Color="#000000"><p>
Please select the type of results display desired.
Main Index <UL>
<LI><A HREF="PCL:AAI.html_calls(FUNC:AANAV.lever_results;INT:1)">
Exaggerated </A> deformed shape.
<LI><A HREF="PCL:AAI.html_calls(FUNC:AANAV.lever_results;INT:2)">
Animation </A> of exaggerated deformation.
<LI>Von Mises <A HREF="PCL:AAI.html_calls(FUNC:AANAV.lever_results;INT:3)">
stress fringe plot.</A> <P>
CHAPTER 2 45
Drive Pages
<LI>I'm <A
HREF="PCL:AAI.html_calls(FUNC:AAUI.mainpanel_step_complete;STR:9.;STR:C;
FUNC:AANAV.step_wrapup;
FUNC:AAI.next_dialog;STR:parklever_drive.xml;STR:9.;STR:st9ck1)">
all finished </A> with displaying results.
</UL><P></FONT></BODY></HTML>
</dialog>
<dialog dlgid="st9ck1"
inputid="null" >
<HTML><BODY BGCOLOR="#FFFFFF"><FONT COLOR="#000000">Good Bye.<P>
You may close down by selecting the "Quit" button on the top of this form.
</FONT></BODY></HTML>
</dialog>
</step>
</advisor>
Main Index
46
Advisor Tag
<advisor>
Description:
Advisor is the top level element and contains optional defsteps and one or more step
elements. All drive pages are delimited by <advisor> and </advisor> tags.
Elements:
<defsteps> Optional
<step> Required
Main Index
CHAPTER 2 47
Drive Pages
Remarks:
<defsteps> elements are only made use of on the “Home” Step-1 and “nextpage” drive pages.
The Step-1 drive page is defined by the ACUMEN_APPLICATIONS environment variable. The
“nextpage” home drive page for steps 2-n is defined by the NEXTPAGE string user response
variable stored in the State Table during the execution of Step-1.
Example:
None
Defsteps Tag
<defsteps>
Description:
Defsteps contain one or more ds elements.
Elements:
<ds> Required One or more <ds> tags are required to define the steps.
Remarks:
<defsteps> elements appear on “Home” “Step-1” or “Nextpage” drive pages only.
Example:
<defsteps>
<ds stepid=”2.” steplabel = “Acquire Geometry” > </ds>
<ds stepid=”3.” steplabel = “Geometry Check, Repair” > </ds>
<ds stepid=”4.” steplabel = “Geometry Idealization” > </ds>
...
</defsteps>
Ds Tag
<ds>
Description
<ds> elements define the IDs and descriptions for analysis steps that will appear in the UI form
main step selection box.
Attributes:
stepid Required
steplabel Required
Remarks:
<ds> elements are only included within <defsteps> and </defsteps> tags.
Main Index
Example:
See example for <defsteps>.
48
Step Tag
<step>
Description:
<step> tags are used to contain the work flow description of each defined step of the
process
Attributes:
stepid Required
stephelp Implied
Elements:
<uresponse> Required
<lrule> Optional
<dialog> Optional
Remarks:
<step> tags corresponding to each step ID defined in the <defsteps> list must exist on the same
“Home” drive page. Automated link rules <lrule> or other next_dialog calls can transfer control
to sub-pages. Sub-pages are separate physical files. A “page” in this context refers to a physical
file. <step> tags must also exist on sub-pages. The step IDs used on sub-pages are arbitrary and
can differ from the IDs on the “Home” page.
The stephelp attribute to the <step> tag can reference either a local file (relative or absolute path)
or a http address. For relative path references, the home drive page directory defined by the
environment variable ACUMEN_APPLICATIONS is appended onto the beginning of the
relative path.
IMPORTANT: because of parsing issues, the format for http references needs to be
“http_//www....” instead of http://www....”.
...
</step>
...
</step>
CHAPTER 2 49
Drive Pages
...
</step>
UresponseTag
<uresponse>
Description:
Establishes a set of variables for each step tag to support the “Quick Review” functionality.
Elements:
<response> Optional A uresponse tag may contain zero to many response tags.
The response tag declares a user reponse variable as stored
in the State Table to display on the Quick Review form.
Remarks:
All user response variables that are utilized in automated link rules (within <1rule> tags) must
be listed in the <uresponse> tags.
This tag supports the “Quick Review” functionality. Note that variables may be stored in the
State Table with out listing them in <uresponse> tags.
Example:
<uresponse>
<response
name = “geomsource”
type = “STRING”
values = “ug,catia,proe”> </response>
<response
name = “thickness”
type = “REAL”> </response>
<response
name = “complete”
type = “STRING”
values = “C,X”
readonly = “yes”> </response>
</uresponse>
Main Index
50
Response Tag
<response>
Description:
The response tag is associated with a <uresponse> tag. It defines variables to display for
the “Quick Review” functionality.
Attributes:
NAME Required Name of the variable.
TYPE Required The type of the variable, which must be scalar: STRING,
REAL, INTEGER
VALUES Implied If the type is STRING, a list of values is required, separated
by comma delimiters.
READONLY Optional This attribute will prevent the user from making value
changes with the Quick Review functionality.
Remarks:
None.
Example:
See example for <uresponse>.
Lrule Tag
<lrule>
Description:
Automated Link Rules are used to allow the drive page interpreter to make automated
selections of hypertext like links and locate the correct initial dialog packet for an analysis
step.
Attributes:
ruleid Required An identifying rule ID, 8 characters maximum.
Remarks:
The only boolean operators allowed are == and !=. The current implementation does not allow
for nested IF statements, or logical operators AND or OR. Note that AND or OR logic operations
are accomplished by the IF conditional in one <lrule> block giving the destination address as
another <lrule>.
The only statements that are allowed to follow the first IF are: an address statement
page(“XXX”).step(“XXX”).dialog(“XXX”); an ELSE IF statement; or an ELSE statement. There
can be any number of ELSE IF statements.
Main Index
If a boolean match is NOT found for a link rule, the control drops down to the next <lrule> tag
or <dialog> tag found below for this step on this page.
CHAPTER 2 51
Drive Pages
Each full address destination consists of three fields. The first address field (page) is an XML
drive page file name. A file name or a full page name is allowed. The home drive page directory
as defined by the enviroment variable ACUMEN_APPLICATIONS is appended to the front of
the filename unless a slash (/) is the first character of the field. A period (“.”) is an acceptable
filename which stands for “this page” (the current drive page that contains the link rule). The
second address field (step) is a 4 character maximum step ID. A period (“.”) is also an acceptable
step ID entry which means “this step”. The third field (lrule or dialog) is a link rule or dialog
address of 8 characters maximum.
All state table variables listed in logic operations within <lrule> tags must also be listed in
<response> sub-elements to the <uresponse> tags for the respective steps. This allows the
automated link rule interpreter to determine the variable type that is used in the logic operation.
Example:
<lrule ruleid=”tagid1”>
if (step(“stepid1”).uresponse(“varname1”) == “somevalue”)
page ( “filepath”).step(“stepid2”).lrule(“tagid2”);
else if ( step(“stepid1”).uresponse(“varname2”) != 4)
page ( “filepath”).step(“stepid3”).dialog(“tagid3”);
else page(“filepath2”).step(“stepid4”).dialog(“tagid4”);
</lrule>
Dialog Tag
<dialog>
Description:
The dialog tag has required and optional attributes which support an enhanced UI
functionality. All character data assigned to attributes are delimited by quotes (“). The attribute
declarations are NOT separated by a comma delimiter. The attributes for a dialog tag can be in
any order.
Attributes:
dlgid Required The dialog id. 8 character maximum.
inputid Required The PCL Function Definitions file look up ID associated with this
dialog. 32 character maximum. An assigned value of “null” denotes
that no “Inputs Box” functionality is used, and no widgets for user
interaction will be displayed.
quedlg Optional This is the address of a queued dialog to be displayed in the “Dialog
Box” after the Apply Inputs button is selected and after the
associated “Inputs Box” referenced PCL functions are executed. The
address consists of three fields: 1) the page file, 2) the step ID, 3) the
dialog ID. Note that the # is the delimiter. A dot (.) indicates “this
one”. For example “.#.#next_dia” would indicate this file, this step,
next_dia dialog. Note that if inputid = “null” then this attribute is
not used.
errordlg Optional This is the address of a queued error message to display in the
“Dialog Box” in the case input function returns an error code after
Main Index
the “Apply Inputs” button is selected. The address consists of three
fields: 1) the page file, 2) the step ID, 3) the dialog ID. Note that the #
is the delimiter. A dot (.) indicates “this one”. For example
“.#.#errormsg” would indicate this file, this step, errormsg dialog.
52
initftn Optional This attribute is set equal to a character string representing any
number of requested PCL function calls with fixed value arguments.
The PCL calls requested by the tag are dialog precursor calls made
at the time the new dialog is displayed in the “Dialog Box”.
queftn Optional This attribute is set equal to a character string representing any
number of queued PCL function calls with fixed value arguments.
The PCL calls requested by the tag are executed after calls made by
the “Inputs Box” referenced function.
NOTE: if inputid = “null” then this attribute is not used.
NOTE: two conditions are necessary for calls under this to be
invoked; (1) inputid must not be = “null”, (2) the PCL function call
specified by inputid must return a success status, or no status
checking is called for.
exitftn Optional This attribute is set equal to a character string representing any
number of requested PCL function calls with fixed value arguments.
The PCL calls requested by the tag are executed right at the time the
dialog is exited from the “Dialog Box”.
NOTE: even if inputid=”null”, this attribute is still used. Function
calls listed under this attribute are invoked regardless of success or
failure status from any inputid listed calls.
undo Optional This attribute is set equal to a character string representing any
number of requested PCL function calls with fixed value arguments.
The PCL calls requested by the tag are executed when the user hits
the “Dialog Backup” button, and this <dialog> is displayed as a
result.
Elements:
<returnerror> Optional This element will override the errdlg attribute and more precisely
handle various return value conditions.
<HTML> Required This element will provide a text and/or graphics display to the UI
form “Dialog Box”.
Remarks:
The <returnerror> element is allowed within <dialog> tags.
Main Index
CHAPTER 2 53
Drive Pages
Example:
<HTML
Please select the CAD file from the list below.
</HTML>
</dialog>
Returnerror Tag
<returnerror>
Description:
This sub element to the <dialog> tag provides a precise way to handle different return
conditions from the execution of a PCL function associated with the “Inputs Box” functionality.
A non-zero return directs display of different dialogs depending upon the return value.
Attributes:
retvalue Required Possible integer return value from the referenced PCL function
retdlg Required Address of the <dialog> to display for this return value.
Remarks:
Any number of <returnerror> elements can be listed for the various integer return values. If the
return value is a non-zero value not covered by <returnerror> elements then the <dialog>
referenced by the errordlg attribute of the current <dialog> will be displayed. If no errordlg
attribute was listed in this case, then a default platform software supplied error message is
displayed.
Example:
See <dialog> example.
Main Index
54
Table 2-1 Standard HTML tags supported by the HTML widget (continued)
Tag Attributes Notes
DL COMPACT Definition List - Encloses a definition list block
/DL containing pairs of <DT> and <DD> tags. The
COMPACT attribute causes HView to suppress the
normal line feed between the <DT> and <DD> when
the <DT> text would not run into the <DD> start of
text.
DT none Definition Term - Used within a <DL> </DL> block,
/DT the text that follows is the definition term. Normally,
a <DD> tag follows which contains the definition
description of this term.
EM none Emphasis - causes a switch to italics.
/EM
FONT BGCOLOR=<color Changes font size and/or color. Colors may be
/FONT > specified in #rrggbb format or as color names
SIZE=<n> recognized by the font alias file. The size parameter
ranges from 1 (smallest) to 7 (largest). Size may also
have a leading sign (+/-) in which case the resulting
size is the sum of this value and basefont which
defaults to 3.
H1 H2 H3 ALIGN=CENTER Level n Heading - Switch to corresponding font as
H4 H5 H6 ALIGN=RIGHT given by the resources XcgNh1Font ... XcgNh6Font.
Headers appear on new lines with vertical space
/H1 /H2 /H3 before and after. ALIGN=CENTER causes the text to
/H4 /H5 /H6 be centered while ALIGN=RIGHT causes the text to
be right justified.
HEAD none Header Information - The text contained within is
/HEAD information regarding the document. These tags are
ignored by HView.
HR Horizontal Rule - Horizontal Rule - Draws a horizontal line. The line
/HR Draws a horizontal spans the current left and right margins.
HTML HTML Block - The HTML Block - The text between the tags is an HTML
/HTML text between the document. These tags are ignored by HView.
tags
I none Italic - causes a switch to italics.
/I
IDENT ORIGIN="<string> Identification - A CGI enhanced tag which functions
/IDENT " as a comment to identify the document that was
used to generate this HTML. See the function
Main Index XcgHViewFindIdent
IMG SRC="URL" Include Graphic image - The application callback
/IMG defined by the getImageCallback resource is called. It
must return a Pixmap which is displayed.
56
Table 2-1 Standard HTML tags supported by the HTML widget (continued)
Tag Attributes Notes
KBD none Keyboard Font - causes a switch to a fixed font.
/KBD
LI none list Item - Used within a <OL> <MENU> or <UL>
/LI block, the text that follows is a list item
Table 2-1 Standard HTML tags supported by the HTML widget (continued)
Tag Attributes Notes
TABLE BORDER Table - Specifies the definition of a table containing
/TABLE columns (<TD> and <TH> tags) and rows (<TR>
tags). The border option causes a border to be drawn
in the table.
TD NOWRAP Table Column - Begins a table column. Text within
/TD ALIGN=LEFT (def) the column is aligned as specified. The NOWRAP
attribute forces the text in the column to be on a
ALIGN=RIGHT single line.
ALIGN=CENTER
TH See TD Table Column Header - Functions exactly like <TD>
/TH except that the text is also bolded.
Main Index
58
Main Index
MSC.Acumen Author’s Guide
CHAPTER
Function Definitions Text File
3
■ Function Definitions File Overview
■ Function Definitions File Example
■ Syntax of Keywords
Main Index
68
This function definition is referenced from the inputid attribute of a <dialog> tag on a drive
page. In the following example from a drive page, ”inputid = readthickness ” is used to reference
the function definition “readthickness” defined above:
<dialog dlgid=”cad2”
inputid=”readthickness”
errordlg=.#2.#badthick”
...
</dialog>
In this example, the value assigned to the inputid attribute (inputid=”readthickness”) references
a corresponding *INPUTID entry line in the Function Definitions file (*INPUTID =
readthickness). This is how the platform software uses the Function Definitions file to determine
what PCL function to call, what the call sequence parameters are, and what widgets (and
defaults) need to be displayed to accept the inputs.
Different widget types are supported by this functionality:
Main Index
CHAPTER 3 69
Function Definitions Text File
Comment lines in the file are designated by a # character in column 1. The platform software will
accept a STRING user input value from a single displayed databox and then construct and issue
the following PCL call: AANAV.openup_nastrandb( inputstring ). The value of inputstring is
passed to the function through the databox. Note that the *INPUTID index and the *FUNCTION
name can be different. This allows the same function to be called in different ways with different
defaults, etc.
The databox is displayed with a title reading: "Type: file name". The databox accepts a single
STRING type input. Note that Multi-byte foreign language font characters are allowed only in
the display labels listed for the input widgets.
When the function (openup_nastrandb in this example) is executed, a status check is made. The
default success status is 0. The *STATUSCHECK flag signals the platform software to use the
<dialog> tag attributes: quedlg, errordlg, or <returnerror> to display the next <dialog> after this
function executes and control is returned to the drive page.
The *DYNAMIC flag signals the platform software to call the function AANAV.fil_wid() to
return a default value to display in the databox widget. This feature allows the dynamic
computation of default widget values. The author must write the 'fil_wid' function to provide
the default values in a single string array, with one string for each widget. A blank entry in the
array will indicate that the default value given in the *.def file for that widget should be used.
The *DYNAMIC functionality will support all widget types.
The *LOAD ITEM line signals the end of this PCL call specification. It is a keyword used to
indicate the end of the function call listing under a particular *INPUTID reference listing.
************************************************************************
#
************************************************************************
In this example, the databox widget accepts a single REAL value. The label which appears above
the widget is "Type: Thickness". The fixed default value is 3.
#
# Read in a part thickness value input by the user.
# Store it as a user response variable.
*INPUTID = readthickness
*CLASS = AANAV
*FUNCTION = readthickness
*DBOX =REAL,Type: Thickness,1,3.
*STATUSCHECK
*LOAD ITEM
#
************************************************************************
Two select databoxes are displayed for this function. Each one will accept a surface edge pick.
#
# Receive definitions of 2 particular brake lever edges and then
# perform automated 2D shell meshing and properties assignment.
*INPUTID = lever_automesh
*CLASS = AANAV
*FUNCTION = lever_automesh
*SDBOX =EDGE,1) Pick: Edge (Strut)
*SDBOX =EDGE,2) Pick: Edge (Cable)
*STATUSCHECK
*LOAD ITEM
#
************************************************************************
In this example, one select databox for a node and three databoxes for REAL values are
displayed. The three databoxes will have default values displayed. For novice users it is better
to display separate boxes for the separate components rather than accept an input like -2200.,0.,0.
in one single box.
#
# Apply a point load simulating the park brake lever cable attachment.
*INPUTID = lever_cable_load
*CLASS = AANAV
*FUNCTION = lever_cable_load
*SDBOX =NODE,Pick: Node Point to Load
*DBOX =REAL,Type in: X Force,1,-2200.
*DBOX =REAL,Type in: Y Force,1,0.
*DBOX =REAL,Type in: Z Force,1,0.
*STATUSCHECK
*LOAD ITEM
************************************************************************
Main Index
CHAPTER 3 71
Function Definitions Text File
The keyword *INPUTID is used to specify the function call index (cyl_coords_method1),
32-characters maximum.
*INPUTID = cyl_coords_method1
ASCII non-blank characters are required for the value listed under *INPUTID. 'null' will be the
4-character index name reserved for the case of no function call and a disabled "Apply Inputs"
action button.
************************************************************************
The keywords *CLASS and *FUNCTION are used to specify the PCL function class and
function name to call.
*CLASS = AANAV
*FUNCTION = make_cyl_coords
The PCL class name can be left blank indicating a global class function. A function name of 'null'
means to disable the "Apply Inputs" action button and display no widgets in the "Inputs Box".
************************************************************************
The keyword *STATUSCHECK is an error status checking flag. When this keyword is listed,
the integer return value is received into a global variable, and a status check is made with it.
*STATUSCHECK [=0]
The integer value flags a normal successful exit by this particular PCL function. A value of zero
(0) is the most common. If the integer value associated with normal exit is not listed on the
*STATUSCHECK line, then a value of zero is assumed.
This is an ***optional keyword***.
If *STATUSCHECK IS NOT used when the function is called:
• next dialog is quedlg no matter what (see <dialog> tag attributes)
• queftn (if listed) is invoked no matter what
If *STATUSCHECK IS used when the function is called (Encouraged!!!):
• next dialog is quedlg for success, errdlg or <returnerror> for failure
Main Index
• queftn (if listed) is invoked for success, not for failure
************************************************************************
The keyword *DYNAMIC calls the referenced function to return a default value to be displayed
in the widget. All widget types are supported by this keyword. This feature allows the dynamic
computation of default widget values.
72
The author must write the *DYNAMIC referenced function to give the default values in a single
string array, with each element of the array corresponding to a different displayed widget or
HPARAM (hard wired parameter), which in turn corresponds to a different call sequence
argument of the *INPUTID referenced PCL function. The STRING array elements are in the
order of the call sequence arguments for the particular *INPUTID referenced function. For the
listbox widget, the multiple values for default will be a single string where the individual values
are comma separated. e.g. "load case1,load case2,load case3". A blank entry in the array will
indicate that the default value given in the *.def file for that widget should be used.
For databox widgets with dynamic assignments, the following rules apply:
When a dynamic assignment is being used with a REAL or INTEGER databox, the value given
to the number of values (NumVals) in the .def file has a special meaning.
- If NumVals is defined as 0 in the .def file, any number of values can be dynamically assigned,
and the corresponding function is called with an array containing the values.
- If NumVals is set to 1 in the .def file, a single non-array value of INTEGER or REAL can be
dynamically assigned.
- If NumVals is set to a value >1 in the .def file, the platform software will check the number of
inputs received from the databox to make sure it matches the value set in NumVals.
For listbox or option menu widgets with dynamic assignments, the following rules apply:
When dynamically assigning values, the original displayed selectable label definitions are
overwritten and the item values and labels become the same thing.
Main Index
CHAPTER 3 73
Function Definitions Text File
<dialog dlgid=”dlbtest”
inputid=”dyn_test_single”
quedlg=.#1.#dlbtest1”
...
</dialog>
This is how the 4 original listbox items are defined in the .def file:
*INPUTID = dyn_test_single
*CLASS = AANAV
*FUNCTION = dyn_test_single
*LBOX = Available Options,EXTEND,4
*LBOXITEMS = 4,YES,NO,MAYBE,NEVER
*LBOXLABS = YES,NO,MAYBE,NEVER
*DYNAMIC = AANAV.new_list_single
*STATUSCHECK
*LOAD ITEM
This is how the 4new listbox items are defined in the .pcl file:
FUNCTION new_list_single(new_string)
STRING new_string[]()
/* Allocate a string array for a single string entry which will contain the 5
new values for the listbox widget which are defined below */
sys_allocate_string(new_string,50)
sys_allocate_array(new_string,1,1)
/* These are the 4 new values that will appear in the listbox widget. */
new_string(1) = “test1,test2,test3,test4”
END FUNCTION
This is the .pcl file which receives the item selected from the listbox:
FUNCTION dyn_test_single(value)
/* Although value is a STRING ARRAY, it will be receiving only one value from
the listbox */
STRING value[]()
...
END FUNCTION
Main Index
This is how the function definition in the .def file is referenced by the .xml
file:
<dialog dlgid=”dlbtest1”
inputid=”dyn_test_multiple”
74
quedlg=.#1.#st1ck1”
...
</dialog>
This is how the original widget values are defined in the .def file:
*INPUTID = dyn_test_multiple
*CLASS = AANAV
*FUNCTION = dyn_test_multiple
*TOG = Toggle, TRUE
*LBOX = Listbox Picks,EXTEND,5
*LBOXITEMS = 5,YES,NO,MAYBE,NEVER,SOMETIMES
*LBOXLABS = YES,NO,MAYBE,NEVER,SOMETIMES
*DBOX = REAL,Type: Real Value,3,1.,2.,3.
*OPT = Option Menu Picks,EXTEND,1
*OPTITEMS = 4,YES,NO,MAYBE,NEVER
*OPTLABS = YES,NO,MAYBE,NEVER
*HPARAM = REAL,7.
*DYNAMIC = AANAV.new_list_multiple
*STATUSCHECK
*LOAD ITEM
This is how the new widget values are defined in the .pcl file:
FUNCTION new_list_multiple(new_string)
STRING new_string[]()
/* Allocate a string array for the 5 string entries which will contain the new
values for the widgets */
sys_allocate_string(new_string,50)
sys_allocate_array(new_string,1,5)
/* These are the new values that will appear in the widgets */
new_string(1) = “FALSE”
new_string(2) = “list1,list2,list3,list4,list5”
new_string(3) = “100.,200.,300.”
new_string(4) = “opt1,opt2,opt3,opt4”
new_string(5) = “700.”
END FUNCTION
This is the .pcl file which receives the values from the multiple widgets:
FUNCTION dyn_test_multiple(toggle,listbox,databox,option,hparam)
INTEGER null_flag
STRING value[]()
STRING page[VIRTUAL]
STRING stepid[4]
STRING dyn_test_multiple_value[VIRTUAL]
LOGICAL toggle
STRING listbox[]()
Main Index REAL databox()
STRING option[]()
REAL hparam
...
CHAPTER 3 75
Function Definitions Text File
END FUNCTION
************************************************************************
The keyword *LOADITEM is used to specify the end of a PCL function call definition under a
specific *INPUTID listing.
Note that the type of input (datatype) can be: STRING, INTEGER, REAL. A STRING data type
results in a single VIRTUAL STRING function call argument. Multiple REAL or INTEGER initial
values (NumVals values) can be listed. If no intial value is listed, then the resulting data box will
display as initially empty. Data is extracted from widgets as a VIRTUAL STRING. PCL list
processor routines are used to evaluate the extracted data. The DboxLabel label value ONLY
may be in multi-byte foreign language characters. The label is displayed above the databox.
NumVals is the upper limit of the number of INTEGER or REAL values. For NumVals=1, a
scalar REAL or INTEGER parameter is given to the function call. For NumVals > 1, a REAL or
INTEGER ARRAY argument is given. List a value of 1 for NumVals for the case of a STRING
data type. If a dynamic assignment (*DYNAMIC) is used with a REAL or INTEGER data type,
special rules apply (please see the description for *DYNAMIC above).
TypeofSelect may be: ANY, POINT, CURVE, SURFACE,....etc. InitValue is a STRING which
may contain blanks, e.g. Curve 6. If no initial value is listed, the box will have no initial value.
The label ONLY may be multi-byte font (displayed above the databox).
Toggle Widget
*TOG = Label, InitialValue
The data type for the initial value and the value read from the widget is LOGICAL. List
InitialValue as TRUE or FALSE. The label ONLY can be multi-byte characters.
Filtermask is a STRING argument controlling file selection, e.g. '*.db'. The 5 labels for widget
Main Index display may use multi-byte font. Note that the default directory that this widget points to for
files is the user directory window that the user is running the MSC.Patran application from.
Three successive key word entries: LBOX, LBOXITEMS, LBOXLABS are required to specify a
listbox widget display. The listbox is used to obtain a STRING array output of the selected list
items. Label can be multi-byte characters. NumRows is the number of visible rows to display.
SelectType can be BROWSE, EXTEND, MULTIPLE, or SINGLE. NumItems is the number of
displayed items to select from. The actual STRING item values are listed with *LBOXITEMS.
Corresponding displayed STRING labels are listed with *LBOXLABS. The labels are often the
same as item values, but multi-byte characters are allowed for the labels only.
Three successive key word entries: OPT, OPTITEMS,OPTLABS are required to specify an option
menu widget display. The option menu is used to obtain a single STRING value in a controlled
fashion from an available list. Incorrect user typing is avoided. Label can be multi-byte. It
appears above the widget. NumRows is the number of visible rows to display SelectType can be
BROWSE, EXTEND, MULTIPLE, or SINGLE. NumItems is the number of item values to select
from. Ui_item_create is used to create the items. The actual STRING item values (names) are
listed with OPTITEMS. Corresponding displayed STRING labels are listed with OPTLABS. The
default displayed item is the first one listed under OPTITEMS. The labels are often the same as
item values, but multi-byte characters are allowed for the labels only.
Textbox Widget
*TBOX = Label, DefaultText, NumRows
The label can be composed of multi-byte characters. DefaultText is the actual text to be displayed
in the widget. The default text should NOT contain "," or "=" characters. NumRows is the total
number of rows to be displayed in the textbox widget.
where for a single value parameter, DataType is STRING, REAL, INTEGER, or LOGICAL.
CHAPTER 3 77
Function Definitions Text File
<dialog dlgid=”hparam”
inputid=”hparam_test”
quedlg=.#1.#st1ck1”
...
</dialog>
This is how the hidden parameter (*HPARAM) is defined in the .def file:
*INPUTID = hparam_test
*CLASS = AANAV
*FUNCTION = hparam_test
# User can’t see the HPARAM value, it’s passed into the function
# without a widget
*HPARAM = REAL,111.
*STATUSCHECK
*LOAD ITEM
This is how the hidden value from *HPARAM is passed into the .pcl file:
FUNCTION hparam_test(arg1)
REAL arg1
/* The value arg1 is set in the .def file by using the keyword *HPARAM. This
shows how a value can be passed into a function without the use of a widget */
END FUNCTION
VarName is the ASCII character name given to the global variable. DataType is listed as
STRING, INTEGER, or REAL. A VIRTUAL STRING variable is declared and used as the
parameter argument when a STRING type is specified. The called function will reallocate the
string.
VarName is the ASCII character name given to the global variable. DataTypeA is STRINGA,
REALA, LOGICALA, or INTEGERA. A GLOBAL variable array of type DataType and
dimension NumVals is declared and echoed to the session file before the function call is made.
Main Index
MSC.Acumen Author’s Guide
CHAPTER
Introduction to HTML
4
■ What is HTML, and why do I need to know about it for
MSC.Acumen?
Main Index
82
Main Index
CHAPTER 4 83
Introduction to HTML
An HTML document contains two distinct parts, the head and the body. The head contains
information about the document that isn’t displayed to the screen. The body contains everything
displayed as the web page.
For additional information, there are several web-based HTML training sites:
• http://www.mcli.dist.maricopa.edu/tut/index.html
• http://www.ncsa.uiuc.edu/General/Internet/WWW/HTMLPrimer.html
• http://www.cwru.edu/help/introHTML/toc.html
• http://www-pcd.stanford.edu/mogens/intro/tutorial.html
• http://archon.educ.kent.edu/Midwest/Resc/Training/educhtml/pages/htmlhome.
htm
• http://www.lakefieldcs.on.ca/dept/computers/dst-3a/introhtml/intro.htm
• http://borg.lib.vt.edu/reports/soasis-slides/HTML-Intro.html
Main Index
84
Paragraphs
The beginning of a paragraph is marked by a <p>, and ends with a </p>. Unlike word
processors, HTML doesn’t recognize carriage returns within a paragraph. All spaces, line feeds
and carriage returns are compressed into a single space when the HTML document is displayed
in a web browser.
Preformatted Text
Main Index
Use of the <PRE> tag will produce a display just as the text is formatted in the source HTML file.
For example:
<PRE>
Node ID Stress(psi)
CHAPTER 4 85
Introduction to HTML
24113, 264
35612, 675
71110, 534
</PRE>
Main Index
86
4.4 Lists
Unordered Lists (Bulleted)
An unordered list <UL> is a list of items where each item is preceeded by a bullet. The list begins
and ends with the tags <UL> and </UL>. Then, each item in the list is marked using the <LI>
tag (list item).
<UL>
<LI>Monday</LI>
<LI>Tuesday</LI>
<LI>Wednesday</LI>
</UL>
When used in a valid HTML file, the list would look like:
• Monday
• Tuesday
• Wednesday
Nested Lists
Lists can also be nested. Remember that including leading blanks in the HTML text file will make
it easier to read, but will not be displayed:
<UL>
<LI>Monday</LI>
<LI>Tuesday</LI>
<UL>
<LI>8am - 12pm</LI>
<LI>12pm - 1pm</LI>
<LI>1pm - 5pm</LI>
</UL>
<LI>Wednesday</LI>
</UL>
When used in a valid HTML file, the list would look like:
• Monday
• Tuesday
•8am - 12pm
•12pm - 1pm
•1pm - 5pm
• Wednesday
Ordered Lists (Numbered)
An ordered list <OL> is much like an unordered list, except that the list items are numbered
instead of bulleted. For example:
Main Index
<OL>
<LI>Monday</LI>
<LI>Tuesday</LI>
<LI>Wednesday</LI>
</OL>
CHAPTER 4 87
Introduction to HTML
Main Index
88
4.5 Anchors
The real power of the web is to be able to link to another document, another place in the same
document, or other type of file such as a graphic or video clip. This is done through a hypertext
link defined with an anchor tag <A> and a hypertext reference tag attribute, HREF, which
defines the function of the anchor. This example shows an anchor that points to a file called
example1.html, with “Example1” as the name of the hyperlink.
<A HREF=”example1.html”>Example1</A>
• Start the anchor with <A (you must put a space after the A)
• Specify the document to link to by entering HREF=”filename”>
• Enter the text that will be the name of the hyperlink
• Close the anchor tag /A>
Combining what we know of lists and anchors, review the following example:
<UL>
<LI><A HREF=”apples.html”>Apples</A></LI>
<LI><A HREF=”oranges.html”>Oranges</A></LI>
<LI><A HREF=”bananas.html”>Bananas</A></LI>
</UL>
This example would look like the following in a web browser, where each item would be a
hyperlink to another HTML document.
• Apples
• Oranges
• Bananas
Main Index
MSC.Acumen Author’s Guide
CHAPTER
State Table Functional Interface
5
■ State Table Overview
■ Record User Response Variable
■ Retrieve User Response Variable
■ Overwrite User Response Variable
■ General Access to the State Table
Main Index
90
Step IDs “3.” and “4.” for this application. When the very same PCL function is reused in a
different application, the Step ID value retrieved from the “meshstep” variable could be
something different like “7.”, and the value from “loadstep” might be “10.”.
Main Index
92
Description:
This function will record a REAL State Table variable called <variable_name>
associated with the current step.
Input:
STRING variable_name[128] This value specifies the name of the user response
variable.
REAL value This value specifies the value to record for the
<variable_name>.
Output:
Error Conditions:
None
Remarks:
The State Table automatically associates the variable recording with the current analysis step as
selected in the UI form main step selection box.
Example:
None.
Description:
This function will record an array State Table variable REALs called <variable_name>
associated with the current step.
Input:
STRING variable_name[12 This value specifies the name of the user response
8] variable.
INTEGER num This value specifies the number of values to store.
REAL values(num) This value specifies the values to record for the
<variable_name>.
Output:
Error Conditions:
None
Remarks:
The State Table automatically associates the variable recording with the current analysis step as
selected in the UI form main step selection box.
Main Index
Example:
None.
CHAPTER 5 93
State Table Functional Interface
Description:
This function will record an INTEGER State Table variable called <variable_name>
associated with the current step.
Input:
STRING variable_name[128] This value specifies the name of the user response
variable.
INTEGER value This value specifies the value to record for the
<variable_name>.
Output:
Error Conditions:
None
Remarks:
The State Table automatically associates the variable recording with the current analysis step as
selected in the UI form main step selection box.
Example:
None.
Description:
This function will record an array State Table variable of INTEGERs called
<variable_name> associated with the current step.
Input:
STRING variable_name[128] This value specifies the name of the user response
variable.
INTEGER num This value specifies the number of values to store.
INTEGER values(num) This value specifies the values to record for the
<variable_name>.
Output:
Error Conditions:
None
Remarks:
The State Table automatically associates the variable recording with the current analysis step as
selected in the UI form main step selection box.
Example:
Main Index
None.
94
Description:
This function will record a virtual STRING State Table variable called
<variable_name> associated with the current step.
Input:
STRING variable_name[128] This value specifies the name of the user response
variable.
STRING value[virtual] This value specifies the value to record for the
<variable_name>.
Output:
Error Conditions:
None
Remarks:
The State Table automatically associates the variable recording with the current analysis step as
selected in the UI form main step selection box.
Example:
None.
Description:
This function will record a virtual length array of virtual strings called
<variable_name> associated with the current step.
Input:
STRING variable_name[128] This value specifies the name of the user
response variable.
INTEGER num This value specifies the number of values to
store.
STRING values[virtual](virtual) This value specifies the values to record for the
<variable_name>.
Output:
Error Conditions:
None
Remarks:
The State Table automatically associates the variable recording with the current analysis step as
selected in the UI form main step selection box.
Example:
None.
Main Index
AASTATE.record_uresponse (variable_name, real_val, i_val, str_val, data_type)
CHAPTER 5 95
State Table Functional Interface
Description:
This function will record either a real, integer, or a string value associated with the
current selected analysis step. Place holder arguments are given for all 3 data types.
Only one of the values arguments is used based upon the <data_type> argument.
Input:
STRING variable_name[128]This value specifies the name of the user response
variable.
REAL real_val This value specifies the real value to record for the
<variable_name>, if the data_type = 1.
INTEGER i_val This value specifies the value to record for the
<variable_name>, if the data_type = 2.
STRING str_val[virtual] This value specifies the value to record for the
<variable_name>, if the data_type = 3.
INTEGER data_type Flag for type of data to record for the
<variable_name>. The other two values will not be
accessed.
Output:
Error Conditions:
None
Remarks:
The State Table automatically associates the variable recording with the current analysis step as
selected in the UI form main step selection box.
The application author is not expected to favor this call option because of its complexity.
Example:
None.
Main Index
96
Description:
This function will retrieve a REAL State Table variable called <variable_name>
associated with the given step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128]This value specifies the name of the user response
variable.
Output:
REAL value This value specifies the value retrieved for the
<variable_name>.
INTEGER null_flag This value specifies whether data was returned for
this variable. If null_flag = 0, then a value was
returned. If null_flag = 1 then no value was returned.
Error Conditions:
None.
Remarks:
None.
Example:
None.
Description:
This function will retrieve an array State Table variable of REALs called
<variable_name> associated with the given step. The size of the array will be
allocated by this function.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user
response variable.
Output:
INTEGER num This value specifies the number of values
returned.
REAL values(VIRTUAL) This value specifies the values retrieved for the
<variable_name>. The size of this array will be
allocated by this function.
Error Conditions:
Main Index
None.
Remarks:
None.
CHAPTER 5 97
State Table Functional Interface
Example:
None.
Description:
This function will retrieve a INTEGER State Table variable called <variable_name>
associated with the given step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user response
variable.
Output:
INTEGER value This value specifies the value to record for the
<variable_name>.
INTEGER null_flag This value specifies whether data was returned
for this variable. If null_flag = 0, then a value was
returned. If null_flag = 1 then no value was
returned.
Error Conditions:
None.
Remarks:
None.
Example:
None.
Main Index
98
Description:
This function will retrieve an array State Table variable of INTEGERs called
<variable_name> associated with the given step. The size of the array will be
allocated by this function.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user response
variable.
Output:
INTEGER num This value specifies the number of values
returned.
INTEGER values(VIRTUAL) This value specifies the values retrieved for the
<variable_name>. The size of this array will be
allocated by this function.
Error Conditions:
None.
Remarks:
None.
Example:
None.
Description:
This function will retrieve a virtual length string called <variable_name> associated
with the given step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user response
variable.
Output:
STRING value[virtual] This value specifies the value to record for the
<variable_name>.
INTEGER null_flag This value specifies whether data was returned
for this variable. If null_flag = 0, then a value was
returned. If null_flag = 1 then no value was
returned.
Error Conditions:
Main Index None.
Remarks:
None.
CHAPTER 5 99
State Table Functional Interface
Example:
None.
Description:
This function will retrieve a virtual array of virtual length strings called
<variable_name> associated with the given step. The size of the array will be
allocated by this function.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user
response variable.
Output:
INTEGER num This value specifies the number of values
returned.
STRING values[virtual](VIRTUAL) This value specifies the values retrieved for
the <variable_name>. The size of this array
will be allocated by this function.
Error Conditions:
None.
Remarks:
None.
Example:
None.
Main Index
100
Description:
This function will retrieve either a real, integer, or string value associated with a
specified analysis step. Place holder arguments are given for all three data types.
Output is written to only one of the place holder arguments depending upon the
data_type value that is returned.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user response
variable.
Output:
REAL real_val This value returns the real value if <data_type> = 1.
INTEGER i_val This value returns the integer value if <data_type>
= 2.
STRING str_val[virtual] This value returns the string value if the
<data_type> = 3.
INTEGER data_type Flag for type of data retrieved for
<variable_name>. The other two values will not be
accessed.
INTEGER null_flag This value returns whether data was returned for
this variable. If null_flag = 0, then a value was
returned. If null_flag = 1 then no value was
returned.
Error Conditions:
None.
Remarks:
The application author is not expected to favor this interface call because of its complexity. The
automated link rule processing software uses this call as the most efficient method for obtaining
values for evaluating conditionals. However, by storing state table variables to a dummy step id,
this call can be used to retrieve values from the state table without knowing the variable type.
Example:
None.
Main Index
CHAPTER 5 101
State Table Functional Interface
Description:
This function will overwrite a REAL State Table variable called <variable_name>
associated with the given step. It differs from the record_ur_real function in that the
associated analysis step ID is given explicitly as a call argument. Thus, user responses
can be recorded or overwritten for steps that are not the current assigned step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128]This value specifies the name of the user response
variable.
REAL value This value specifies the value to record for the
<variable_name>.
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a
change in status or an error.
Error Conditions:
Remarks:
None.
Example:
None.
Description:
This function will overwrite an array State Table variable of REALs called
<variable_name> associated with the given step. It differs from the record_ur_integer
function in that the associated analysis step ID is given explicitly as a call argument.
Thus, user responses can be recorded or overwritten for steps that are not the current
assigned step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user response
variable.
INTEGER num This value specifies the number of values to store.
REAL values(num) This value specifies the value to record for the
Main Index
<variable_name>.
Output:
102
Description:
This function will overwrite an INTEGER State Table variable called
<variable_name> associated with the given step. It differs from the record_ur_integer
function in that the associated analysis step ID is given explicitly as a call argument.
Thus, user responses can be recorded or overwritten for steps that are not the current
assigned step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[12 This value specifies the name of the user response
8] variable.
INTEGER value This value specifies the values to record for the
<variable_name>.
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
None.
Example:
None.
Main Index
CHAPTER 5 103
State Table Functional Interface
Description:
This function will overwrite an array State Table variable of INTEGERs called
<variable_name> associated with the given step. It differs from the record_ur_integer
function in that the associated analysis step ID is given explicitly as a call argument.
Thus, user responses can be recorded or overwritten for steps that are not the current
assigned step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user response
variable.
INTEGER num This value specifies the number of values to store.
INTEGER values(num) This value specifies the values to record for the
<variable_name>.
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a
change in status or an error.
Error Conditions:
None.
Remarks:
None.
Example:
None.
Description:
This function will overwrite a virtual length STRING called <variable_name>
associated with the given step. It differs from the record_ur_string function in that
the associated analysis step ID is given explicitly as a call argument. Thus, user
responses can be recorded or overwritten for steps that are not the current assigned
step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user
response variable.
STRING value[virtual] This value specifies the value to record for the
<variable_name>.
Main Index
Output:
104
Description:
This function will overwrite a virtual array of virtual length strings called
<variable_name> associated with the given step. It differs from the record_ur_integer
function in that the associated analysis step ID is given explicitly as a call argument.
Thus, user responses can be recorded or overwritten for steps that are not the current
assigned step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user
response variable.
INTEGER num This value specifies the number of values to
store.
STRING values[virtual](virtual) This value specifies the values to record for
the <variable_name>.
Output:
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Error Conditions:
Remarks:
None.
Example:
None.
Main Index
CHAPTER 5 105
State Table Functional Interface
Description:
This function will overwrite either a real, integer, or string value associated with a
specified analysis step. Place holder arguments are given for all three data types.
Only one of the value arguments is used based upon the <data_type> argument. This
call differs from the record_uresponse call in that the associated analysis step ID is
given explicitly as a call argument. Thus, user responses can be recorded or
overwritten for steps that are not the current assigned step.
Input:
STRING step_id[4] This value specifies the step id.
STRING variable_name[128] This value specifies the name of the user response
variable.
Output:
REAL real_val This value returns the real value if <data_type> = 1.
INTEGER i_val This value returns the integer value if <data_type>
= 2.
STRING str_val[virtual] This value returns the string value if the
<data_type> = 3.
INTEGER data_type Flag for type of data to record for the
<variable_name>. The other two values will not be
accessed.
Error Conditions:
None.
Remarks:
The application author is not expected to prefer this interface call because of its complexity.
Example:
None.
Main Index
106
Description:
This function will record dialog id as encountered. This is used to establish a work
flow history.
Input:
STRING file_name[128] This value specifies file name to the XML drive page.
If the <file_name> starts with a “/” then it is
assumed to be a full path, otherwise, the value for the
environment variable AdvisorLIB is prepended to
the file name.
STRING step_id[4] This value specifies the step id as listed on the page.
STRING dialog_id[8] This value specifies the dialog id as listed on the
page.
Output:
Error Conditions:
None.
Remarks:
The application author is not expected to use this interface call. The platform software
automatically makes this call while processing <dialog>.
Example:
None.
Description:
This function will record link rule id as encountered and processed. This is used to
establish a work flow history.
Input:
STRING file_name[128] This value specifies file name to the XML drive page.
If the <file_name> starts with a “/” then it is
assumed to be a full path, otherwise, the value for
the environment variable AdvisorLIB is prepended
to the file name.
STRING step_id[4] This value specifies the step id as listed on the page.
STRING rule_id[8] This value specifies the rule id as listed on the page.
Output:
Error Conditions:
None.
Main Index
Remarks:
The application author is not expected to make this interface call. The platform software
automatically makes this call upon processing automated link rules when the user selects an
analysis step.
Example:
CHAPTER 5 107
State Table Functional Interface
None.
Description:
This function will return the address of the previous dialog as recorded in the dialog
history of the State Table
Input:
Output:
STRING file_name[128] This value returns file name to the XML drive page.
STRING step_id[4] This value returns the step id as listed on the page.
STRING dialog_id[8] This value returns the dialog id as listed on the page.
Error Conditions:
None.
Remarks:
The application author is not expected to make this interface call. The platform software uses this
call to obtain previous dialog when the user selects the “Dialog Backup” button.
Example:
None.
AASTATE.dumphistory ()
Description:
This function will print the history of link rule IDs and dialog IDs encountered plus
the recorded user responses to a file or the history window for debug purposes.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
This call is useful for debugging purposes, or for obtaining a modeling session history of user
choices made.
Example:
None.
Main Index
108
AASTATE.store_objectives ()
Description:
This function will write the State Table in present form to the database.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
Remarks:
The application author is expected to call this function at the close of each analysis step.
Example:
None.
AASTATE.restore_oldstate ()
Description:
This function reads a previously recorded State Table from an exiting database back
into memory. The application author should call this function after re-opening an
existing database.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
Remarks:
After obtaining all State Table data and determining which steps have been completed, this
function makes the lower level function call STATEUT.nextstep_switch_on(current_step) to
automatically select the next uncompleted step and to display the first dialog of that step.
Example:
None.
Main Index
MSC.Acumen Author’s Guide
CHAPTER
User Interface Functions
6
■ Main Panel
■ Buttons
■ Dialog Box
■ Inputs Box
Main Index
112
Description:
This function will display the analysis steps in the main step selection box. It is called
by the function AAI.allsteps_display() which reads the drive pages and obtains the
information to display.
Input:
INTEGER num_steps This value specifies the number of
analysis steps to create switch items for.
STRING step_ids[4](num_steps) This value specifies the step ids or labels
for the switch items. Note: multi-byte
characters are NOT allowed for step ids.
STRING completed[1](num_steps) This value specifies whether a step is
completed or not. The single character
values will be a blank, a ‘C’ or an ‘X’
indicating “not tested yet”, “completed”,
or “completion test failed” respectively.
STRING step_names[36](num_steps) This value specifies the descriptions
assigned to the steps.
Output:
Error Conditions:
None.
Remarks:
Note that the application author is not expected to make this call. The function
AAI.allsteps_display is typically called upon completion of analysis step-1 after the
“NEXTPAGE” user response variable is recorded.
Example:
None.
AAUI.mainpanel_current_step (step_id)
Description:
This function will provide the step id label for the current step as selected on the UI
main panel. If no step is currently selected, the value returned will be the last step
that was previously selected.
Input:
Output:
STRING step_id[4] This value returns the current step id.
Error Conditions:
Main Index
None.
Remarks:
None.
CHAPTER 6 113
User Interface Functions
Example:
None.
Description:
This function will change the display of the completeness indicator for an analysis
step displayed in the main step selection box.
Input:
STRING step_id[4] This value specifies the step id that will be modified.
STRING complete[1] This value specifies the value the completion indicator
will be set to. The values “ “ (blank), “C” or “X” are
expected in normal practice.
Output:
Error Conditions:
None.
Remarks:
Note that calling this function changes the “main panel” display only. Usually an additional call
to <hypertext>AASTATE.record_ur_string (p. 94) is also made to record the completion
indicator in the State Table.
Example:
None.
AAUI.mainpanel_lock_steps ()
Description:
This function will disable the main step selection box widget so that a user cannot
make a new step selection. This is useful to force the completion of one step before
another can be selected.
Input:
Output:
Error Conditions:
None.
Remarks:
Note that a call to <hypertext>AAUI.mainpanel_step_complete (p. 113) will not successfully
change the display while steps are locked. Steps must be unlocked before changing the display.
Example:
Main Index None.
AAUI.mainpanel_unlock_steps ()
114
Description:
This function will reverse the action of the lock_steps function, enabling the main
step selection box switches to be selected. Unlocking also enables any subsequent
display change of completion indicators.
Input:
Output:
Error Conditions:
None.
Remarks:
None.
Example:
None.
AAUI.mainpanel_unselect_steps ()
Description:
This function will change the state of the main step selection box switch widget to a
null state, so that no analysis step is currently selected.
Input:
Output:
Error Conditions:
None.
Remarks:
This call is typically made as part of a step_wrapup() function at the conclusion of each analysis
step. It is also useful to call in conjunction with an error dialog that excludes the user from
executing the selected step.
Example:
None.
AAUI.switch_highlight (step_id)
Description:
This function selects a step on the UI form “main step selection box” in an automated
mode. This is a software method of selecting a step as opposed to having the user
select the step manually.
Input:
STRING step_id[4] This value specifies the step id that will be highlighted.
Main Index Output:
CHAPTER 6 115
User Interface Functions
AAUI.switch_highlight_restorer (step_id)
Description:
This function is automatically called by the platform software upon re-opening an
existing database. This function automatically selects the correct step for continuing,
and precisely the next dialog for the user to act upon.
Input:
STRING step_id[4] This value specifies the step id that will be
highlighted.
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
The application author is not expected to use this function call. The platform software
automatically invokes this call upon re-opening of an existing database. See the function
<hypertext>AAUI.switch_highlight (p. 114) for automated cycling through steps.
Example:
None
Main Index
116
6.2 Buttons
AAUI.sthelp_helpcb ()
Description:
This function will be called as part of the call back from the Help button. It will call
<hypertext>AAI.step_help_doc (p. 138) in order to display a help document in the
Browser.
Input:
Output:
Error Conditions:
None.
Remarks:
The application author is not expected to use this call.
Example:
None.
AAUI.helpdoc_display (doc_URL)
Description:
This function will display any specified HTML document available on the file system,
or display any http: URL address.
Input:
STRING doc_URL[] This value specifies the path or URL address for the
document to be displayed by the commercial browser
that is used for auxiliary display.
Output:
Error Conditions:
None.
Remarks:
This call spawns the auxiliary HTML browser display as a separate process. Once initiated there
is no further communication available to change the browser display or to close the process.
The format for the doc_URL argument can reference either a local file (relative or absolute path)
or a http address. For relative path references, the home drive page directory defined by the
environment variable ACUMEN_APPLICATIONS is appended onto the beginning of the
relative path.
IMPORTANT: because of parsing issues, the format for http references needs to be
“http_//www....” instead of http://www....”.
Example of a relative path for doc_URL:
Main Index
AAUI.helpdoc_display(“helpdocs/st2help.html”)
AAUI.helpdoc_display(“d:/testing/step_test/helpdocs/st2help.html”)
Main Index
118
AAUI.quickreview_quickcb ()
Description:
This function will post the Quick Review form to the screen. This is called as part of
the callback from the “Quick Review” button. The Quick Review form displays user
response variables from the State Table as indicated by the <uresponse> tags for each
analysis step.
Input:
Output:
Error Conditions:
None.
Remarks:
The application author is not expected to make this call.
Example:
None.
AAUI.quit_quitcb ()
Description:
This function will close down the MSC.Acumen GUI. This is called as part of the
callback for the “Quit” button.
Input:
Output:
Error Conditions:
None.
Remarks:
This call is also useful as a method to close down the application from a hyertext link selection.
This method of quitting is preferred over the MSC.Patran built-in PCL call to close down the
database and quit, because it also provides for storing the current contents of the memory State
Table to the modeling database before shutting down.
Example:
None.
Main Index
CHAPTER 6 119
User Interface Functions
AAUI.backup_backupcb ()
Description:
This function will cause the dialog to back up to the previous dialog. This call is made
as part of the callback to the “Dialog Backup” button.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
The application author is not expected to make this call.
Example:
None.
AAUI.backup_status (backup)
Description:
This function will indicate whether or not a backup action is in progress.
Input:
Output:
LOGICAL backup This value returns TRUE if the dialog backup action is
in progress, or a FALSE if a dialog backup action is not
in progress.
Error Conditions:
None.
Remarks:
A call to this function indicates whether or not the current dialog arrived at through action of the
“Dialog Backup” button. Note that functions indicated as the value of an undo attribute to the
<dialog> tag are automatically executed upon a “Dialog Backup” action. The platform software
uses this interface call to determine such backup status. As soon as the new dialog is displayed,
then a <hypertext>AAUI.notify_backup_done (p. 120) call is automatically made.
Example:
None.
Main Index
120
AAUI.notify_backup_done ()
Description:
This function will reset the backup status to FALSE, so any subsequent call to
AAUI.backup_status() will return FALSE.
Input:
Output:
Error Conditions:
None.
Remarks:
The application author is not expected to use this call.
Example:
None.
AAUI.backup_enable (on_off)
Description:
This function provides a mechanism for independent enabling and disabling of the
UI form "Dialog Backup" button. Use this function to guard against <dialog> backup
actions within a step where the workflow sequence is not designed to support a
backup.
Input:
STRING on_off[] If this value is "ON" then the “Dialog Backup” button is
enabled so that a user can select it. If this value is "OFF"
(actually any value other than "ON") then the button is
disabled so that no backup action selection is possible.
Output:
Error Conditions:
None.
Remarks:
Use of this function is recommended only as an exception to normal operation. Note that the
"Dialog Backup" button is automatically enabled upon step selection and display of the first step
<dialog>. The button is automatically disabled at the termination of a step when the
AAUI.mainpanel_unselect_steps() call is made.
Example:
Following is an example of how a call to this function which disables backups is made in the
initftn attribute of a <dialog>.
Main Index <dialog dlgid="first"
inputid="null"
initftn="FUNC:AAUI.backup_enable;STR:off"
CHAPTER 6 121
User Interface Functions
...
Main Index
122
Description:
This function will display the HTML data in the UI form dialog box widget.
Input:
STRING HTML_text[] This value specifies the HTML data in the form of
“<HTML> ....insert your text here.... </HTML>”.
Output:
Error Conditions:
None.
Remarks:
The application author is discouraged from using this lower level interface call. Please see the
<hypertext>AAI.next_dialog (p. 138) and <hypertext>AAI.dynamic_next_dialog (p. 140)
functions as methods for displaying HTML listed with “drive page” <dialog> tags.
Example:
None.
Main Index
CHAPTER 6 123
User Interface Functions
Description:
This function will display the required user input widgets in the Inputs Box and
prepare the PCL function associated with input_id. This call is made automatically by
the platform software when a new <dialog> is obtained.
Input:
STRING input_id[32] This value specifies the index id located in the function
definitions file.
Output:
Error Conditions:
None.
Remarks:
The application author is not expected to make this call.
Example:
None.
AAUI.inputs_applycb ()
Description:
This function will call the function referenced by the inputid index on the functions
definitions text file. This call is made as part of the callback to the “Apply Inputs”
button.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
The application author is not expected to make this call.
Example:
None.
Main Index
124
Description:
This function will return the value in the specified select databox that is displayed in
the UI form “Inputs” area.
Input:
INTEGER num_select_databox This value specifies which displayed select
databox to read data from. 1 for the first select
databox displayed, 2 for the second select
databox displayed, etc.
Output:
STRING vstring[VIRTUAL] This value returns the data in the specified
select databox. The memory is allocated with in
this function.
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Error Conditions:
None.
Remarks:
This is an auxiliary utility function that may be used inside of a custom PCL function that is
called by the “Apply Inputs” action. This method of obtaining data is in addition to the normal
call sequence argument value passing.
Example:
None.
Description:
This function will process data that is displayed in a select databox on the “Inputs”
area of the UI form. It will return the ids of the entities selected. It is only supported
for specific data types, like Point, Node, Element, Curve, Surface, Solid. Duplicate
entries are eliminated.
Input:
INTEGER num_select_databox This value specifies the displayed select
databox to read data from. 1 for the first select
databox displayed, 2 for the second select
databox displayed, etc.
Output:
Main Index INTEGER num_ids This value returns the number of id values
returned.
INTEGER ids(VIRTUAL) This value returns the ids. The memory is
allocated within this function.
CHAPTER 6 125
User Interface Functions
Description:
This function will process data that is displayed in a select databox on the “Inputs”
area of the UI form. It will return the global coordinate positions for either Nodes or
Points that were screen selected and displayed in a select databox.
Input:
INTEGER num_select_databox This value specifies the displayed select
databox to read data from.1 for the first select
databox displayed, 2 for the second select
databox displayed, etc.
Output:
INTEGER num This value returns the number of coordinates
returned.
REAL x_comp(VIRTUAL) This value returns the X coordinate values. The
memory is allocated within this function.
REAL y_comp(VIRTUAL) This value returns the Y coordinate values. The
memory is allocated within this function.
REAL z_comp(VIRTUAL) This value returns the Z coordinate values. The
memory is allocated within this function.
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Error Conditions:
None
Remarks:
This is an auxiliary utility function that may be used inside of a custom PCL function that is
Main Index
called by the “Apply Inputs” action. This method of obtaining data is in addition to the normal
call sequence argument value passing.
Example:
None.
126
Description:
This function will return a list of all entities associated with the parent entities that
were selected in the select databox.
Input:
INTEGER num_select_databox This value specifies the displayed select
databox to read data from.1 for the first select
databox displayed, 2 for the second select
databox displayed, etc.
STRING entity[] This value specifies the desired entity type.
The supported values are: “curve”, “elem”,
“node”, “point” and “surface”.
STRING parent[] This value specifies the general type of
entities contained by the select databox. The
supported values are: “geo”, and “elem”.
INTEGER entity_type This value specifies the element shape to filter
on when the entity is set to “elem”. Otherwise
it is ignored. See the remarks below for more
information.
Output:
STRING assoc_entities[VIRTUAL]This value returns a pick list of entities that
match the given criteria.
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Error Conditions:
None.
Remarks:
This is an auxiliary utility function that may be used inside of a custom PCL function that is
called by the “Apply Inputs” action. This method of obtaining data is in addition to the normal
call sequence argument value passing.
The input value entity_type controls which element type will be returned. This data is only used
when the entity is set to “elem”. The following table identifies the entity type for each value.:
Value Entity type
0 Any Element
1 Point Element
2 Beam Element
3 Tri Element
4 Quad Element
Main Index
5 Tet Element
6 Wedge Element
7 (not used)
8 Hex Element
CHAPTER 6 127
User Interface Functions
Example:
None.
Description:
This function will return all the entity ids associated with the parent entities in the
select databox.
Input:
INTEGER num_select_databox This value specifies the displayed select
databox to read data from.1 for the first select
databox displayed, 2 for the second select
databox displayed, etc.
STRING entity[] This value specifies the desired entity type. The
supported values are: “curve”, “elem”, “node”,
“point” and “surface”.
STRING parent[] This value specifies the general type of entities
contained by the select databox. The supported
values are: “geo”, and “elem”.
INTEGER entity_type This value specifies the element shape to filter
on when the entity is set to “elem”. Otherwise it
is ignored. See the remarks below for more
information.
Output:
INTEGER num_ids This value returns the number of id values
returned.
INTEGER ids(VITRUAL) This value returns the ids. The memory is
allocated within this function.
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Error Conditions:
None.
Remarks:
This is an auxiliary utility function that may be used inside of a custom PCL function that is
called by the “Apply Inputs” action. This method of obtaining data is in addition to the normal
call sequence argument value passing.
The input value entity_type controls which element type will be returned. This data is only used
when the entity is set to “elem”. The following table identifies the entity type for each value:
Value Entity type
0 Any Element
Main Index 1 Point Element
2 Beam Element
3 Tri Element
4 Quad Element
128
5 Tet Element
6 Wedge Element
7 (not used)
8 Hex Element
Example:
None.
Description:
This function will return the global coordinate positions for either nodes or points
associated with parent entities in the specified select databox.
Input:
INTEGER num_select_databox This value specifies the displayed select databox to
read data from.1 for the first select databox
displayed, 2 for the second select databox
displayed, etc.
STRING entity[] This value specifies the desired entity type. The
supported values are: “node” or “point”.
STRING parent[] This value specifies the general type of entities
contained by the select databox. The supported
values are: “geo”, and “elem”.
Output:
INTEGER num This value returns the number of coordinates
returned.
REAL x_comp(VIRTUAL) This value returns the X coordinate values. The
memory is allocated within this function.
REAL y_comp(VIRTUAL) This value returns the Y coordinate values. The
memory is allocated within this function.
REAL z_comp(VIRTUAL) This value returns the Z coordinate values. The
memory is allocated within this function.
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a
change in status or an error.
Error Conditions:
None.
Remarks:
This is an auxiliary utility function that may be used inside of a custom PCL function that is
called by the “Apply Inputs” action. This method of obtaining data is in addition to the normal
call sequence argument value passing.
Main Index
Example:
None.
MSC.Acumen Author’s Guide
CHAPTER
Drive Page Interpreting Functions
7
■ Introduction
■ PCL Function Descriptions
Main Index
134
7.1 Introduction
The PCL functions described below are the API utility functions for the drive page interpreter
functionality. Generally these functions obtain information from the XML “drive pages” and
make use of this information by executing referenced PCL function calls, or by displaying HTML
dialog to the user.
Main Index
CHAPTER 7 135
Drive Page Interpreting Functions
Description:
This function will execute the function or functions described by the string argument
pclcalls. This call is typically listed on an HREF anchor of HTML dialog packets. This
function will parse the argument supplied into the indicated PCL function calls with
their arguments, and then make the calls.
Input:
STRING pclcalls[] This value specifies the PCL functions and all
parameters for those functions. The format is given in
the Remarks section below.
Output:
Error Conditions:
None.
Remarks:
The ‘;’(semicolon) character partitions the STRING argument into the sub strings which are then
interpreted as function names or various types of function arguments depending upon the sub
string prefixes. Since the ‘)’ character indicates the end of the call sequence to the HTML widget
hypertext reference interpreter function, this character is NOT allowed in any string type
substring or other arguments.
The FUNC: sub string prefix signifies the start of a function call name. Parse on the “F” and “:”
characters so that F: or FN: or FUNCTION: are also valid function name prefixes
The STR: sub string prefix signifies the start of a string argument., Parse on the “S” and “:”
characters so that S: or STRING: are also valid.
The REAL: sub string prefix signifies the start of a real number argument. Parse on the “R” and
“:” characters so that R: is also valid.
The INT: sub string prefix signifies the start of an integer number argument. Parse on the “I” and
“:” characters so that I: or INTEGER: are also valid.
The LOG: sub string prefix signifies the start of a logical variable argument (TRUE or FALSE).
Parse on the “L” and “:” characters so that L: or LOGICAL: are also valid
Example:
AAI.html_calls(“FUNC:function1;STR:arg1;REAL:5.05;INT:12;FUNC:function2;LOG:TRUE;FU
NC:function3;STR:string2;FUNC:function4”)
When the AAI.html_calls function processes this particular call, the following four PCL calls
are made in sequential order:
function1(“arg1”, 5.05, 12)
function2(TRUE)
function3(“string2”)
Main Index function4()
Note: Only fixed value arguments are available to PCL calls made directly by this method.
When function calls require the user to input or change argument values, the “Input Box”
functionality is used to display the required widgets and to automatically construct the
corresponding PCL calls.
136
The intended use for AAI.html_calls is to allow PCL calls to be made from HTML anchors as
shown below:
<A HREF="PCL:AAI.html_calls(FUNC:AANAV.lever_results;INT:1)">
Exaggerated </A> deformed shape.
AAI.get_step1id (step1id)
Description:
This function will return the ID of the first analysis step. A separate, special XML
drive page exists for the first analysis step. This function reads that page and searches
for the stepid tag.
Input:
Output:
STRING step1id[4] This value returns the ID found in the step tag.
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
If this function fails to find the Step-1 XML page and the step ID from the step tag, then an error
message will be issued to the UI form Dialog Box HTML widget.
Note: The XML drive page for the first step is defined through the environment variable
AdvisorPAGE1.
Example:
None.
Main Index
CHAPTER 7 137
Drive Page Interpreting Functions
AAI.allsteps_display ()
Description:
This function will search for the <defsteps> tag on an XML page. It reads the 4
character ID and 36 character definition of steps for all analysis steps. It obtains the
step completion indications from the STATE TABLE. It calls the
AAUI.mainpanel_include_steps function to cause a display of the steps on the Main
Panel.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Error Conditions:
None.
Remarks:
A call to this function is typically made upon completion of the first analysis step on the separate
step-1 “drive page”. Step-1 determines the particular analysis type that the user will undertake,
and assigns a “nextpage” user response variable to the State Table pointing to the “home drive
page” file for all subsequent steps.
Example:
None.
AAI.init_step_dialog ()
Description:
This function will read the XML solution sequence page and follow the automated
link rules to select the correct initial dialog for a selected step. This function is called
by the user interface model in response to a user selecting an analysis step.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Error Conditions:
None.
Remarks:
Main Index This call is automatically made by the platform software when an analysis step is selected from
the main panel. Application authors are not expected to call this function directly.
Example:
None.
138
AAI.step_help_doc ()
Description:
This function will display the supplemental HTML help document associated with
the current operational analysis step, if one is specified, by launching the
MSC.Acumen BROWSER application.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Error Conditions:
None.
Remarks:
This function is called automatically as a result of selecting the “Help” button. It will display
only the document defined by an attribute to the <step> tag. Please see the
<hypertext>AAUI.helpdoc_display (p. 116) call for displaying alternative HTML documents
with a pop-up commercial browser.
Example:
None.
Description:
This function will read the XML page file, extract the HTML dialog called for, and
feed it to the UI Dialog Box HTML widget. The dialog is selected by direct reference
to the page “filename”, the step tag ID on that page file “filestep”, and the dialog tag
ID within the step tag “dialog_id”. No automated link rules are followed to get to the
dialog.
Input:
STRING filename[128] This value specifies the name of the XML file. If
the first character is a ‘/’, it is a full path,
otherwise it is a relative path from the
AdvisorLIB environment variable path.
STRING filestep[4] This value specifies the step ID.
STRING dialog_id[8] This value specifies the dialog ID.
Output:
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Main Index
Error Conditions:
None.
Remarks:
CHAPTER 7 139
Drive Page Interpreting Functions
This call is the mechanism used to arrive at a subsequent HTML dialog upon user selection of a
hypertext link. It supports all “background” PCL calls listed as attributes to a <dialog> tag.
When widgets are displayed for a dialog, the “quedlg” or “errordlg” attributes to the <dialog>
tag automatically point to the next HTML dialog. This function is automatically called in that
case. Note the general nature of this call allows for the creation of sub-pages for common or
complex processes.
Example:
None.
Main Index
140
Description:
This function will find and display HTML dialog and handle function calls associated
with the referenced <dialog> tag. In addition, this call appends the HTML contained
in the “htmlstring” argument to the front of the any HTML found in the referenced
“drive page” dialog. The <HTML> </HTML> tags from the two sources are
consolidated into one set bounding the total constructed dialog. This call enables the
dynamic construction and display of HTML dialog from automation functions. The
dialog may present information that was obtained through recent computations. To
use double quotes, “, within a PCL string that is being passed, two double quotes , ““,
are used and will be converted to one double quote within the string. See example
below.
Input:
STRING htmlstring[] This value specifies dynamically generated
HTML data to append in the front of any fixed
HTML contained in the referenced <dialog>
tag.
STRING filename[128] This value specifies the name of the XML file. If
the first character is a ‘/’, it is a full path,
otherwise it is a relative path from the
AdvisorLIB environment variable path.
STRING filestep[4] This value specifies the step ID.
STRING dialog_id[8] This value specifies the dialog ID.
Output:
INTEGER <Return Value> This function returns a value of 0 when
executed successfully and a non zero value to
indicate a change in status or an error.
Error Conditions:
None.
Remarks:
The intended use for this function is calls from an automation function as opposed to referenced
calls on “drive page” hyperlinks or tag attributes.
Example:
This is an example of how to use double quotes within a PCL dynamic string definition:
htmlstring=”<HTML><BODY BGCOLOR=””#FFFFFF””><FONT COLOR=””#FF0000””>” // @
“<P>You have selected the material: “ // mat // ”</FONT></P></HTML>”
AAI.dynamic_next_dialog(htmlstring,page,stepid,”finish”)
Main Index
CHAPTER 7 141
Drive Page Interpreting Functions
AAI.queued_dialog ()
Description:
This function will display the next dialog HTML packet in the UI form Dialog Box
associated with the quedlg argument for the current dialog.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
This call is automatically made by the MSC.Acumen platform software as a consequence of
selecting the “Apply Inputs” button. The application author is not expected to use this call.
Example:
None.
AAI.queued_msg ()
Description:
This function will display an error condition warning dialog HTML packet in the UI
form Dialog Box. It is called when user inputs to the Inputs Box result in an error
return value.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
This call is automatically made by the MSC.Acumen platform software as a consequence of
selecting the “Apply Inputs” button. The application author is not expected to use this call.
Example:
None.
Main Index
142
AAI.queued_ftn ()
Description:
This function will execute optional supplemental PCL function calls as requested
through the queftn argument in the dialog tag.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change in
status or an error.
Error Conditions:
None.
Remarks:
This call is automatically made by the MSC.Acumen platform software as a consequence of
selecting the “Apply Inputs” button. The application author is not expected to use this call.
Example:
None.
AAI.initiate_ftn ()
Description:
This function will execute optional supplemental PCL function calls as requested
through the initftn argument in the dialog tag.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
This call is automatically made by the MSC.Acumen platform software as a consequence of
navigation to a “drive page” <dialog> tag. The application author is not expected to use this call.
Example:
None.
Main Index
CHAPTER 7 143
Drive Page Interpreting Functions
AAI.exit_ftn ()
Description:
This function will execute optional supplemental PCL function calls as requested
through the exitftn argument in the dialog tag.
Input:
Output:
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
None.
Remarks:
This call is automatically made by the MSC.Acumen platform software as a consequence of
selecting the “Apply Inputs” button or through navigating to the next dialog through an
AAI.next_dialog call. The application author is not expected to use this call.
Example:
None.
Main Index
144
Main Index
MSC.Acumen Author’s Guide
CHAPTER
General Utility Functions
8
■ Introduction
■ PCL Function Descriptions
Main Index
146
8.1 Introduction
The few PCL functions described below perform general tasks useful to authoring MSC.Acumen
applications such as converting drive pages to an indexed form for operations, and retrieving
environment information.
Main Index
CHAPTER 8 147
General Utility Functions
Description:
This function serves as a PCL environment interface to the utility function that
compiles or indexes XML “drive pages” for more efficient reading by the
MSC.Acumen software. The first argument references a source file with the .xml file
extension. The second argument names the output indexed file with a .xio file
extension. It is convenient for application authors to invoke this call from full
featured MSC.Patran by typing it into the command line.
Input:
STRING source_page[ ] This is a string representing the name of the XML
drive page source file, for example,
“model1.xml”
STRING converted_page[ ] This is a string representing the name of the
indexed or converted drive page, for example,
“model1.xio”
Output:
An indexed .xio file is written out.
Remarks:
ALTERNATIVE METHOD - acumen_drive_page_trans.exe
In addition to the PCL call that converts or indexes drive pages, a stand-alone executable
function is available to perform the conversion. The executable code is delivered with
"application_core" directory of a MSC.Acumen installation. The name given is
"acumen_drive_page_trans.exe".
On a windows NT platform, this executable is invoked via a DOS command in a DOS window.
On UNIX, the command is typed into the command window.
Following is an example of the command invoking the stand-alone drive page converter from
the DOS prompt:
>acumen_drive_page_trans.exe placeholder filename.xml
where
If the translation was successful, the “Translator return value” will be “0”. The output file name
will always have the .xio extension.
148
Description:
This function will retrieve the ACUMEN_APPLICATIONS directory and home drive
page file name values. This function will also verify that the named directory and file
exist.
Status: Public
Input:
None.
Output:
STRING s_acumen_app [ 1024 ]
This argument will return the
ACUMEN_APPLICATIONS directory value.
STRING s_acumen_master [ 1024 ]
This argument will return the body of the home drive
page file name defined by the
ACUMEN_APPLICATIONS environment variable.
STRING s_acumen_ext [ 1024 ]
This argument will return the extension of the home
drive page file name defined by the
ACUMEN_APPLICATIONS environment variable.
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
This function may return a nonzero value if an error occurs.
This function will retrieve and display to the user any error messages associated with an error
value.
The error value will be returned for flow of control purposes. Any errors that occur will be
reported directly to the user through the user interface.
This environment variable provides the path and file name for the home drive page of a user
developed MSC.Acumen application.
Main Index
CHAPTER 8 149
General Utility Functions
aa_env.ret_acumen_brw (s_acumen_brw)
Description:
This function will retrieve the acumen_browser directory and file name value. This
function will verify that the named directory and file exist.
Status: Public
Input:
None.
Output:
STRING s_acumen_brw [ 1024 ]
This argument will return the path and filename of
the browser application used to display MSC
Acumen application help messages.
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a
change in status or an error.
Error Conditions:
This function may return a nonzero value if an error occurs.
Remarks:
Main Index This function will call code to retrieve and display to the user any error messages associated with
an error value.
The error value will be returned for flow of control purposes. Any errors that occur will be
reported directly to the user through the user interface.
150
The acumen_browser value will be retrieved every time this function is called, allowing the
corresponding value to be changed "on the fly". Please see the description for the PCL function
set_acumen_brw ( )
This environment variable provides the path and file name for the executable used to display
help pages for a user developed MSC.Acumen application.
Example:
aa_env.ret_acumen_home (s_acumen_home)
Description:
This function will retrieve the acumen_home directory value and will check for the
existance of the directory used to contain the MSC Acumen core shared component.
Status: Public
Input:
None.
Output:
STRING s_acumen_home [ 1024 ]
This argument will return the current acumen_home
value.
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
This function will return a nonzero value if an error occurs.
Remarks:
This function will call code to retrieve and display to the user any error messages associated
with an error value.
The error value will be returned for flow of control purposes. Any errors that occur will be
reported directly to the user through the user interface.
The acumen_home value will be retrieved every time this function is called, allowing the
corresponding value to be changed "on the fly"..Please see the description for the PCL function
set_acumen_home ( ).
All core .plb and status message files will be placed directly in the acumen_home directory. It is
assumed that the status message file will have the name "aa_message_core.dat".
The default acumen_home value will be retrieved from the environment variable
"ACUMEN_HOME". If the "ACUMEN_HOME" environment variable 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.
The directory used to contain the MSC Acumen core shared component is <acumen_home>/lib
on UNIX platforms, or <acumen_home>/bin on Windows NT.
Main Index
The acumen_home will be retrieved every time this function is called, allowing the
corresponding environment variable to be changed "on the fly". Please see the description for
the PCL function set_acumen_home ( ).
CHAPTER 8 151
General Utility Functions
Example:
aa_env.ret_acumen_int ( s_acumen_int )
Description:
This function will retrieve the acumen_interface value
Status: Public
Input:
None.
Output:
STRING s_acumen_int This argument will return the path and filename of
[1024 ] the browser application used to display MSC
Acumen application help messages.
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a change
in status or an error.
Error Conditions:
This function may return a nonzero value if an error occurs.
Remarks:
This function will call code to retrieve and display to the user any error messages associated
with an error value.
The error value will be returned for flow of control purposes. Any errors that occur will be
reported directly to the user through the user interface.
The acumen_interface value will be retrieved every time this function is called, allowing the
corresponding value to be changed "on the fly"..Please see the description for the PCL function
set_acumen_int ( ).
Currently MSC Acumen will accept either ENABLE or DISABLE for the acumen_interface
value.
Example:
Main Index
152
Description:
This function will validate the existance of file with either no path, a partial path, or a
full path really exists.
Status: Public
Input:
STRING s_src_path_file [ 1024 ]
This value contains a file name with either no path,
a partial path, or a full path
Output:
STRING s_trg_path_file [ 1024 ]
This value returns a string representing the path
used for the test.
INTEGER <Return Value> This function returns a value of 0 when executed
successfully and a non zero value to indicate a
change in status or an error.
Error Conditions:
This function may return a nonzero value if an error occurs.
Remarks:
This function will check the input string for the following condition:
1. The first character is either a UNIX style “/” or a WINNT style”\”.
2. The second character is a colon (“:”).
If either one of these conditions is meet, it will be assumed that the input string represents a full
path.
If neither of these conditions are met, it will be assumed that the path is relative to the
ACUMEN_APPLICATIONS directory.
The error value will be returned for flow of control purposes. Any errors that occur will be
reported directly to the user through the user interface.
Example:
Main Index
I N D E X
MSC.Acumen Application Author’s Guide
I N D E X
MSC.Acumen
Application
Author’s Guide A 105
AASTATE.overwrite_uresponse, 106
Authoring PCL AASTATE.record_ur_integer, 93
AAI.allsteps_display, 137 AASTATE.record_ur_integerarray, 93
AAI.dynamic_next_dialog, 140 AASTATE.record_ur_real, 92, 147
AAI.get_step1id, 136 AASTATE.record_ur_realarray, 92
AAI.html_calls, 135 AASTATE.record_ur_string, 95
AAI.init_step_dialog, 137 AASTATE.record_ur_stringarray, 95
AAI.next_dialog, 138 AASTATE.record_uresponse, 96
AAI.step_help_doc, 138 AASTATE.restore_oldstate, 110
AASTATE.dumphistory, 108 AASTATE.store_objectives, 110
AASTATE.get_ur_integer, 98 AAUI.backup_enable, 121
AASTATE.get_ur_integerarray, 99 AAUI.backup_status, 120
AASTATE.get_ur_real, 97 AAUI.helpdoc_display, 117
AASTATE.get_ur_realarray, 97 AAUI.mainpanel_currentstep, 112
AASTATE.get_ur_string, 99 AAUI.mainpanel_include_steps, 112
AASTATE.get_ur_stringarray, 100 AAUI.mainpanel_lock_steps, 113
AASTATE.get_uresponse, 101 AAUI.mainpanel_step_complete, 113
AASTATE.overwrite_ur_integer, 103 AAUI.mainpanel_unlock_steps, 114
AASTATE.overwrite_ur_integerarray, AAUI.mainpanel_unselect_steps, 114
104 AAUI.quit_quitcb, 119
AASTATE.overwrite_ur_real, 102 AAUI.selectdatabox_assread_coords,
AASTATE.overwrite_ur_realarray, 102 130
AASTATE.overwrite_ur_string, 104 AAUI.selectdatabox_assread_ids, 129
AASTATE.overwrite_ur_stringarray, AAUI.selectdatabox_assread_raw, 128
AAUI.selectdatabox_read_coords, 126
AAUI.selectdatabox_read_ids, 125
AAUI.selectdatabox_read_raw, 125
AAUI.switch_highlight, 115
AAUI.switch_highlight_restorer, 115
Main Index
INDEX 154
H
HTML
<advisor>, 51
<defsteps>, 53
<dialog>, 58
<ds>, 53
<lrule>, 57
<response>, 57
<returnerror>, 61
<step>, 54
<uresponse>, 55
Standard HTML tags supported, 62
N
Not Recommended for Authors
AAI.exit_ftn, 143
AAI.initiate_ftn, 142
AAI.queued_dialog, 141
AAI.queued_ftn, 142
AAI.queued_msg, 141
AASTATE.previous_dialog, 108
AASTATE.record_dialog, 107
AASTATE.record_lrule, 107
AAUI.backup_backupcb, 120
AAUI.dialog_put_text, 123
AAUI.inputs_applycb, 124
AAUI.inputs_refresh, 124
AAUI.notify_backup_done, 121
AAUI.quickreview_quickcb, 119
AAUI.sthelp_helpcb, 117
Main Index