queXF 1.10.0 Released (Simultaneous release with queXML 1.3.0)

queXF 1.10.0 has been released on Sourceforge today.

queXF 1.10.0 and the simultaneous release of queXML 1.3.0 streamlines the paper questionnaire creation process by being able to produce a fully banded questionnaire from queXML. Once the PDF and associated banding XML file is imported to queXF, it is possible to begin scanning completed forms immediately, and export data with full question and value labeling from the original queXML 1.3.0 file.

In addition, queXF 1.10.0 allows for the export of unverified data. This may be useful when your settings allow for very accurate OMR and also to view preliminary results before operator verification is complete.

In the backend - queXF 1.10.0 removes the need for using database views and some redundant tables.

Summary of SVN Log:

  • Updated translation file and translations from Launchpad - Thank you to all those who contributed!
  • Added ability to download data that is not verified (just imported and OMR/OCR'ed)
  • Updated database schema - removed use of views
  • Added new test documents including banding XML document
  • Updated default settings to allow for wider selections on A4 pages by default
  • Updated default box colour to blue which assisted with operator colour blindness
  • Added ability to import banding XML while importing a PDF file
  • Removed references to boxgroups table which was redundant
  • Data output now includes labels and sections/etc if banding XML is used
  • BUG fix: Gave default value of 0 for 'sheets' column in questionnaires table
  • BUG fix: Will not create a new questionnaire if cannot detect all page edges
  • BUG fix: Will not apply transforms if not all edges detected
  • BUG fix: Made sure boxes are processed in sortorder (javascript edit)

Upgrading from 1.9.1:

1. Backup config.inc.php (copy to config.inc.php.bak)
2. Extract the new package over your existing installation of queXF 1.9.1
3. Update the database by running the following SQL:

ALTER TABLE `boxes`
ADD `value` varchar(255) collate utf8_unicode_ci default NULL,
ADD `label` text collate utf8_unicode_ci,
ADD INDEX(`bgid`),
ADD INDEX(`pid`);

ALTER TABLE `boxgroupstype`
ADD `label` text collate utf8_unicode_ci,
ADD `sid` int(11) default NULL;

ALTER TABLE `forms`
ADD INDEX(`qid`);

ALTER TABLE `pages`
ADD INDEX(`qid`);

CREATE TABLE IF NOT EXISTS `sections` (
`sid` int(11) NOT NULL auto_increment,
`qid` int(11) NOT NULL,
`description` text collate utf8_unicode_ci NOT NULL,
`title` text collate utf8_unicode_ci NOT NULL,
PRIMARY KEY (`sid`),
KEY `qid` (`qid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

DROP TABLE IF EXISTS `boxgroups`;
DROP VIEW IF EXISTS `boxeschar`;
DROP VIEW IF EXISTS `boxesfillable`;
DROP VIEW IF EXISTS `boxesgroupstypes`;
DROP VIEW IF EXISTS `boxesnumber`;
DROP VIEW IF EXISTS `boxesbarcode`;
DROP VIEW IF EXISTS `boxessinglemultiple`;
DROP VIEW IF EXISTS `boxestofill`;
DROP VIEW IF EXISTS `boxestype`;
DROP VIEW IF EXISTS `formboxesgroupstype`;
DROP VIEW IF EXISTS `formboxestoverify`;
DROP VIEW IF EXISTS `formboxestoverify2`;
DROP VIEW IF EXISTS `formboxestoverifychar`;
DROP VIEW IF EXISTS `formboxgroupssinglemin`;

4. Copy your config.inc.php.bak file over the extracted config file.