To help you and the designer to avoid situations where a mismatch has caused a problem InterFormNG is actually storing a template level in the templates. The template level indicates the level required for fully understanding the contents. If you e.g. open an .itpl file (containing a template), then you may notice this header:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<template xmlns="http://interform400.com/xml/schemas/2010/01/01/" templateLevel="1" designerLevel="3">
...
templateLevel=”1" indicates, that the contents of this template is very simple and can run on any InterFormNG version.
Currently there are these template levels:
Template level |
Functionality |
Introduced in NG versions |
---|---|---|
1 |
Any simple template |
First |
2 |
If..Else (Else was introduced), new barcode styles. |
2014 |
3 |
Use of meta data keys as selection input for e.g. texts, variables or If..else. |
2015 |
4-12 |
Texts Frame width = none, select codesets in code128 barcodes, Resource name added to link element. |
2016 |
13 |
Extended precision for element positions in templates. |
2018 |
So if you e.g. use meta data keys as input in a 2015 version, then you can (and should) no longer use this template in any pre-2015 version, and no template created (or edited) in a 2018 version can be used in a pre-2018 version.
Generally you should only design templates in a designer, that runs the same version as the InterFormNG installation, that is doing the processing.