Using LUA commands to create an index/glossary

  Consider a data source with the following data. This example creates a glossary of all the words in the ‘Glossary’ field, showing the pages they appear on. The words are sorted alphabetically and the pages are numerical within each word. The resulting output looks something like: big – p 13,14, bill – p 13, black […]

EasyCatalog Server and Salsify

The Enterprise Data Provider supports direct connections to a Salsify Data Sources.  The normal login procedure uses OAuth based authentication, which uses a browser to login to Salsify. InDesign Server does not allow user interaction, so an alternative method method is supported where a static ‘access token‘ can be used as part of the data source […]

Advanced Conditional Processing Using Lua

EasyCatalog supports an embedded version of the Lua programming language.  When text is processed, any commands between  delimiters [[ and ]] are processed using Lua. EasyCatalog supplements Lua with functions to make data access easier. For example:

In this example, if the contents of the ‘new’ field are equal to ‘1’ the text NEW! will be output. […]

Reapplying Pagination Rules during Update Document

By default, Pagination Rules are not re-applied during an Update Document operation.  However,  holding down a keyboard modifier while selecting the ‘Update Document’ menu can force them to be reapplied: Shift key: if a box contains any field that has been updated its Pagination Rules will be reapplied Shift + Alt key: Pagination Rules will […]

Importing XML Data that contains varying levels of grouping

XML data that contains categories and sub categories can be imported into EasyCatalog using the XML Data Provider module.  Sometimes, records may appear at different levels in the hierarchy of the XML (e.g. some products may be in a category > sub category > sub-sub category structure, others may be in at the category > […]

Computed Fields and Complex Tables

The movie below shows an XML Fragment being used to populate a series of fields and an entire table. The data sources is created with just two fields – one for the “Product ID” and one to contain the contents of the “ProductAttributes” node structure. XML Example:

Variations on the following “Computed Field” command are used […]

Get the name of the selected data source

While you can get the selected panel (DSV) object. To get the name of the data source, the parent object needs to accessed:

Setting pagination options via a script

The options shown on the “Paginate” dialog can all be set using the ‘setPaginationOption‘ scripting method which is available on the datasource object.  This method takes two parameters: the name of the option to set and the value to set it to.

The value used for the ‘name‘ parameter can be determined by examining […]

Referencing a field in a CALLSCRIPT script

Here’s an example CALLSCRIPT script that references record data passed to it:

Do you have an example URL based XML data source?

Here’s a link to some sample XML data which can be loaded into the XML data provider:

  Here are the data source configuration settings required to load this data:   (more…)