Você está na página 1de 41

Automating Pro/ENGINEER

No programming skills nor money required

Olaf Corten

Fico BV

This presentation

Why Automate? Which solutions are available? Focus on free solutions with no programming knowledge needed
Mapkeys, trailfiles, Pro/BATCH
3rd party tools: ProTrail and sBatch

Installation Usage Examples

Why Automate?

Customize and extend the Pro/ENGINEER user interface with seamlessly embedded custom processes Integrate expert systems and knowledge-based applications into the Pro/ENGINEER environment Create automated, single-use, or derived designs by external manipulation of geometric and parametric constraints Improve product quality with design rule verification based on inputs from external solutions

Perform tedious, routine, time-consuming and computeintensive tasks

Creating deliverables (plotfiles, cadfiles, BOMs, massproperties, images, renderings)

How can we automate?

The sky is the limit. It all depends on the tools you use
Pro/Toolkit (C/C++ library) J-Link (Java) - Free Automation Gateway (Visual Basic, VBA, C, etc) Pro/Web.Link (HTML and Javascript) - Free Pro/BATCH - Free Built in tools like: Trailfiles & Mapkeys

3rd party tools like:

sBatch ProTrail


Tool with graphical UI to Export 2D & 3D formats Free Scheduler No PDM Integration

Pro/BATCH - Usage

Make shortcut to [proloadpoint]\bin\pro_batch.bat and set startup folder to where you want to run it. Select the files you want to process Select the action you want to do

Name your batchfile and enter which ProE startup command to use (normally proe1.bat)
Save the batchfile Now run it (or schedule it) Starts ProE with cmdline options: 0 0 3 pro_wait -batchfile [path]\[batchfile]

Pro/BATCH - Demo
Create DXFs from a few drawings

Built in functions of ProE

Mapkeys Running trailfiles


Building your mapkeys

Set following config.pro options:

CMDMGR_TRAIL_OUTPUT YES puts internal ProE commands in trailfile instead of menu dependant commands
~ Command `ProCmdModelSaveAs`

vs. ~ Activate `main_dlg_cur` `File.psh_save_as`

TRAIL_DIR C:\TEMP make sure your trailfiles are always on a local drive

Building your mapkeys

Use built in mapkey recorder Tools -> Mapkeys -> New or Get the commands from session trailfile Copy them to config.pro mapkey xxx [commands] Pick carefully Dont make screen selections (unless you want to create a trailfile) If you need to select something Use the Find Tool

Building your mapkeys

Continue mapkeys on a new line by ending previous line with ;\

Start new line with mapkey(continued). (not really necessary) E.G.

mapkey fsdxf ~ Activate `main_dlg_cur` ` ProCmdModelSaveAs `;\ mapkey(continued) ~ Select `file_saveas` `type_option` \ mapkey(continued) 1 `db_137`;\ mapkey(continued) ~ Activate `file_saveas` `OK`;\ mapkey(continued) ~ Activate `export_2d_dlg` `OK_Button`

Building your mapkeys

You can put ProE continuation lines on one line as long as they dont exceed the line length. Maximum line length = 98 characters (incl. backslash) E.G. ~ Select `file_saveas` `type_option` \ 1 `db_137` Change into: ~ Select `file_saveas` `type_option` 1 `db_137`

Building your mapkeys

Add description to your mapkey:

@MAPKEY_LABEL to give your mapkey a name @MAPKEY_NAME to give your mapkey additional info

TIP: Always end this with the mapkey in brackets e.g. (mapkey fadxf)

mapkey xxx @MAPKEY_LABELName of the mapkey;\ mapkey(continued) @MAPKEY_NAMEName and action (mapkey xxx)

Building your mapkeys

Cleaning up the mapkey

Remove all lines starting with exclamation mark E.G.
~ Activate `export_2d_dlg` `OK_Button` ! Message Dialog: Warning ! : The file d:\36065.dxf already exists, continue anyway? ~ Activate `UI Message Dialog` `ok`

