
Implementing custom commands in Module Suite is not just about the logic — placement inside the Content Script Volume defines visibility and behaviour. Two mechanisms control this: Overrides and Actions. Overrides use an eager-execution model, ideal for static conditions and bulk actions, while actions are lazy-loaded, designed for dynamic, resource-intensive checks. Choosing the right approach ensures both performance and usability. This two-part series starts with Overrides, followed by Actions.
Implementing custom commands in Module Suite for OpenText Content Management is not just about writing the command logic: Where you place your scripts inside the Content Script Volume is what determines when, where, and how those commands appear to end users.
This decision has a direct impact on:
The two key mechanisms for controlling command placement are Overrides and Actions and understanding how they differ is critical for delivering a smooth user experience while keeping your system efficient.
This is the first part of a two-article series: here we’ll explore Overrides, their eager-execution model, how to target them precisely, and when they should (and shouldn’t) be used. In Part 2, we’ll turn to Actions, the lazy-loading counterpart designed for dynamic conditions.
Before diving into Overrides, it helps to understand where they sit in the bigger picture.
All custom commands in Module Suite are managed within the Content Script Volume, specifically under the CSSmartView folder. This folder is the backbone of how Smart View is extended: it tells Content Management what new capabilities exist and where they should surface in the interface.
Inside CSSmartView, you’ll find four key folders, each playing a distinct role in shaping how custom functionality behaves, from defining the actual command logic, to controlling visibility rules, to customizing how nodes are displayed:
When a page loads in Smart View, every script inside the Overrides folder is immediately evaluated for each visible node. The system builds an Actual Override Map (AOM) linking overrides to nodes.
Which means that If your folder displays 50 nodes, and your override targets them, your script runs 50 times. That’s why override logic must be lightweight and efficient.
Overrides let you control visibility with a structured folder hierarchy
Pros:
Cons:
You want an “Approve Document” command available for all documents. Since visibility depends only on subtype, place your script under Overrides > S144.
Users can even bulk-select multiple documents and approve them at once — with no performance issues.
Overrides are your best choice when:
For dynamic or complex conditions, though, Overrides may create performance bottlenecks. That’s where Actions come in — and we’ll cover those in the second article of this topic. Stay tuned!
150+
Success stories
We draw on a spotless track record of hundreds of successful transformations across OpenText and Salesforce platforms, creating future-ready digital ecosystems.
"Thanks to our partners' dedication and expertise, the solution provided to the EEAS offers flexibility within the stringent confines of EU regulations we were looking for. This adaptation not only complements our mission but significantly boosts our operational capabilities, greatly helping our global diplomatic activities."