How to build a script with a loop in Spectrum/Portrait Miner 7.1

Product Feature: Data Build Utilities


A build script which previously worked in Spectrum/Portrait Miner 7.0B no longer works in Portrait Miner 7.1.  The following error is displayed from qsbuild:

[echo] Target Main failed: Problem: failed to create task or type for
[echo] Cause: The name is undefined.
[echo] Action: Check the spelling.
[echo] Action: Check that any custom tasks/types have been declared.
[echo] Action: Check that any <presetdef>/<macrodef> declarations have taken place.


This is due to a change in Ant versions between PM 7.0 and PM 7.1, and a library was not being loaded for the qsbuild command.


UPDATED: August 3, 2017
To correct this, close any S/PM sessions then edit the <pmhome>\server\qs7.1\etc\xslt\qsbuild_ant.xsl file.

In the section for defining 'Quadstone and third-party tasks', at line 76, insert the following:

     <taskdef resource="net/sf/antcontrib/antlib.xml"/>

Save the file, then try running the build script which uses a '<for>' loop.

This problem will be fixed in the Spectrum/Portrait Miner 7.2