Building your mapkeys

Cleaning up the mapkey

Remove unnecessary consecutive Open/ Select and Close lines: E.G.
~ Select `main_dlg_cur` `MenuBar1` \ 1 `File` ~ Close `main_dlg_cur` `MenuBar1` ~ Activate `main_dlg_cur` ` ProCmdModelSaveAs ` and ~ Open `file_saveas` `type_option` ~ Close `file_saveas` `type_option` ~ Select `file_saveas` `type_option` \ 1 `db_137`

Building your mapkeys

Type in full path vs browsing
~ Select `file_saveas` `ph_list.Filelist` 1 `Data` ~ Activate `file_saveas` `ph_list.Filelist` 1 `Data` ~ Select `file_saveas` `ph_list.Filelist` 1 `PTC` ~ Activate `file_saveas` `ph_list.Filelist` 1 `PTC` ~ Select `file_saveas` `ph_list.Filelist` 1 `Work` ~ Activate `file_saveas` `ph_list.Filelist` 1 `Work` ~ Activate `file_saveas` `ok` vs ~ Update `file_saveas` `opt_EMBED_BROWSER_TB_SAB_LAYOUT` \ `d:\\data\\ptc\\work` ~ Activate `file_saveas` `opt_EMBED_BROWSER_TB_SAB_LAYOUT` ~ Activate `file_saveas` `ok`

Building your mapkeys

Nesting mapkeys:
Create nested mapkeys by calling other mapkeys with the percent sign. E.G.
mapkey fsa @MAPKEY_LABELSave As;\ mapkey(continued) @MAPKEY_NAMESave As (mapkey fsa);\ mapkey(continued) ~ Activate `main_dlg_cur` ` ProCmdModelSaveAs `
mapkey fsdxf @MAPKEY_LABELSave As DXF;\ mapkey(continued) @MAPKEY_NAMESave As DXF (mapkey fsdxf);\ mapkey(continued) %fsa;\ mapkey(continued) ~ Select `file_saveas` `type_option` 1 `db_137`;\ mapkey(continued) ~ Activate `file_saveas` `OK`

Building your mapkeys

Use old Parameter UI With the config.pro option NEW_PARAMETER_UI NO.


Building your mapkeys - Demo

Create mapkey to export dxf to folder on disk

Building your trailfiles

Use same approach as creating mapkeys

Start trail file with 2 line header
!trail file version No. 1400 !Pro/ENGINEER TM Wildfire 4.0 (c) 2009 by Parametric Technology Corporation All Rights Reserved.

Put every command on one line

Create environment variable CONTINUE_FROM_OOS = 1
to prevent ProE from crashing when running a trailfile EG:
!trail file version No. 1400 !Pro/ENGINEER TM Wildfire 4.0 (c) 2009 by Parametric Technology Corporation All Rights Reserved. ~ Activate `main_dlg_cur` ` ProCmdModelSaveAs ` ~ Update `file_saveas` `opt_EMBED_BROWSER_TB_SAB_LAYOUT` `d:\\data\\ptc` ~ Select `file_saveas` `type_option` 1 `db_137` ~ Activate `file_saveas` `OK` ~ Activate `export_2d_dlg` `OK_Button` ~ Activate `UI Message Dialog` `ok`


Graphical utility to run your own mapkeys Free Uses J-Link By USG Innotiv (Martein Schuttert) Builds one large mapkey from selected mapkeys and runs it on your files


Download from: http://www.usginnotiv.nl/13855/default.aspx

www.USGInnotiv.nl > 1st Tab > Divisies > Product Development > sTools

Link to download page with password will be mailed

Also other tools:



Probably need to add the .zip extension to downloaded files

sBatch v3.2

Creates one large mapkey and adds a button configured to run this mapkey to your config.win

Then runs a trailfile which presses this button

