Getting Started with CATIA CAA Customization

In this blog post you will learn the CAA V5 development platform, know the foundation components, and understand the architecture of the CATIA / 3DEXPERIENCE native application following the Model/View/Controller design pattern.

Contact PLM Coach to Learn CATIA CAA

Introduction to CATIA CAA RADE Customization

In our previous blog post we had discussed on the topic How to learn CATIA CAA RADE Customization? In this month’s blog post we will discuss on getting started with CATIA CAA RADE Customization. CATIA CAA Customization is a rapidly growing niche skill, in CAD & PLM Customization landscape. It is essential for CAD & PLM engineers to learn CATIA CAA Customization skill, as it has very high demand in the market, due to Dassault Systemes’s strategic direction towards integrating 3DEXPERIENCE Platfrom’s core customization around  CAA Technology. CATIA is a widely used CAD system in the market. It provides openness for customization. Let’s discuss below on Getting Started with CATIA CAA Customization

Contact PLM Coach to Learn CATIA CAA

CATIA Customization Capabilities


CATIA Customization Capabilities

  • CATIA Knowledgeware Applications
  • CATIA Visual Basic Automation
  • CATIA CAA Customization

PS: Refer our blog post on 3DEXPERIENCE Platform Openness

CATIA Customization Capabilities – Comparison


Actions CATIA Knowledgeware CATIA Automation CATIA CAA Customization
Create Application Yes Yes Yes
Extend the PPR No No Yes
Connect to an Application No Yes Yes
Required Skills CATIA Expert User VB Developer CAA Developer
Development Cost Low Medium High
License for Build Time Yes No Yes
License for Run Time Yes Depends on the used API Depends on the used API

Contact PLM Coach to Learn CATIA CAA

CATIA Knowledgeware Solutions


CATIA offers enterprise know-how automation capabilities using Knowledgeware solutions. CATIA Knowledgeware solutions are namely Knowledgeware Advisor, Knowledgeware Expert, Product Knowledge Template and Business Knowledge Template.

  • Provides CATIA geometry creation, validation and process automation capabilities
  • Minimal coding knowledge is needed for the end user on CATIA Enterprise Knowledge Language (EKL)
  • Enables you to capture and reuse corporate know-how

CATIA Visual Basic Automation


CATIA Visual Basic Automation helps you to use a scripting language to access CAA Automation objects to capture your own know-how and increase your productivity. End Users can customize applications to automate repetitive and time consuming tasks, and to make it fit your own process.

  • CATIA Automation API helps the end user to view the CATIA data model
  • CATIA Macros relying on standard languages across the platforms; MS VBScript on Windows, VB Script provided by Winsoft on UNIX
  • CATIA Macros can be recorded and reused interactively
  • Can integrate with Visual Basic for Application (VBA) or standalone Visual Basic projects
  • Provides Selection capabilities at Feature level and Sub-Element level providing access to Face, edge, vertex

Contact PLM Coach to Learn CATIA CAA

CATIA CAA RADE Customization


CATIA CAA is a de facto standard API written in C++ using tools and methods for an Object Oriented programming environment

  • Interactive software development tools built on top of best-in-class de facto standard RADE tools
  • Uses Microsoft Visual C++ on Windows and Standard C++ Compilers
  • CATIA CAA V5 Addins provides easy to use Wizards to create workbenches, interactive commands, dialog boxes, etc
  • CATIA CAA is a huge set of API covering all the domains
  • CATIA CAA offers single source code working on both WINDOWS and UNIX operating systems

Contact PLM Coach to Learn CATIA CAA

CATIA CAA Paradigm / Application Architecture


CAA is an acronym for Component Application Architecture. CATIA CAA is a comprehensive and open set of APIs to be fully integrated into Dassault Systemes Portfolio. CATIA CAA permits to customize your business application, extending application portfolio with your business knowledge and reusing CATIA CAA Components to build your own solution.



CATIA CAA Workspace


CATIA CAA Workspace or application is made of several frameworks that often referred as components. Each framework can have several modules that can hold source files.

  • Every CATIA CAA Application is a set of 1 to n components called as the frameworks.
  • Each framework is composed by 1 to n modules.

CATIA CAA RADE Workspace Framework Module

Contact PLM Coach to Learn CATIA CAA


CATIA CAA Workspace: Framework / Module Organization


Group of interoperating objects with built-in capabilities delivered as a complete resource to client applications. Encapsulation extended at the level of a CATIA CAA module and a CATIA CAA framework

