Formatting Rule Fields
The Formatting Rule field type enables a field to create content based on a stored Formatting Rule: When the field is inserted, the named rule is populated and inserted between text markers without any tags (tags within tags are not allowed). When Repeat For Each Line is enabled, the rule will be populated once for …
Inserting Images as Anchored Frames
When a field contains the an image or multiple images, it’s possible to insert these as anchored items inside a text based link. To do this, enable the “Insert as inline” checkbox on the Picture Content section of the Field Options: To control the size and appearance of the frames, an Object Style can be …
Formatting Rules – Duplicating a Frame for Each Cell of a Tabular Field
Sometimes is useful to break out things like colours into a tabular field and then populate these as a set of frames, one for each colour. The frames might contain a Swatch and a swatch name. The example below iterates though the Colour tabular field, duplicating the frame given the Script Label group. It then populates …
Formatting Rules – Duplicating a Frame for Each Cell of a Tabular Field Read More »
Replacing Delimited Field Names With Field Content
The example below replaces field names delimited between { and } with the field content. E.g: “This is a field with another field {name} inside” The replaces “name” with the contents of field called “name”.
1 2 3 4 5 6 7 8 9 |
-- Searches a field called "name" for fields delimited -- between { and } and replaces them with field content str = field(name) while str:match("{(.-)}") do word=str:match("{(.-)}") str = string.gsub(str, "{" .. word .. "}", field(word)); end return str |
Combined Data Sources
Combined Data Sources in EasyCatalog allow you to combine data from separate data sources into a single panel. By specifying a series of simple rules that determine how data from one data source relates to data from another data source, you can quickly build complex data structures without having to write SQL. A Combined data …
Table Filtering
EasyCatalog normally assigns one record to each row in a table. When populated, the table body rows will be altered to accommodate row per record. The Table->Filter… menu sets a table level option to only populates with records matching a certain criteria. In this example you can see the top table has been populated without …
Managing Enterprise Data Provider
EasyCatalog allows access to third party systems, such as PIM or DAM systems, via Custom Data Providers. The Enterprise Data Provider allows these scripts to installed, updated or removed using the “File->EasyCatalog->Manage Enterprise Data Providers…” menu option. Publicly available scripts are hosted by us in a central location. To download and install a provider, click …
Hilighting the Document Selection
EasyCatalog can hilight the selecting fields in a document using a blue outline in a data panel as shown: This is enabled via an “Advanced Preference”, available from the InDesign->Preferences->EasyCatalog dialog box. The Advanced button reveals the settings below: Hilight Document Selection can be found in the Miscellaneous section and should be set to true. This …
What’s New In 2021
Here’s a list of the major new features in the 2021 compared to the 2020 version of EasyCatalog: Combined Data Sources Combined Data Sources in EasyCatalog allow you to combine data from separate data sources into a single panel. By specifying a series of simple rules that determine how data from one data source relates …
Augmenting Datasources via “CreateContent.lua”
Incoming data can be manipulated using a script which is executed immediately after EasyCatalog loads data from a data source, but before additional processing. The ‘createcontent.lua’ script, when located in the data sources scripts folder, is called immediately before loading data. It gets passed a ‘records’ variable which is a RECORDSET object representing the raw data …
Developing an ImageLink Provider Script
This is intended to describe how to write a provider script. Overview The Plug-in enables connection to any DAM or online image resource via a provider script that manages interaction with its REST API. This is a single script containing a number of key callback functions, prefixed with cb_. Scripts are stored in locally in …
What’s New In 2020
Here’s a list of the major new features in the 2020 version of EasyCatalog: Live URL Links Enables the direct link of URL based images within an InDesign 2020 document. If the original image changes size, the link can be refreshed to ensure the InDesign document includes the latest version. This is available as the …
Do I Have to Pay to Upgrade My EasyCatalog License?
InDesign 2020 is a major new version of InDesign and so an upgrade fee may apply for EasyCatalog. The upgrade will be free of charge if you: have purchased a new license (not an upgrade) in the last twelve months have upgraded EasyCatalog in the last six months have a valid maintenance plan with us …
Do I Have to Pay to Upgrade My EasyCatalog License? Read More »
How Does Licensing Work with Creative Cloud Versions?
When purchasing a license for EasyCatalog you’re purchasing for a specific version of InDesign — e.g. InDesign CC 2018, InDesign CC 2019. With all new licenses you receive twelve months complimentary maintenance; if purchasing an upgrade you receive six months complimentary maintenance. So, if Adobe release another version during this maintenance period the upgrade will …
How Does Licensing Work with Creative Cloud Versions? Read More »
EasyCatalog in Japanese
We have localised EasyCatalog into Japanese. This is included in the standard version which can be downloaded from our Website. For local support please contact or reseller: http://www.vpj.co.jp/product/easycatalog/index.html/
How do a get an invoice?
For purchases made via our Webstore you can reprint the original invoice via our After-Purchase Services site 24 hours a day at https://fastspring.com/question-a-charge/. Just log on using the email address from the order and the order ID, and the option to print the invoice will appear on the next page after logging on.
Is EasyCatalog available in Spanish/Español?
Yes, we have localised EasyCatalog into Spanish. For this version, please contact our Spanish reseller: http://www.nousmedis.com
Preprocessing Field Options
Allows content to be processed before any additional formatting is applied. Once processed other options such as cleansing, prefix, suffix are applied. Only fields with content are processed. This option should only be used on fields that do not update back to a data source, because there is no way of reversing the process. Ensure …
Formatting Rule Regeneration Options
Regeneration options determine when the Formatting Rule is rebuilt. They can be rebuilt based on 3 options: When the rule changes. If the Formatting Rule has been updated since originally placed, it will be rebuilt. When the data changes. If any fields or records that make up the rule have been updated, it will be …
Support for Custom Salsify Channels
For custom channels, EasyCatalog allows the creation of scripts that take channel data and turn into a record set which EasyCatalog can load. Scripts are written in Lua. They take raw channel JSON and return a RECORDSET object. The name of the file should match the name of the channel, with a.lua extension. Scripts should …
Use Formatting Rules Post Processing to Paginate Images
Fields Containing Multiple Images Fields may contain references to multiple images, each separated by a carriage return. For example: image1.png image2.png image3.png Here’s a simple post processing script that paginates these into the bounds of the formatting rule. The rule must have a graphic frame tagged with the field and a script label set to …
Use Formatting Rules Post Processing to Paginate Images Read More »
The Enhanced HTML Parser
The enhanced HTML parser cleanses the field HTML prior to processing. Any unbalanced are corrected and the entire field is enclosed with an implied <body> node. As a general rule any tag which matches the name of character or paragraph style will apply that style. Recognized Tags Specific tags and their attributes are recognised: Tag …
Applying Table Cell Attributes
The Table->Cell Options dialog box includes the ability to Apply Cell Style Named In. This allows a field to be defined that contains the name of a cell style. In addition to this, the field content can be prefixed to apply a specific cell attribute: TINT: Apply a tint value to the cell SWATCH: Apply …
Versions Panel
The Versions Panel aids the creation of multi-version content using InDesign Layers, typically for regionalised adverting or promotional material. To use this functionality, data must contain a record for each version of a product. The related records need share common fields in order to identify them as a single ‘product’. Example Data page number position product version …
EasyCatalog Product Activation
EasyCatalog uses online product activation to validate the serial numbers you have purchased. To activate EasyCatalog: Launch Adobe InDesign If you have unregistered modules, the “About EasyCatalog” dialog will automatically appear once InDesign has finished launching. For each of the serial numbers you received in your order confirmation email: Click the “Activate” button at the …
Custom Data Providers
Overview Through optional modules EasyCatalog provides a number of data providers (ODBC, XML, Excel, CSV, Sqlite). The Enterprise Data Provider also provides additional connections to a number of third party systems. For connections to other systems, such as JSON or REST APIs, the Enterprise Data Provider enables the ability to create custom data providers. Creating …
Custom Menus and Dialogs
Overview Lua scripts can be integrated with EasyCatalog to provide custom menus and dialog boxes. User Interface is provided by the the InDesign Scripting DOM, which offers dialog creation and control. Details on how to access this from Lua are here. Creating a Custom Menu Option Adding a custom menu option is a case of …
Accessing the InDesign Scripting DOM via Lua
Overview The InDesign Scripting DOM provides full access to the creation and manipulation of all content within InDesign. By combining this the speed of Lua with the data access and control facilities of EasyCatalog, it’s possible to create data driven content in virtually any format. Accessing The InDesign Scripting DOM can be accessed via Lua …
Batch Scripted Custom Fields
Use this option when a custom field has no computed content, and the content is provided exclusively using a Lua script. This is a special type, designed to prevent the editing of raw content and restricting the user interface to applicable field options. Any existing field content is cleared before the script is executed to …
EasyCatalog Demonstration Files
If you’re recently requested assistance from 65bit, you may have received a number of files that demonstrate how to configure EasyCatalog. Here’s a run-through of what you may have received and what you should do with them: Data Source Folder This is typically sent over as a zip file, so unzip it before going into …
Removing EasyCatalog’s License File
Occasionally it may be necessary to remove EasyCatalog’s licensing information from your installation. Once complete, EasyCatalog will need to be re-activated on this machine. EasyCatalog stores your license information in one or both of the following locations: Macintosh Inside of the InDesign Package Quit InDesign Right click on the InDesign application icon and use the …
Running a new version of InDesign?
The serial number you have entered is for EasyCatalog running under a previous version of Adobe InDesign. Each time Adobe release a new major version of InDesign, such as CC 2018, CC 2019, etc, your plug-ins will need to be upgraded. The upgrade will be free of charge if you: have purchased a new license …
What is a Matrix Table?
A matrix table is a table that expands both horizontally and vertically. The amount of rows and columns is determined by the number of unique values in the specified fields. Matrix tables are generally ‘look up’ tables. In the following example, the two products are available in three ‘colours’, two ‘finishes’ (‘gloss’ and ‘matt’) and …
Matrix Table Configuration Dialog
EasyCatalog provides the ability to a create a matrix table — a table that expands both horizontally and vertically, populating data at the intersection of each column and row. In the CC 2019 version, a new dialog is available on the Table menu (on the data panel’s pop-out menu) to specify the more common matrix …
Custom Reports
The custom report option allows provides a mechanism to inspect data source or document related information and output it in virtually any format. LuaSocket support is enabled for custom reports, which can be exported in a variety of ways, such as files, posted via HTTP or shown in a browser. The pencil icon provides access …
Custom Adoption
The Adopt Fields->Custom menu facilitates the development of custom scripts to manipulate individual links in the current document. The dialog displays the active documents links on the left, and the links after processing by the script. Pressing the Test button will execute the code for each link and present the results in the right hand column. …
Post Processing of Formatting Rules
Once a Formatting Rule has been populated with data, it can be processed before final placement using Lua code. Typical uses for this would be to position frames relative to one another, position a series of images, or incorporate other Formatting Rules to build a layout. It’s also possible to create the entire content via …
Advanced Preferences
The EasyCatalog preference panel provides access to Advanced preferences. Relaunch InDesign To Apply Any Changes. EasyCatalog Workspace Multi User Workspace Defines the the default setting when the preferences are rebuilt. Cache Formatted Data When true, EasyCatalog stores the ‘formatted’ content of a field for quicker data source loading. When it’s false, the formatted content is rebuilt …
The “ENV” Custom Field Command
The “ENV” custom field command can be used to determine environmental properties of EasyCatalog, such as the version of InDesign that’s running or the platform (Mac/Windows) that EasyCatalog is running on.
1 |
ENV('platform') |
The “ENV” command takes a single parameter, which the name of the attribute you would like to retrieve:
Running the Windows Installer Silently
The Windows installer can be run silently – without any user interface – from the command line using the /qn MSI command line switch: “EasyCatalog CC2018 Installer.exe” /qn As there is no user interface the installer will install EasyCatalog plus all of the default modules. There are no command line options to change the modules …
Applying CMYK or RGB values to a frame
The Apply Swatch Named in Field “Pagination Rule” can apply either a named swatch or an RGB or a CMYK value if that value is in a field. For RGB, the value should be: #RRGGBB Where each part is a 2 digit hexadecimal value. For CMYK the value should be: cNNNmNNNyNNNkNNN Where NNN is the decimal …
Handling Nested HTML Tags in Formatted Fields
EasyCatalog attempts match the tag name to a character or paragraph stylesheet. In this example:
1 2 3 4 5 6 7 8 9 10 11 12 |
<ul> <li>one</li> <ul> <li>one</li> <li>two</li> <li>three</li> <li>four</li> </ul> <li>two</li> <li>three</li> <li>four</li> </ul> |
EasyCatalog attempts to apply a stylesheet called “ul” before performing the default behaviour. Since there is a nested <ul> inside a <li> tag, EasyCatalog attempts to apply a tag called “ul>ul” for a single level of nesting. For three …
Creating a Calendar using LUA
This example code creates a calendar tabular field using data where each record is an event on a calendar. The data has fields contain the month and year. GROUPSCRIPT is used to call the script for each month group. This data can then be paginated using Master based pagination.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
-- GROUPSCRIPT gets passed a 'recordset' object. -- the 'Month', 'Year' and 'Day' are fields in the data -- Each cell is filled with 'Title' and 'Time' imonth = tonumber(recordset:getrecord(1):field('Month'):content()); iyear = tonumber(recordset:getrecord(1):field('Year'):content()); function get_day_of_week(dd, mm, yy) dw=os.date('*t',os.time{year=yy,month=mm,day=dd})['wday'] return dw,({"Sun","Mon","Tue","Wed","Thu","Fri","Sat" })[dw] end function get_days_in_month(month, year) local days_in_month = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } local d = days_in_month[month] -- check for leap year if (month == 2) then if year % 4 == 0 then if year % 100 == 0 then if year % 400 == 0 then d = 29 end else d = 29 end end end return d end function populate_cell(row, col, day_of_week) for record=1, recordset:size() do myrecord = recordset:getrecord(record); data_day = tonumber(myrecord:getfield('Day'):content()); if data_day == day_of_week then this_entry = "<p>" .. myrecord:getfield('Title'):content() .. "</p>" .. "<p>" .. myrecord:getfield('Time'):content() .. "</p><br/>" table:cell(row,col):setcontent(table:cell(row,col):getcontent() .. this_entry); end end end table = TABLE.new(); table:cell(1,1):setcontent("Sunday"); table:cell(1,2):setcontent("Monday"); table:cell(1,3):setcontent("Tuesday"); table:cell(1,4):setcontent("Wednesday"); table:cell(1,5):setcontent("Thursday"); table:cell(1,6):setcontent("Friday"); table:cell(1,7):setcontent("Saturday"); days_in_month = get_days_in_month(imonth, iyear); first_day_in_month = get_day_of_week(1,imonth,iyear); for day=1,days_in_month do offset = (day-1) + first_day_in_month; row = math.floor((offset-1) / 7) column = math.floor(offset-1) % 7; table:cell((row*2)+2,column+1):setcontent(day); populate_cell((row*2)+3,column+1, day); end; table:present(); |
Custom Image Import
For images that are sourced externally but are not URL or File based, the “Custom” option can be chosen in the picture location section of the field options. When this is set, EasyCatalog looks for a file called ‘CustomImageImport.jsx’ in the ‘Scripts’ folder of a data source. Here’s a simple example that displays the field …
Specifying Defaults for the EasyCatalog Workspace Folder
Specifying defaults for the Workspace folder location The default location for your EasyCatalog workspace folder can be specified creating a preference file in your preferences folder, which on the Mac can be found at:
1 |
{home folder}:Library:Preferences:65bit Software:EasyCatalog Preferences.xml |
on Windows it can be found at (although it depends on the version of Windows):
1 |
C:\Users\{user name}\AppData\Roaming\65bit Software\EasyCatalog Preferences.xml |
The file should be …
Specifying Defaults for the EasyCatalog Workspace Folder Read More »
Using the Versions Panel
The Versions Panel aids the creation of multi-version content using InDesign Layers, typically for regionalised adverting or promotional material. To use this functionality, data must contain a record for each version of a product. The related records need share common fields in order to identify them as a single ‘product’. Example Data page number position product version …
Generate InDesign Based QR Codes
To Generate Web Hyperlink QR Codes:
1 2 |
frame:qrcodehyperlink(field('URL')); frame:fitcontent(); |
Create an empty picture frame, then show the ‘Script Label’ panel (from the Window > Utilities menu). Change the ‘URL’ to be the name of the field containing the URL you want to link to. Once you’ve entered that, you’ll need to click off the frame so that InDesign …
Automatically tagging existing documents using a Regular Expression
EasyCatalog can automatically tag fields in existing documents by looking for patterns in the text defined by a regular expression. This feature – Auto Pickup – is designed to mark up documents that have already been created (either by hand or by another automation method) and is useful for updating prices, for example. Auto Pickup …
Automatically tagging existing documents using a Regular Expression Read More »
Specifying Defaults For Data Providers
Defaults for data providers can be specified by creating a preference file in your preferences folder, which on the Mac can be found at:
1 |
{home folder}:Library:Preferences:65bit Software:EasyCatalog Preferences.xml |
on Windows it can be found at (although it depends on the version of Windows):
1 |
C:\Users\{user name}\AppData\Roaming\65bit Software\EasyCatalog Preferences.xml |
The file should be created using a text editor (such as Notepad or TextEdit) …
Converting XML tags to EasyCatalog Tags
EasyCatalog has the ability convert XML tags to EasyCatalog tags via a simple LUA script that maps tag attributes to the elements of a link (key, data source, field name). The .lua script should be placed inside a folder called “Adopt Fields” in the “Scripts” folder of a data source. The file name of the …
Can I automatically rename an InDesign form field during pagination?
EasyCatalog can automatically rename form field items during pagination using a configuration specified using InDesign’s Script Label panel. Show the “Script Label” panel from the “Window > Utilities” menu Select the button form field in the document Paste the following into the “Script Label” panel
1 2 3 4 5 |
<ecscript> <formfield> <name field="Stock Code"/> </formfield> </ecscript> |
Deselect the form field in the document (deselecting ‘writes’ …
Can I automatically rename an InDesign form field during pagination? Read More »
Custom Relinking of Fields
The “Adopt Fields” method of relinking assumes field names and key field values are consistent between the existing links and the new data. It was designed to link fields from one data source to another, and as such is limited to changing the key element of a link. In some circumstances it may be necessary …
Date/Time Formatting Options
Full list of formatting codes, used in the input and output field options of a date/time field: %a Weekday as locale’s abbreviated name. Mon %A Weekday as locale’s full name. Monday %w Weekday as a decimal number, where 0 is Sunday and 6 is Saturday. 1 %d Day of the month as a zero-padded decimal …
Matrix Tables
EasyCatalog provides the ability to a create a matrix table — a table that expands both horizontally and vertically, populating data at the intersection of each column and row. Matrix tables are defined using commands in an XML format, specified using the Script Label panel with the table selected. There are three required nodes in …
Specifying a time-out value for URL-based operations
You need to include a preference file in your preferences folder, which on the Mac can be found at:
1 |
{home folder}:Library:Preferences:65bit Software |
on Windows it can be found at (although it depends on the version of Windows):
1 |
C:\Users\{user name}\AppData\Roaming\65bit Software |
The content of the file should be:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<easycatalog> <preferences> <values> <!-- Contains the average transfer speed in bytes per second that the transfer should be below during CURLLowSpeedTimeout seconds for libcurl to consider it to be too slow and abort. --> <!-- https://curl.haxx.se/libcurl/c/CURLOPT_LOW_SPEED_LIMIT.html --> <value key="CURLLowSpeed" value="1000"/> <!-- Contains the time in number seconds that the transfer speed should be below the kPreferencesURLLowSpeedLimitKey for the library to consider it too slow and abort. --> <!-- https://curl.haxx.se/libcurl/c/CURLOPT_LOW_SPEED_TIME.html --> <value key="CURLLowSpeedTimeout" value="10"/> <!-- The maximum time in seconds that you allow the libcurl transfer operation to take. --> <!-- https://curl.haxx.se/libcurl/c/CURLOPT_TIMEOUT.html --> <value key="CURLTimeout" value="60"/> </values> </preferences> </easycatalog> |
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 …
Working With Tabular Fields
Overview Fields can contain tabular data, where each cell is treated as an independent link. Tabular field data can come from a number of sources, including delimited field content, other data sources, HTML, XML, or built from conditional logic. Example In this example the field “AttributeValues” contains the following XML snippet:
1 2 3 4 5 6 7 8 9 10 11 |
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <AttributeValues> <AttributeValue attributeId = "quantity" orderNo = "10">68</AttributeValue> <AttributeValue attributeId = "order code" orderNo = "7">GF 33</AttributeValue> <AttributeValue attributeId = "id" orderNo = "9">116</AttributeValue> <AttributeValue attributeId = "description" languageId = "de" orderNo = "2"><p>AC99AFFF mit FG 50</p></AttributeValue> <AttributeValue attributeId = "width" orderNo = "13">4000</AttributeValue> <AttributeValue attributeId = "height" orderNo = "6">20</AttributeValue> <AttributeValue attributeId = "diameter" orderNo = "11">100</AttributeValue> <AttributeValue attributeId = "price" orderNo = "8">312,5</AttributeValue> </AttributeValues> |
The first stage is configure the field as ‘Tabular’ …
Accessing Guide Based Pagination Progress on InDesign Server
There is a script called “PaginationProgress.jsx” which you can place in the Data Sources “Scripts” folder. This is passed script arguments: “datasource” : The Data Source Name “stepindex” : Current Step Index “stepcount” : Total Number of Steps “step message” : Related Message You can access them like this: var stepCount = Number(app.scriptArgs.getValue(“stepcount”));
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 …
Configuring Cross Platform Picture Paths
Paths are represented differently on Macintosh and Windows machines. This has an impact when working in a cross-platform environment as a picture import path configured on Macintosh would not work on Windows and vice-versa. To overcome this, a Custom Field command can be used to determine the platform that EasyCatalog is running on:
1 |
IF(ENV(platform),=,Macintosh,'Macintosh HD:Images','C:\Images') |
The …
Cross Referencing Fields From Another Data Source
Using Custom Fields, it’s possible to import fields from another EasyCatalog data source. A Custom Field is a field that appears only in EasyCatalog (so it’s not present in the source data) and is populated using one of our inbuilt functions. The XREFFIELD custom field function can be used to import data from another data …
Cross Referencing Fields From Another Data Source Read More »
Moving EasyCatalog to a new machine
Moving EasyCatalog to a new machine involves two steps: moving the configuration of your data sources and your licenses. Configuration Your EasyCatalog data sources are stored in your EasyCatalog Workspace folder. The workspace folder contains configuration information about each of the data sources, but by default it does not contain information about how each panel is …
Sending a Crash Report
Occasionally, in the event of EasyCatalog crashing, we may ask you to send us a crash dump file. The dump file contains information showing what EasyCatalog was doing when InDesign crashed and will assist us with the debugging process. Windows By default, Windows Error Reporting (WER) will not produce a crash dump so a change …
Number formatting using custom fields
Custom field functions and field formatting options can be used to format numeric values in a variety of ways. For example, here the data contains ‘value’ and ‘appearance’ is at it should be displayed: value appearance 636000 636,000 20000 20,000 1400000 1.4 Million 6200000 6.2 Million 473000000 473 Million 40000000 40 Million 45000000 45 Million …
Changing URL-based image storage paths
When downloading an image from a URL, by default EasyCatalog will attempt to build a filename based on the format of the URL. Sometimes, however, the filename used is not desirable: for example, the links shown in the Links panel in InDesign will sometimes be meaningless. EasyCatalog provides a feature to specify a file naming …
Advanced Computed Fields Commands
‘Computed Fields’ have additional commands that allow behaviour based on the position of the field within a document: TAGPAGENUMBER() – Returns the page number the tag is on, or -1 for the pasteboard TAGPAGEX() – Returns the X position of the tag in points. TAGPAGEY() – Returns the Y position of the tag in points. TAGSPREADX() -Returns the X …
Replacing a Unicode code point using cleansing
Using the field options, the ‘cleansing’ edit area can be used to replace a specific unicode code point for another character. For example: REGEXV2:[\x{2028}]=^n; This replaces the hexadecimal code point 2028 with a soft return. In this specific case, the code ‘Numbers’ uses as a soft return.
Adding user defined parameters to an ODBC data source
ODBC data sources normally use a hard-coded query to retrieve data. However, EasyCatalog allows elements of the query to be user definable or ‘parameter’ based. These parameters are shown on the ‘info’ dialog box, accessible from the binocular icon on the data panel. Any changes made are applied the next time the data is synchronized. Parameters are …
Adding user defined parameters to an ODBC data source Read More »
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:
1 |
[[if (field('new') == '1') then;]]NEW![[end;]] |
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 …
Reapplying Pagination Rules during Update Document Read More »
Panel drawing on the Mac is slow after upgrading to Yosemite
The problem is actually InDesign drawing bold text in the user interface. The upgrade to Yosemite sometimes messes up the UI fonts used by InDesign. Launch your ‘Font Book’ application and look for Helvetica Nue. There should be a suggestion to fix problems relating to this font.
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 > …
Importing XML Data that contains varying levels of grouping Read More »
Using EasyCatalog to Create a Cross Table of XML Data
A common requirement is to construct a so-called Crosstab, in which multiple attributes are incorporated in a single table. For example, this data represents sets of trousers, with waist, length and price elements. XML Data:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <group> <record> <Product name="Yummy-Yeans" ArtNo="102" Beschreibung="für Damen" /> <Langtext>Diese Yeans sprengt alle Grenzen des bisher Gekannten.</Langtext> <Merkmale> <Merkmal waist="28" length="30" price="129" /> <Merkmal waist="28" length="32" price="132" /> <Merkmal waist="28" length="34" price="134" /> <Merkmal waist="28" length="36" price="133" /> <Merkmal waist="28" length="38" price="133" /> <Merkmal waist="28" length="40" price="138" /> <Merkmal waist="28" length="42" price="140" /> <Merkmal waist="28" length="44" price="138" /> <Merkmal waist="30" length="32" price="139" /> <Merkmal waist="30" length="33" price="145" /> <Merkmal waist="30" length="34" price="152" /> <Merkmal waist="30" length="36" price="142" /> <Merkmal waist="30" length="38" price="144" /> <Merkmal waist="30" length="40" price="146" /> <Merkmal waist="30" length="42" price="147" /> <Merkmal waist="30" length="44" price="149" /> <Merkmal waist="32" length="28" price="150" /> <Merkmal waist="32" length="30" price="148" /> <Merkmal waist="32" length="32" price="152" /> <Merkmal waist="32" length="34" price="147" /> <Merkmal waist="32" length="36" price="153" /> <Merkmal waist="32" length="38" price="149" /> <Merkmal waist="32" length="40" price="148" /> <Merkmal waist="32" length="42" price="160" /> </Merkmale> </record> <record> <Product name="Yummy-Yeans" ArtNo="103" Beschreibung="für Herren" /> <Langtext>Diese Yeans sprengt alle Grenzen des bisher Gekannten.</Langtext> <Merkmale> <Merkmal waist="28" length="30" price="29" /> <Merkmal waist="28" length="32" price="32" /> <Merkmal waist="28" length="34" price="34" /> <Merkmal waist="28" length="36" price="33" /> <Merkmal waist="28" length="32" price="33" /> <Merkmal waist="28" length="34" price="38" /> <Merkmal waist="28" length="36" price="40" /> <Merkmal waist="28" length="38" price="38" /> <Merkmal waist="30" length="32" price="39" /> <Merkmal waist="30" length="33" price="45" /> <Merkmal waist="30" length="34" price="52" /> <Merkmal waist="30" length="36" price="42" /> <Merkmal waist="30" length="38" price="44" /> <Merkmal waist="30" length="40" price="46" /> <Merkmal waist="30" length="42" price="47" /> <Merkmal waist="30" length="44" price="49" /> <Merkmal waist="32" length="28" price="50" /> <Merkmal waist="32" length="30" price="48" /> <Merkmal waist="32" length="32" price="52" /> <Merkmal waist="32" length="34" price="47" /> <Merkmal waist="32" length="36" price="53" /> <Merkmal waist="32" length="38" price="49" /> <Merkmal waist="32" length="40" price="48" /> <Merkmal waist="32" length="42" price="60" /> </Merkmale> </record> <record> <Product name="Yummy-Yeans" ArtNo="104" Beschreibung="Unisex" /> <Langtext>Diese Yeans sprengt alle Grenzen des bisher Gekannten.</Langtext> <Merkmale> <Merkmal waist="38" length="32" price="29" /> <Merkmal waist="38" length="33" price="32" /> <Merkmal waist="38" length="34" price="34" /> <Merkmal waist="38" length="36" price="33" /> <Merkmal waist="38" length="35" price="33" /> <Merkmal waist="38" length="34" price="38" /> <Merkmal waist="38" length="36" price="40" /> <Merkmal waist="38" length="38" price="38" /> <Merkmal waist="40" length="32" price="39" /> <Merkmal waist="40" length="33" price="45" /> <Merkmal waist="40" length="34" price="52" /> <Merkmal waist="40" length="36" price="42" /> <Merkmal waist="40" length="40" price="44" /> <Merkmal waist="40" length="40" price="46" /> <Merkmal waist="40" length="42" price="47" /> <Merkmal waist="40" length="44" price="49" /> <Merkmal waist="42" length="28" price="50" /> <Merkmal waist="42" length="30" price="48" /> <Merkmal waist="42" length="42" price="52" /> <Merkmal waist="42" length="34" price="47" /> <Merkmal waist="42" length="36" price="53" /> <Merkmal waist="42" length="38" price="49" /> <Merkmal waist="42" length="40" price="48" /> <Merkmal waist="42" length="42" price="60" /> </Merkmale> </record> </group> |
The target layout involves a table with the distinct lengths horizontally, distinct waist sizes vertically and prices in each cell. This can …
Using EasyCatalog to Create a Cross Table of XML Data Read More »
Fixing the links in a document created with the wrong key fields
When a document is created using incorrect key fields, this can be corrected using the keyboard shortcut called “Change Document Keys”. Steps involved changing keys are: 1. Create a data source with the NEW key setup and select any record in the panel. 2. Use the keyboard shortcut “Change Document Keys” 3. Enter a comma separated …
Fixing the links in a document created with the wrong key fields Read More »
Hyperlinking to another page in the document
EasyCatalog can insert hyperlinks that link to other pages in the document or, if the document is stored in an InDesign Book, to pages in other documents in the book. The most common usage of this to produce contents or index pages that can link to the actual page in the document when the user …
Working with images in a hierarchical folder structure
It’s possible for EasyCatalog to build a path to an image from the data, but this only works in there is a clear structure to the way the images are stored. For example, if all the images beginning with ‘A’ are stored in a folder called ‘A’ then you can build a path using custom …
Working with images in a hierarchical folder structure Read More »
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:
1 2 3 4 5 6 7 8 9 10 |
<Product> <SKU id="1234"/> <ProductAttributes> <Attribute Name="Height" Value="100"/> <Attribute Name="Width" Value="50"/> <Attribute Name="Length" Value="200"/> <Attribute Name="Pack Size" Value="5"/> <Attribute Name="Voltage" Value="240"/> </ProductAttributes> </Product> |
Variations on the following “Computed Field” command are used …
Is there a way for EasyCatalog to display any price below a dollar ie: “.99” as “99₵”?
Field options can be applied based on the value contained within. Here’s an example that will format prices over a dollar like this: $1.00 ..and under a dollar like this: 50₵ To do this define a ‘custom’ format and enter: [PRECISION=2] [DECIMAL=.] [REMOVE=0.(
How do I change the key field used and relink the fields in my document?
Occasionally it is necessary to change the key field configuration used in your data source: if, for example, the wrong key field was chosen when the data source was originally created. Fields in the document are linked by key field value, so changing the key field can break the links in your documents. However, there …
How do I change the key field used and relink the fields in my document? Read More »
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:
1 2 3 4 |
var ec = app.easycatalogObject; var myDSV = ec.selectedDataView(); var myDS = myDSV.parent; alert(myDS.dataSourceName); |
Can EasyCatalog be used to produce graphs?
Not directly, but it is possible. Here’s a reseller who has produced simple bar graphs using EasyCatalog… https://www.ozalto.com/en/bar-graphs-with-indesign-easycatalog/
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.
1 |
myDS.setPaginationOption("templatedocumentpath","Macintosh HD:mytemplate.indd"); |
The value used for the ‘name‘ parameter can be determined by examining …
How do I uninstall or remove EasyCatalog?
The easiest way to remove EasyCatalog is to delete the “EasyCatalog” folder from your InDesign->Plug-ins folder.
Specifying faces for the < b > and < i > HTML tags
Some fonts have a variety of bold and italic faces, so it’s not easy and sometimes impossible to figure out which to use in any given scenario. To overcome this there are a number of attributes that can be specified on the <i> and <b> tags, namely:
1 2 3 4 |
boldface plainface italicface bolditalicface |
For Example:
1 2 3 4 |
<b boldface = "77 Bold Condensed" plainface = "47 Light Condensed" bolditalicface ="67 Medium Condensed Oblique"> <i boldface = "77 Bold Condensed" plainface = "47 Light Condensed" bolditalicface ="67 Medium Condensed Oblique"> <b boldface = "77 Bold Condensed" plainface = "47 Light Condensed" bolditalicface ="67 Medium Condensed Oblique"> </b boldface = "77 Bold Condensed" plainface = "47 Light Condensed"> |
When the tag is …
Specifying faces for the < b > and < i > HTML tags Read More »
Using tags to apply paragraph and character styles inside a field
When a field is flagged as “Formatted” using field options, EasyCatalog will try to match any HTML style tag to the name of either a paragraph or a character stylesheet and apply it. For example, in the following text:
1 2 |
<p><strong>Indeholder:</strong><br /><bullets>1 stk. Kin-ball indendørs.<br /> 1 stk. Kin-ball udendørs.<br />12 stk. Kin-ball veste – sort/grå/pink.<br />1 stk. blæser.<br />1 stk. pointtavle.</p> |
If a paragraph style called “bullets” exists, this is applied automatically. The default behaviour of …
Using tags to apply paragraph and character styles inside a field Read More »
Customizing the EasyCatalog Panel Flyout Menu
User-interface elements of EasyCatalog can be suppressed (disabled) or hidden using a “SuppressedUI.xml” file in the root of the EasyCatalog workspace folder. The XML file must be well-formed, with a single SuppressedUI element at the root. The root element can contain any number of SuppressedMenu and SuppressedAction elements. SuppressedMenu elements have a menuName attribute, which …
Referencing a field in a CALLSCRIPT script
Here’s an example CALLSCRIPT script that references record data passed to it:
1 2 3 4 5 6 7 8 9 10 11 |
var myFieldContents = myRecord["Store List ID"]; var mySplitContents = myFieldContents.split(","); var myNbrOfChunks = mySplitContents.length; var myCodeList = "" for (thisChunk = 0;thisChunk < myNbrOfChunks;thisChunk++) { var myChunk = mySplitContents[thisChunk]; var myCode = String(myChunk.substring(myChunk.length - 2, myChunk.length)) var myCodeList = myCodeList + " " + myCode } myCodeList; |
Using a post image import script to manipulate an image
After EasyCatalog imports an image, it looks for a script called “PostImageImport.jsx” in both the Data Source->Scripts folder and the EasyCatalog Workspace Folder->Scripts folder. This can be used to manipulate an image after import. The example below applies the DETECT EDGES clipping path setting:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
// Sample script to change the clipping path to detect edges // These can be used to extract the field name and content of the image field: //alert(app.scriptArgs.getValue("field")); //alert(app.scriptArgs.getValue("fieldContent")); // Get the internal ID of the container, passed in from EasyCatalog var myID = Number(app.scriptArgs.getValue("id")); // Get the frame var myFrame = app.activeDocument.pageItems.itemByID(myID) // Get the image var myImage = myFrame.allGraphics[0]; // Set the clipping path myImage.clippingPath.clippingType = ClippingPathType.DETECT_EDGES; // Re-fit the image myFrame.fit(FitOptions.proportionally); |
I only want to know which fields have content in a group
Custom Fields are fields that are created in EasyCatalog that are not present in the source data. Their content is created using one of our in-built functions, in a similar way to using functions in Excel. So, for example, it’s possible to create a custom field that summarises data from a collection of records. Custom …
I only want to know which fields have content in a group Read More »
Is it possible to rename a panel after it is created?
If by panel you mean ‘data source’, then yes. Close all your existing panels using the “Windows->EasyCatalog Panels->Close All” menu option. Then locate your ‘EasyCatalog Workspace Folder’ via the Reveal button in the InDesign->Preferences->EasyCatalog section. Then just rename the appropriate folder in there and open them from File->New->EasyCatalog Panel
I’ve just updated my Mavericks and am receiving a -2003 error when I try to activate
The latest Mavericks update has changed some system file permissions that can sometimes cause a -2003 error when activating the software. This affects the Macintosh version of EasyCatalog only, and the latest version that is now available from our downloads page should fix this issue. After installation re-enter your existing license codes to activate.
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: http://www.w3schools.com/xml/plant_catalog.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 |
<!-- Edited by XMLSpy --> <CATALOG> <PLANT> <COMMON>Bloodroot</COMMON> <BOTANICAL>Sanguinaria canadensis</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$2.44</PRICE> <AVAILABILITY>031599</AVAILABILITY> </PLANT> <PLANT> <COMMON>Columbine</COMMON> <BOTANICAL>Aquilegia canadensis</BOTANICAL> <ZONE>3</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$9.37</PRICE> <AVAILABILITY>030699</AVAILABILITY> </PLANT> <PLANT> <COMMON>Marsh Marigold</COMMON> <BOTANICAL>Caltha palustris</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Mostly Sunny</LIGHT> <PRICE>$6.81</PRICE> <AVAILABILITY>051799</AVAILABILITY> </PLANT> <PLANT> <COMMON>Cowslip</COMMON> <BOTANICAL>Caltha palustris</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$9.90</PRICE> <AVAILABILITY>030699</AVAILABILITY> </PLANT> <PLANT> <COMMON>Dutchman's-Breeches</COMMON> <BOTANICAL>Dicentra cucullaria</BOTANICAL> <ZONE>3</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$6.44</PRICE> <AVAILABILITY>012099</AVAILABILITY> </PLANT> <PLANT> <COMMON>Ginger, Wild</COMMON> <BOTANICAL>Asarum canadense</BOTANICAL> <ZONE>3</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$9.03</PRICE> <AVAILABILITY>041899</AVAILABILITY> </PLANT> <PLANT> <COMMON>Hepatica</COMMON> <BOTANICAL>Hepatica americana</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$4.45</PRICE> <AVAILABILITY>012699</AVAILABILITY> </PLANT> <PLANT> <COMMON>Liverleaf</COMMON> <BOTANICAL>Hepatica americana</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$3.99</PRICE> <AVAILABILITY>010299</AVAILABILITY> </PLANT> <PLANT> <COMMON>Jack-In-The-Pulpit</COMMON> <BOTANICAL>Arisaema triphyllum</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$3.23</PRICE> <AVAILABILITY>020199</AVAILABILITY> </PLANT> <PLANT> <COMMON>Mayapple</COMMON> <BOTANICAL>Podophyllum peltatum</BOTANICAL> <ZONE>3</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$2.98</PRICE> <AVAILABILITY>060599</AVAILABILITY> </PLANT> <PLANT> <COMMON>Phlox, Woodland</COMMON> <BOTANICAL>Phlox divaricata</BOTANICAL> <ZONE>3</ZONE> <LIGHT>Sun or Shade</LIGHT> <PRICE>$2.80</PRICE> <AVAILABILITY>012299</AVAILABILITY> </PLANT> <PLANT> <COMMON>Phlox, Blue</COMMON> <BOTANICAL>Phlox divaricata</BOTANICAL> <ZONE>3</ZONE> <LIGHT>Sun or Shade</LIGHT> <PRICE>$5.59</PRICE> <AVAILABILITY>021699</AVAILABILITY> </PLANT> <PLANT> <COMMON>Spring-Beauty</COMMON> <BOTANICAL>Claytonia Virginica</BOTANICAL> <ZONE>7</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$6.59</PRICE> <AVAILABILITY>020199</AVAILABILITY> </PLANT> <PLANT> <COMMON>Trillium</COMMON> <BOTANICAL>Trillium grandiflorum</BOTANICAL> <ZONE>5</ZONE> <LIGHT>Sun or Shade</LIGHT> <PRICE>$3.90</PRICE> <AVAILABILITY>042999</AVAILABILITY> </PLANT> <PLANT> <COMMON>Wake Robin</COMMON> <BOTANICAL>Trillium grandiflorum</BOTANICAL> <ZONE>5</ZONE> <LIGHT>Sun or Shade</LIGHT> <PRICE>$3.20</PRICE> <AVAILABILITY>022199</AVAILABILITY> </PLANT> <PLANT> <COMMON>Violet, Dog-Tooth</COMMON> <BOTANICAL>Erythronium americanum</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$9.04</PRICE> <AVAILABILITY>020199</AVAILABILITY> </PLANT> <PLANT> <COMMON>Trout Lily</COMMON> <BOTANICAL>Erythronium americanum</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$6.94</PRICE> <AVAILABILITY>032499</AVAILABILITY> </PLANT> <PLANT> <COMMON>Adder's-Tongue</COMMON> <BOTANICAL>Erythronium americanum</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$9.58</PRICE> <AVAILABILITY>041399</AVAILABILITY> </PLANT> <PLANT> <COMMON>Anemone</COMMON> <BOTANICAL>Anemone blanda</BOTANICAL> <ZONE>6</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$8.86</PRICE> <AVAILABILITY>122698</AVAILABILITY> </PLANT> <PLANT> <COMMON>Grecian Windflower</COMMON> <BOTANICAL>Anemone blanda</BOTANICAL> <ZONE>6</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$9.16</PRICE> <AVAILABILITY>071099</AVAILABILITY> </PLANT> <PLANT> <COMMON>Bee Balm</COMMON> <BOTANICAL>Monarda didyma</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$4.59</PRICE> <AVAILABILITY>050399</AVAILABILITY> </PLANT> <PLANT> <COMMON>Bergamot</COMMON> <BOTANICAL>Monarda didyma</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$7.16</PRICE> <AVAILABILITY>042799</AVAILABILITY> </PLANT> <PLANT> <COMMON>Black-Eyed Susan</COMMON> <BOTANICAL>Rudbeckia hirta</BOTANICAL> <ZONE>Annual</ZONE> <LIGHT>Sunny</LIGHT> <PRICE>$9.80</PRICE> <AVAILABILITY>061899</AVAILABILITY> </PLANT> <PLANT> <COMMON>Buttercup</COMMON> <BOTANICAL>Ranunculus</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$2.57</PRICE> <AVAILABILITY>061099</AVAILABILITY> </PLANT> <PLANT> <COMMON>Crowfoot</COMMON> <BOTANICAL>Ranunculus</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$9.34</PRICE> <AVAILABILITY>040399</AVAILABILITY> </PLANT> <PLANT> <COMMON>Butterfly Weed</COMMON> <BOTANICAL>Asclepias tuberosa</BOTANICAL> <ZONE>Annual</ZONE> <LIGHT>Sunny</LIGHT> <PRICE>$2.78</PRICE> <AVAILABILITY>063099</AVAILABILITY> </PLANT> <PLANT> <COMMON>Cinquefoil</COMMON> <BOTANICAL>Potentilla</BOTANICAL> <ZONE>Annual</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$7.06</PRICE> <AVAILABILITY>052599</AVAILABILITY> </PLANT> <PLANT> <COMMON>Primrose</COMMON> <BOTANICAL>Oenothera</BOTANICAL> <ZONE>3 - 5</ZONE> <LIGHT>Sunny</LIGHT> <PRICE>$6.56</PRICE> <AVAILABILITY>013099</AVAILABILITY> </PLANT> <PLANT> <COMMON>Gentian</COMMON> <BOTANICAL>Gentiana</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Sun or Shade</LIGHT> <PRICE>$7.81</PRICE> <AVAILABILITY>051899</AVAILABILITY> </PLANT> <PLANT> <COMMON>Blue Gentian</COMMON> <BOTANICAL>Gentiana</BOTANICAL> <ZONE>4</ZONE> <LIGHT>Sun or Shade</LIGHT> <PRICE>$8.56</PRICE> <AVAILABILITY>050299</AVAILABILITY> </PLANT> <PLANT> <COMMON>Jacob's Ladder</COMMON> <BOTANICAL>Polemonium caeruleum</BOTANICAL> <ZONE>Annual</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$9.26</PRICE> <AVAILABILITY>022199</AVAILABILITY> </PLANT> <PLANT> <COMMON>Greek Valerian</COMMON> <BOTANICAL>Polemonium caeruleum</BOTANICAL> <ZONE>Annual</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$4.36</PRICE> <AVAILABILITY>071499</AVAILABILITY> </PLANT> <PLANT> <COMMON>California Poppy</COMMON> <BOTANICAL>Eschscholzia californica</BOTANICAL> <ZONE>Annual</ZONE> <LIGHT>Sun</LIGHT> <PRICE>$7.89</PRICE> <AVAILABILITY>032799</AVAILABILITY> </PLANT> <PLANT> <COMMON>Shooting Star</COMMON> <BOTANICAL>Dodecatheon</BOTANICAL> <ZONE>Annual</ZONE> <LIGHT>Mostly Shady</LIGHT> <PRICE>$8.60</PRICE> <AVAILABILITY>051399</AVAILABILITY> </PLANT> <PLANT> <COMMON>Snakeroot</COMMON> <BOTANICAL>Cimicifuga</BOTANICAL> <ZONE>Annual</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$5.63</PRICE> <AVAILABILITY>071199</AVAILABILITY> </PLANT> <PLANT> <COMMON>Cardinal Flower</COMMON> <BOTANICAL>Lobelia cardinalis</BOTANICAL> <ZONE>2</ZONE> <LIGHT>Shade</LIGHT> <PRICE>$3.02</PRICE> <AVAILABILITY>022299</AVAILABILITY> </PLANT> </CATALOG> |
Here are the data source configuration settings required to load this data:
I would like to upgrade my InDesign CS5.5 (or earlier) version of EasyCatalog to CC 2014 but I didn’t find an upgrade path on your site
If you go to our Web-store there’s a product category, which can be selected from the popup at the top, called “Creative Suite (CS) Multi-Version upgrades”. 65bit Software Webstore
I would like to upgrade my InDesign CS6 version of EasyCatalog to CC 2014 but I didn’t find an upgrade path on your site
If you go to our Web-store there’s a product category, which can be selected from the popup at the top, called “Creative Suite (CS) Single-Version upgrades. 65bit Software Webstore
How do I ‘fix’ a column in the EasyCatalog panel so it doesn’t scroll from view?
Holding the shift key down while dragging the left margin will fix the left-most column in the panel view:
Making the decimal part of a price Superscript
This example uses a formatted field and cleansing to make the decimal part of a price Superscript:
How do I tag an untagged table with content?
The “Cell Finder” keyboard short can automatically tag existing table content based on the presence of key values in the table. Here’s a simple example of this in action:
How do I populate a table using only a records key value
EasyCatalog can populate a table providing the table contains the key value of records in an associated data source. This is achieved using the ‘Auto Fill Tables’ keyboard shortcut. In this example, a table is populated using field names contained in the table header:
Do you offer educational discount?
Yes, please contact sales@65bit.com for more information.
Can I extend my trial?
Email us and we’ll do all we can to assist with the evaluation
Registering the InDesign Server version of EasyCatalog
All versions To register a license, call the register method on the easycatalogObject:
1 |
app.easycatalogObject.register ('ESRVXXXXXX-XXXX-XXXX-XXXX-XXXX-XXXX'); |
InDesign Server 2020, or for serial numbers ending ‘-0000’: EasyCatalog will now check with our activation server to ensure that the license can be installed. For the majority of users, activation will be automatic. For users with a firewall or proxy …
Registering the InDesign Server version of EasyCatalog Read More »
Is it possible to fill a table where the data fields are not in a row but in a column?
Select a cell in the table you can use the Table > Table Options menu from the data panel’s pop-out menu and set the ‘Expand’ pop-up to be ‘No Expansion’.
How much does support cost and how does it work?
All our support is free. You’re free to call us, although we prefer email as that gives us something to refer to if we need to support you in future, or if the person you’ve originally been working with isn’t available. If you have a specific project in mind for EasyCatalog, feel free to send …
How much does support cost and how does it work? Read More »
I’ve just upgraded to InDesign CC and my ODBC data source isn’t working
InDesign CC is a 64bit application, whereas previous versions were 32bit. As such a 64bit ODBC driver is required, which needs to be configured in the ODBC Administrator. 32bit only drivers will not work in a 64bit application.
Adding a fake key to an XML data source
Enter [[[INDEX]]] as the Xpath EasyCatalog will just take the index number of the record in the XML.
Change the colour of text that’s placed into a field specifier
The easiest way of doing this is to prefix the field with a formatting tag: e.g. <mystyle>text text text</mystyle> If you set the field to be ‘Formatted’ in its Field Options, you should find that the character style named ‘mystyle’ will be applied to the text in the example above. If you have a field …
Change the colour of text that’s placed into a field specifier Read More »
Is EasyCatalog available for InDesign Server?
Yes, a version of EasyCatalog is available for InDesign Server. It’s a version of EasyCatalog without a user interface, so a script is used to drive EasyCatalog. When using EasyCatalog for Server, it’s typical to have least one desktop license as this is required to edit templates, libraries, etc. Multi-instance servers are also supported, data sources …
What are Formatting Rules and Rule Sets?
Here’s a couple of quick videos that show the basic principles of the formatting rules functionality: This video shows the Rule and Rule Sets concepts: Rules are effectively the same as pagination library items in previous versions of EC. Instead of being stored in libraries, they are stored in the document as a snippet. You …
What is a Custom Field?
A Custom Field is a field the exists in your EasyCatalog panel but not in the source data. A custom field can be populated using one of our inbuilt functions, and are often used to manipulate the source data into a form more suitable for appearance on the page or to summarize group data. To …
How do I stop the “About EasyCatalog” dialog box appearing when launching InDesign?
If any unregistered modules are installed, the dialog box will appear when launching InDesign. To prevent this, re-run the installer and select only the modules you have license codes for.
How do I specify multiple file extensions for images?
On the Field Options dialog provide a list of valid image file extensions, separated by a semi colon: EasyCatalog will attempt to import images using the list of file extensions in the order given in the list, so if you would prefer Photoshop images to be imported instead of JPEGs ensure that the .psd file …
How do I specify multiple file extensions for images? Read More »
Why aren’t my images being placed?
The location of the images is determined by the Field Options: on the image box you will have tagged a Field Specifier, so take a look at the Field Options for that field. On the ‘Picture Content’ pane you should see the folder where EasyCatalog is looking for the images. Failing that, right click on …
Why have I been charged VAT for an online purchase?
Your order was actually placed with our e-commerce provider who is based in the United States but registered for VAT within the EU (you should see that they have an ‘EU’ VAT ID shown at the bottom of the invoice). This is a special type of VAT registration that means they must charge VAT at …
Why have I been charged VAT for an online purchase? Read More »
What is your EU VAT ID for purchases made on the Webstore?
When purchasing through the web store, you actually purchase from an American company called ‘eSellerate’. eSellerate are a US-based company who are registered for VAT in the EU, and their VAT ID is shown on the bottom of your order confirmation with an ‘EU’ prefix. Business customers should enter their EU VAT ID during the …
What is your EU VAT ID for purchases made on the Webstore? Read More »
Can EasyCatalog search in sub-folders for images?
EasyCatalog will only look in the folder that you have specified in the Field Options for the field. This is mainly for performance reasons, as searching sub-folders each time an image is placed could adversely affect performance. However, if the path to the image can be determined using the content of other fields then custom …
Can EasyCatalog search in sub-folders for images? Read More »
Is there any way to work with smaller sets of ODBC-based data?
ODBC Data Sources can be configured to accept parameters which are included as part of the data-retrieval SQL. Parameters should be placed in {{ braces }} for example:
1 |
SELECT * FROM customers WHERE name LIKE '%{{Name}}%' LIMIT {{No Of Records}} |
This will create two parameters that user can change: “Name” and “No Of Records”. Up to five can be specified. The values for these parameters will be …
Is there any way to work with smaller sets of ODBC-based data? Read More »
Does EasyCatalog support Unicode?
Yes, EasyCatalog supports both UTF-8 and UTF-16. If you’re seeing characters coming into EasyCatalog incorrectly check the data source configuration, and the ODBC driver configuration when using an ODBC data source.
Can EasyCatalog produce barcodes?
EasyCatalog supports EAN13 and EAN8 barcodes through the use of a free barcode font. EasyCatalog that can take the 7/8 or 12/13 character EAN code and convert it into the necessary glyphs for the font, using a custom field: Right click in the centre of the panel Use the “New Custom Field” menu option Give …
I’m seeing a duplicate keys error, what does that mean?
EasyCatalog requires that the values in the field(s) you have defined as being ‘key’ fields are unique. This is to enable it to uniquely identify each record in your source data so that if, for example, a record changes position in the data it can still be found. When loading data, EasyCatalog will check the …
I’m seeing a duplicate keys error, what does that mean? Read More »
What is the maximum number of records and fields?
EasyCatalog has no upper limit on the number of records or fields. The only limit is physical memory. InDesign CC and above is a 64 bit application, so can handle very large data sets. Earlier versions of are 32bit and as such limited to addressing around 4GB of memory.
Why are fields shown in red?
Fields are red because the record they relate to cannot be identified. Normally the column ‘rowid’ use used to link the query result data back to original record, but in certain queries this isn’t possible – when using the DISTINCT clause for instance. In this case the field is marked in red and once placed …
Loading XML into a field
EasyCatalog has the ability to load fragments of source XML into a field. This is specified using the “Load as XML Fragment” check box as shown on the “Field Configuration” dialog: When this is checked the entire XML structure at the specified location is loaded into a field. This can be used by the complex …
Using a Relational Data Source in an XML Data Source
Data sources created with the Relational Module can be used as sources of XML Data. The heirarchy modelled in the relational data source is rendered into XML, which can then be used in a regular EasyCatalog panel via the XML data provider.
Field Markers are not visible in the document
The field markers in the document will not be visible if: ‘Hide Field Markers’ has been selected from the data panel’s pop-out menu. This setting is stored with the document. To show the field markers, use the ‘Show Field Markers’ menu option from the panel’s pop-out menu. The document is in ‘Preview’ mode. Switch back …
A new page could not be inserted because the page being paginated into does not have a master applied
This is displayed because EasyCatalog is trying to paginate into a page that does not have a master applied ([None]).
A quick way to retrieve a list of data sources
A quick way to retrieve a list of data sources…
Exporting a CSV file from an ODBC Data Source in EasyCatalog
A CSV file can be exported from an EasyCatalog Panel that is using an ODBC Connection by holding down Shift + Alt and selecting…
How do I retrieve an XML file from a URL?
Navigate to ‘File > New > EasyCatalog Panel > New XML Data Source’; this will open up the…
Iterate down a book, checking documents for changes and updating the panel
Choose a book, choose a datasource, iterate through the book checking documents for changes and updating the panel with the changes…
Iterate down one data source, filtering another panel based on the contents of a field
Iterate down one data source, filtering another panel based on the contents of one of the fields…
Iterate through a data source, exporting one document per record
Iterate through a data source, exporting one document per record in the panel…
Newly added XML fields are not showing in the panel
When adding fields after the initial data source setup they will not appear in the panel until a ‘Synchronize with Data Source’ has been executed.
A new page was inserted but it does not contain any intersecting guides
This is displayed because EasyCatalog has inserted a new page however there is no intersecting guides to define where…
ODBC Data Provider not loading on Macintosh
The following only applies to versions CS5.5 and below…
ODBC Driver architecture mismatch
InDesign CC installs as a 32bit and 64bit version on Windows, so a 32 or 64bit ODBC data source needs…
Open data source and output contents of a named field
Open a data source, create a view for it and then output to the JavaScript console the contents of a named field…
Open data source, sync with data source, open document and paginate at guide positions
Open a data source, close all the panels for it, synchronize with new data, open a new panel, open a document, paginate at guide positions…
Open document, update furniture and save under new name
Open a document, open a data source, update furniture, close data source, save document to a new name…
A new page was inserted but the amount of overset text was not reduced
This is caused by EasyCatalog trying to insert an item into the text flow that is deeper than the frame…
Search and Replace multiple fields
This script shows a dialog that allows for up to 10 search and replace fields to be done at one time…
Creating an index
The easiest way to achieve this is to use the ‘Update Panel->With Page Numbers’ option…
What does ‘Group Repeats Hierarchically’ mean?
This option is used when the group represents a hierarchical structure that can contain an unknown number of levels…
Detecting placed records outside of EasyCatalog
Placed records can be identified outside of EasyCatalog by updating the panel with Page Numbers,..
An error occurred reading the field definition file
The field definitions file is located in ‘EasyCatalog Workspace > DataSourceName > Data > Fields.xml’…
Setting up a FileMaker datasource
Open the ODBC Administrator found in ‘Applications > Utilities’ and select ‘Add’, this will bring up a dialog listing…
An invalid numeric value was used in a Pagination Rules action: ‘XXXX’
This is displayed because a numerical operator is being used in a Pagination Rules Action however the value specified is non numeric…
An unknown group was specified in the ‘Group Name’ attribute for the library item ‘XXXX’
When you set the Pagination Rules of a library item to ‘Once Per Group’ and specify the group in…
‘Grow and Flow’ could not find a frame to continue paginating into in the library item ‘XXXX’
This is displayed when EasyCatalog cannot find a frame to ‘Grow and Flow’ into when using the ‘Continuation’ option…
No intersecting page guides are defined on page X
In order for EasyCatalog to paginate an item when using Guide Based Pagination it must be able to find a guide intersection…
No positions available on page X
This will only be displayed when using Master Based Pagination. When items have been placed…
Pages cannot be automatically inserted because you are not paginating into a master text frame
This is displayed because the document is being paginated into the Master Spread…
Edit multiple field options
To edit multiple fields Alt-click in the column headers to select the fields then right click and use “Field Options…”….
Example XSL using a loop to populate a table
This example uses a loop to fill a table. Each product has a colour code, which is the column…
Exporting custom fields from EasyCatalog to the data source
Custom fields can be exported back to a data source by holding down SHIFT + ALT and selecting…
How to send your workspace folder
If you have contacted support and we need to recreate your configuration here, we will need…
Populate a table with multiple rows per record
When EasyCatalog sees a table in a Product Style, by default it will insert one row per record…
Resetting your InDesign preferences
If lots of data sources are open on start up and they are causing InDesign to become slow or…
Setting up EasyCatalog to use an ODBC data source
Setting up EasyCatalog to use an ODBC Data Source is a straight forward process aslong as the data source has been configured correctly…
Pagination cannot commence, as the pagination library could not be opened
This is displayed because EasyCatalog cannot open the library specified in the ‘Paginate…’ dialog…
Select items from an EasyCatalog panel prior to dragging from a library flagged as ‘EasyCatalog Library’
This is displayed when dragging an item to the page if you have the ‘EasyCatalog Library’ option checked…
What are the differences between the lite and full versions
EasyCatalog Lite is designed for simple ‘link and update’ tasks, so the user is responsible for…
Pagination cannot occur on a master page
This is displayed because the document is being paginated on the master spread, use the ‘Pages’ panel…
Pagination could not start because there were no items available to paginate the selected records
This is displayed because EasyCatalog cannot find a library item to use in the pagination…
Data cannot be loaded because blank field names were found
It could be that there is a populated cell somewhere off the right hand side of the spreadsheet…
Document edited without EasyCatalog loaded
This dialog warns that the document was edited without EasyCatalog being loaded, which is not recommended…
Setting up a document for Guide Based Pagination
To use Guide Based Pagination guides must be created so that EasyCatalog knows where to paginate the items…
The EasyCatalog Pagination plug-in is not compatible with the current version of EasyCatalog
This is caused by a version number mismatch between the Pagination plug-in and the EasyCatalog Base Module…
The item is set to insert ‘Frame Contents’, but has no text boxes
This is displayed because the ‘Insert’ attribute is set to ‘Frame Contents’ on an object that is not a text box…
The library item ‘XXXX’ does not fit within the bounds of the page at the next guide intersection
A library item that overlaps the margin of the page causes this, the error message shows the location where this error occurred…
The “Group Name” has not been specified
This is displayed because a library item is set to ‘Paginate’ ‘Once Per Group’ but no ‘Group Name’ has been specified…
The paragraph style “XXXX” could not be found in the pagination document
This is displayed when EasyCatalog cannot find a paragraph style in the document that is specified in the Pagination Rules…
Unable to apply master page ‘XXXX’
This will only be displayed if the ‘Apply Master Named In’ option is being used in the ‘Paginate…
Fields no longer linked in the document
Each field in the document is linked to the source data using a combination of…
Removing empty fields
Removing these empty fields can be done in one of three ways – here’s a typical example…
Which ODBC Driver should I get?
There are many ODBC Drivers out there on the market both free and commercial; here is a list…
Table population is missing the first record
The header row in the table is not defined as an InDesign header row…
Unable to write to the workspace folder
The EasyCatalog workspace folder is a folder on the computer that stores EasyCatalog’s configuration settings…
What is ‘Multiple Users Share This Workspace’?
Ordinarily the workspace folder which contains data source configurations and a snapshot of the source data — i.e….
An Error Occurred Trying To Install The eSellerate Engine
The eSellerate engine communicates between EasyCatalog and the activation servers…
Maximum number of allowable activations being met
This error is displayed when a serial number that is trying to be activated, has no activations left…
0xe0a00001 error when trying to activate
Activation failed because an error occurred. Please contact…
Transfering Licenses To Another Machine
Activations can be transferred using EasyCatalog with the following steps…
Unable To Write eSellerate DLL On Windows Vista
This problem is being caused by Vista’s permissions model, called UAC…
Why is my pagination slow?
Pagination can become slow for many reasons, one of the most common…