Saturday, March 22, 2008

What is CATIA Customization? - Know About Macros & Examples

CATIA Customization and Automation

What is Customization?

Create Application

  • Automate Design Best Practices
  • Define some new User Interface
  • Create new interface for repetitive tasks
  • Client/Organization/Customer level Validation

Extend the V5 PPR

  • Enrich the V5 Data Model

Connect an External application to V5

CATIA V5 Automation And Customization Approaches

Macros / .CATScripts

  • Free, Rapid Deployment, Easy to Reuse Recorded macros, Limited Flexibility, Difficult to Debug

VBA / .CATvba

  • Free, Graphical User Interface (Forms), Editor Provides Debugging Capability


  • Runs Outside of CATIA, Increased Implementation of Components and Type Libraries, Individual Module Files Makes Collaboration and Sharing Code Easier

CAA (Component Application Architecture)

  • More Powerful and Faster than VB, Harder to Learn, Provides Access to Interfaces Not Currently Available to Visual Basic

Following is the pictorial representation of Automation tiers in CATIA.


Native CATIA includes:

  1. Parameters, Formulae, Design Tables
  2. Templates, Power Copies

CATIA Knowledgeware

  1. Knowledge Advisor (KWA)
  2. Knowledge Expert (KWE)
  3. Product Engineering Optimizer (PEO)
  4. Product Knowledge Template (PKT)

Visual Basic

  1. VBScript and CATScript - the Quick method
  2. VBA – A Script Created in MSDev Environment
  3. Visual Basic 6.0 - Simplest Object Oriented Approach
  4. Visual Studio.Net - Up and Coming Approach


  1. C++ - The Primary language
  2. Java - Supported but not as common

Why Automation/Scripting/Knowledgeware?

  • Intellectual Capital & Knowledge Management
  • Cost Reduction
  • Improved Efficiencies
  • Improved quality through Standardization
  • Provide additional functionality not provided in native products
  • Manipulate existing function to better fit customer processes

Differences between VBScript, VBA, Visual Basic and CAA

VBScript (Visual Basic Script) is a subset of VBA

  • Simple interpreted Basic language
  • Can call CATIA Objects
  • No type is used. The system tries dynamically to call methods and properties of objects

VBA (Visual Basic for Applications) is a subset of Visual Basic

  • VBA is hosted in applications such as Word, Excel or CATIA
  • It provides a complete environment with an Editor, a debugger, a Help Object Viewer and Completion
  • Allows to declare the object library used.

Visual Basic (VB) is the full version

  • It can generate independent programs
  • It can also create ActiveX and Servers
  • It can be compiled

CAA (Component Application Architecture)

  • Single source code for both WINDOWS and UNIX
  • New wizards like workbenches, interactive commands, dialog boxes etc., can be created
  • Add new data and behaviors on an existing feature without overloading standard behaviors
  • No specific Run time license is required

CATIA Macros Examples