CATIA CAA RADE Workspace Framework Module Organization

Contact PLM Coach to Learn CATIA CAA


CATIA CAA Workspace: Prerequisites


To access the header file of CATIShaft for build/link time, the customer Application needs the header file complete path : Workspace + framework + module

CATIA CAA RADE Workspace Prerequisites

Contact PLM Coach to Learn CATIA CAA

Define your Prerequisite Workspaces: mkGetPreq

  • mkGetPreq -p PrerequisiteWorkspace1
  • This enables you to define where the prerequisite resources are located
    • For build time: header files
    • For run time: shared libraries, resource files
  • This command must be launched in a window where the CAA V5 environment has been set and the current directory must be your workspace directory.

Framework IdentityCard

  • The IdentityCard defines the prerequisite frameworks to build and use a framework.
  • One identity card per framework.
  • If there is no prerequisite framework, define an empty IdentityCard.
  • This header file is used by our building tool to limit the header file search to the corresponding Interfaces directories of the pre-requisite frameworks.
  • This framework uses only headers defined in the PublicInterfaces or ProtectedInterfaces directories of the System and ObjectModelerBase frameworks.

CATIA CAA Workspace: Directory Structure


CATIA CAA Workspace directory comprises of two perspectives. They are Build Time View and Run Time View respectively.

Build Time View contains all source files, that are necessary for CATIA CAA Workspace such as C++ source files and header files. Additionally it contains file likes text file and Identity Card XML or header files.

Run Time View contains the output binaries, libraries and resource files required for executing CATIA CAA Workspace customization on a CATIA Client Workstation. These files include Dico, CATNls, CATRsc, etc

CATIA CAA RADE Workspace Directory Structure




  • A unique DS tool built on top of the standard compilers that works in the same way on UNIX and Windows:
    • Compile Fortran, C, C++, IDL, …
    • Link-edit

About mkmk


  • To access the mkmk help online, use mkmk -h.
  • Use the update (-u) option when:
    • modifying the dependencies (an include file added or suppressed)
    • adding or removing a file (.h and .cpp).
    • modifying the IdentityCard.h and/or the
  • In other cases, do not use the update option. mkmk will reuse some intermediate files generated before like:
    • Objects
    • ImportedInterfaces
    • various
  • Its behavior depends on the current directory:
    • Your workspace directory is the current directory
      • mkmk –aug to force all the modules to be rebuilt with the debug option.
      • mkmk –a to rebuild only what needs to be rebuilt
    • A module directory is the current directory:
      • mkmk –ug to force the corresponding module to be rebuilt with the debug option.
      • mkmk to rebuild only if necessary


ExportedByModuleName Preprocessor Variables


  • A Windows mechanism imposes that shared libraries declare explicitly what they import and export.
  • To manage this, we define some pre-processor variables in a single header file named as the module.

Checkout other FREE Resources

How to learn CATIA CAA RADE Customization?

CATIA CAA RADE Interview Questions with Answers


Brief Introduction to Teamcenter Training

🎬 Checkout the video on CATIA CAA Customization


CATIA CAA Customization Training from PLM Coach

🎓 CATIA CAA Fundamentals – Getting Started  


Required for anyone getting started to develop CATIA CAA V5 applications in the scope of CATIA portfolio


🎓 CATIA CAA Advanced

Advanced techniques for extending the CATIA CAA data model in the Part and Product context.

🎓 CATIA CAA for 3DEXPERIENCE – Getting Started  


Required for anyone developing CAA applications on top of the 3DEXPERIENCE platform


Required for anyone developing V6, 3DEXPERIENCE or migrating V5 applications in the scope of CATIA portfolio


🌍 CATIA CAA Customization References on Web

🌍 Dassault Systemes CATIA CAA Portfolio Page

🌍 For PLM / CAD Training Visit

Follow PLM Coach on Social Media:

YouTube LinkedIn | Facebook

Twitter | Pinterest

📧 Contact PLM Coach:

Follow the link to Training Inquiry Form to provide your details

Follow the link to Text PLM Coach on WhatsApp

☏ Mobile Number


💌 Email


About Author
Anup Karumanchi
Anup Karumanchi
Champion of PLM, CAD & MES platforms, with a proven track record of delivering successful workshops and services for global clientele.

Leave a Comment

Your email address will not be published. Required fields are marked *

Call us

Scroll to Top