Can connect to Intralink 3.x Workspace Supports R2001, Wildfire & Wildfire 2.0

sBatch v4.0 (beta)

Uses asynchronous J-Link connection Supports 64-bit Supports Pro/ENGINEER Wildfire 4 Supports Windchill Workspace
Intralink 3.x

Windchill PDMLink/ProjectLink 8.0

Windchill PDMLink/ProjectLink 9.x

Supports non-graphics mode

Improved installlation (detects Pro/E and OS version)

sBatch v4.0 Installation

C:\Program Files\USG Innotiv sBatch Finds your latest Wildfire version (up to v4.0) Configure PDM integration

PDMLink 9,8 or 7 and/or ProjectLink 9,8 or 7 Intralink 3.x

Desktop icon

sBatch Installation

Creates c:\windows\sbatch.ini (to hold installation paths) Creates \.usginnotiv\sbatch.conf in your %USERPROFILE% (holds sBatch config. Can be updated from sBatch) sBatch looks for config.pro in [proeloadpoint]\text

Running sBatch

Start sBatch Add Files to process

Select mapkeys to run List is alphabetical

TIP: Create shortcuts to often used mapkeys at the top Choose execution method and select run Connects to current Pro/E session or starts a new one

sBatch Demo
Create 300dpi jpegs with a white background specified models shaded in the DEF_1 orientation.

Use mapkeys
vv1 - Set View to DEF_1 vs - Shade faj3 - Create 300dpi jpg with white background


Runs predefined tasks on selected files Creates a large trailfile and runs it with ProE Runs in the background Does error checking when the task is finished Written by me in C++ DOS Commandline utility


Download from:

www.ProESite.com > Utilities > ProTrail


Can connect to Intralink 3.x workspace

In most cases upwards compatible because running trailfiles is often upwards compatible as well.


Predefined tasks
Export several 2D and 3D formats Create images Explode, unexplode

Run Global interference, Massprops

Set units, assign or unassign material Import files Regenerate, save, add timestamp Check ProE version

ProTrail Installation

One executable Just put it somewhere in your PATH.

Create folder c:\Utilities Copy protrail.exe to this folder Add folder c:\Utilities to your PATH

Synchronize TEMP variable with config TRAIL_DIR e.g. C:\TEMP

Running ProTrail

You start ProTrail from a DOS prompt

Use commandline arguments to drive it Tip: Install DosHere (or Command Prompt Here) Shell extension. It enables you to quickly open a DOS prompt in a folder from Explorer.

Running ProTrail

Type protrail h to get help

Use dontrun option to test

Running ProTrail

File Selection:

Wildcards *.*, etc. -drw, -prt, -asm, -lay, -models -i inputfile -num (objects with numerical names: e.g. 12345.prt

-foreground, -pause, -dontexit, -dontrun -cmd -v (version)

Running ProTrail


Jpg, tiff Dxf, dwg, pdf Iges, Step, set, stl, productview, shrinkwrap
print (to printername) several other plot related options Intralink 3.x options

-ws, -local, -ilink Needs PDM_LDB_PATH variable

Running ProTrail


-save -view, -shade -regen -unit, -(un)assign -verify, -famtab, -instsave -(un)explode, -interference, -massprops -trail

Running ProTrail

protrail e dxf e pdf drw Create dxf and pdf files of all sheets on all drawings protrail bgw e jpg dpi 300 view DEF_1 shade models 36* Set background to white and create 300dpi jpegs of the DEF_1 shaded view of all models starting with 36 in their name protrail ws WORK unit mmNs assign aisi_316.mat regen save prt In Workspace WORK set all parts to mmNs units, assign material aisi_316, regenerate and save

Running ProTrail

protrail unexplode interference asm -e step Open all assemblies, unexplode them, do an Interference check and export to step

protrail famtab models Save FamilyTable file of all generic models.

protrail import dxf -save Import all dxfs and save as a ProE drw (also checks dxf format size)

Thanks for your attention