**************************************************
******            JetForm Design 4.0        ******
**************************************************

SPECIAL NOTE:
=============

INGRES and Oracle Support

To design forms for use with INGRES or Oracle 
databases, you will need to use a version of 
JetForm Design and JetForm Filler that 
includes specialized database drivers.

This version of JetForm Design will be 
provided at no additional charge. To reeive 
this version, contact JetForm technical 
Support at (613) 230-4700.

Installing with Windows NT
--------------------------

To install JetForm 4.0 under Windows NT 3.1, 
you must run the File Manager and double-
click on SETUP.EXE on the JetForm Design 
Program Disk 1. Running SETUP from the Run 
command in Program Manager will cause the 
system to lock up.

1.	Errata in the JetForm Design Getting Started 
Manual

P. 79 - Appendix C, Database Support 
Software. The INFORMIX files RDS.IEM and 
SQL.IEM should be located in the directory 
where you installed JetForm Design (i.e. 
JETFORM4).

2.	Errata in the JetForm Design Reference Manual

P.149. Message Type processing is case-
sensitive. For example, the default provided 
for message tracking is "Tracking". If you 
set the message type to "tracking" it will 
not be considered a match.

P.310, Appendix A, JetForm Functions. The 
command string parameter has been expanded to 
include one level of menu qualification to 
resolve ambiguous commands. The syntax is:

Command ("Menu/CommandString)

For example, to select the Delete command 
from the JetNotes menu and not the Delete 
command from the Edit menu, you would define 
the function as:

Command ("JetNotes/Delete")

Do not insert a space on either side of the 
slash.

Note that only a single level of 
qualification is permitted and it must be the 
next higher menu name.

Use:

Command ("Database/Delete")

Don't Use:

Command ("File/Database/Delete")

3.	Workstation Installations - Default Drive 
Location

When the network administrator setups up 
JetForm Design and JetForm Filler for network 
installations (setup /s), the default INI 
files are created using the logical drive 
identifier as mapped by the administrator.

When the administrator performs a workstation 
install, the INI file copied to the user's 
personal JetForm directory still uses that 
logical drive identifier. If the user has a 
different logical drive, the resulting INI 
file must be edited to reflect the correct 
logical drive.


4.	Using Progress

If you are installing JetForm Design to use 
Progress, access the DOS prompt and run 
PROGRESS.BAT (in the JETFORM4 directory).

When you run this batch file, you are 
prompted to identify the network version of 
Progress that you are using:

FTP TCP/IP
LAN Workplace TCP/IP
HP TCP/IP
Wollongong TCP/IP
NETBIOS
SPX

i.e.  PROGRESS . LAN  to select LAN Workplace

NOTE: The .BAT file will suggest you use 
\WINDOWS\SYSTEM as the second parameter but 
JetForm Design requires a period (.).

5.	Using OS/2 Database Manager and DB2/2

Before you can access a DB2/2 or Database 
Manager database, you must bind to it. Note 
that you must bind every database you intend 
to access.

Type:

SQLBIND QEDBM03.BND database_name

where database name is the name of the 
database you wish to access.

Note that you may have to copy the bind file 
QEDBM03.BND from the JetForm directory to the 
server.

6.	Version Checking

When you start JetForm Design, the software 
checks the INI file to verify the version. If 
the software does not find the following 
section and entry, a message appears and 
execution stops.

	[JetForm]
	Version=4.0

Typically, this would happen only if files 
are moved manually after an installation.

7.	Alternate INI File

In normal operation, JetForm Design searches 
the working directory for the file 
JFDESIGN.INI. If you choose, you can set up a 
program icon that uses an alternate INI file. 
For example, the alternate INI file may use a 
different default path structure for form 
files, logos, and the Forms Dictionary.

You identify the alternate INI file right on 
the properties of the JetForm Design program 
icon in the Windows Program Manager. 

C:\JETFORM4\JFDESIGN.EXE -IALTERNATE.INI

The -I parameter followed by the file name 
identifies the alternate INI file to use.

8.	Identifying Database Locations

Different users may map to different logical 
drives on your network. If your network 
supports UNC, always use that designation 
(\\machine name\logical drive) to identify 
your database locations. 

If your database system does not support UNC, 
you have two options. One is to have all  
users map to the same logical drive letter 
for the database location. The other is to 
edit the "Database=" line of the appropriate 
section of each user's \WINDOWS\ODBC.INI 
file.

For example, assume that your organization is 
using dBASE and the databases reside in the 
\CORP\DATABASE directory on the network 
volume. Each database user could edit the 
"Database=" line of the [qedbf] section of 
their ODBC.INI file. They would enter 
X:\CORP\DATABASE (where X: represents the 
logical driver mapping they use to access the 
network volume). Then the designer simply 
identifies the database by name 
(EMPLOYEE.DBF)and not location when the table 
alias is set up.

9.	Supplying a Password for a Paradox Table

When defining database rules or lookups for 
Paradox tables, a Paradox password can be 
supplied by appending ;PASSWORD to the 
Paradox table name. NOTE: The password is 
case sensitive.

10.	Mixing SQL and non-SQL Functions with Paradox 
Tables

JetForm Design interfaces with Paradox tables 
using both SQL functions (new for 4.0) and 
non-SQL functions (available from earlier 
versions).

The SQL functions are available through 
Database Lookup type fields and with the form 
level Select, Insert, Update, and Delete 
rules.

The non-SQL functions are available through 
the DbFetch and DbField 
calculation/validation functions.

You cannot combine SQL and non-SQL functions 
on your form. If you do so, the JetForm 
Filler user will encounter the error:

"Engine already initialized"

If this occurs, modify your form to use 
either only SQL functions or non-SQL 
functions.

You cannot use a READ ONLY Paradox database 
when using SQL access. This SQL access is 
provided at the field level by a Database 
Lookup field and at the form level with 
Select, Insert, Update, and Delete database 
rules.

11.	Column Names Containing Spaces, Backslashes

Note that in SQL rules, database column names 
containing spaces, backslashes, or other non-
standard SQL characters must be enclosed 
within the appropriate delimiter for your 
database system. For example, Paradox and 
Excel require single back quotion marks (`) 
to be recognized correctly. Microsoft Access 
column names containing these characters must 
be enclosed in double quotation marks. Refer 
to the documentation provided with your 
database system for the appropriate delimiter 
character.

12.	Database Update Rules

It is possible to create a database update 
rule with no where clause. JetForm Design 
will issue a warning message if you create 
such as rule. Note that executing an update 
rule withou a where clause will change ALL of 
the records in the table.


13.	Dates and Insert Rules for dBASE Files

The following can be used when inserting 
dates into a dBASE file. 

Set the data field type to TEXT.

Use a picture format of 99/99/99 to ensure 
that the dividers are placed appropriately.

The SQL statement should read:

INSERT into FILE.DBF(NUBMER1, TEXT1, DATE1) 
values (#NUMBER1, '#TEXT1', CTOD('#DATE1'))

Fields:  1:NUMBER1   2:TEXT1   3:DATE1


14.	Adding Database Fields to Your Form

The Match Table Columns to Form Fields dialog 
has an additional command button - Add Field.

When you choose Add Field, the Add field 
dialog appears. This dialog enables you to 
add data fields to your form while you are in 
the match process.

To add a field, enter the field name in the 
Field Name text box. Use the list of table 
columns in the Match Table Columns to Form 
Field dialog as a guide. Type the Width and 
Height for the field. 

When you choose OK, the field is placed on 
the form to the right of the field area. You 
may not see the field as it may be under the 
Match Table Columns to Form Fields dialog. 
When you exit from all dialogs you can pick 
the fields and drag them into position.

Once the fields have been added to the form, 
you can use the Auto Match option to 
automatically match the new fields to the 
table columns. Alternatively, you can 
manually match the field to any of the table 
columns. 


15.	Select Rules and Multiple Page Forms

When defining database select rules for forms 
with multiple pages, you should be aware of 
the following:

1) If the current page in the form is greater 
than one, the field matches in the Match 
Table Columns to Form Fields dialog uses the 
following syntax with the field name:

	<p>:<fieldname>

Where <p> is the page number for that page of 
the form and <fieldname> is the name of the 
field being matched.

If you wish to match fields that are not on 
the current page; you can either open the 
page and then access the Select rule to 
complete the field match, or you can complete 
the match on the current page by entering the 
page and field information in the form 
described above.

16.	Update Rules and Multiple Occurrence Fields

When defining update rules that use data from 
multiple occurrence form fields, you do not 
normally have to include field occurrence 
numbers within the SQL Set statements.

However, if you wish to update a table with 
multiple occurrences using the value from 
another field on the form (such as an invoice 
number), you must include the occurrence 
number for that field enclosed in square 
brackets.

For example the invoice form has header 
information such as:

	Date					DATE
	Invoice Number			INVOICENO
	Customer Name			CUSTNAME
	Customer Address		CUSTADDR
	Invoice Total Amount	INVTOTAL

The form also has multiple occurring fields 
for the invoice details:

	Item Number			ITEMNO
	Product Code			PRODCODE
	Quantity				QTY
	Description			DESCRIPTN
	Unit Price			UNITPRICE
	Total Price			TOTPRICE

Your Update rule for the invoice details 
table would include all of the above elements 
as well as the Invoice Number (INVOICENO). In 
the SQL Set statement created for this rule, 
ensure that the field name INVOICENO is 
followed by the occurrence number [1] as in 
INVOICENO[1].

17.	Database Form Level Rules and Form Sets

Database rules at the form level (Select, 
Insert, Update, and Delete) are not supported 
when using Form Sets in JetForm Filler. 

If you want to use database rules with a 
form, ensure that it is not included as part 
of a form set.

18.	Special Object Group Name

If you create an object group and use the 
Format Group command to assign it a name that 
begins with an underscore (_) such as _LINES, 
then the object group always displays in 
Filler but does not print. This enables the 
form designer to use data entry captions for 
pre-printed forms.

19.	Special Field Name JF_JOB_CARD

There is an additional special field name 
JF_JOB_CARD. If a form contains this field, 
the value in the field is used at the first 
line of the data file when the Filler user 
prints with the option Print to Server 
enabled. This replaces the normal ^JOB 
statement included in the data file.

20.	Graphical Support

JetForm Design 4.0 does not support 
compressed .BMP files or color TIFF files.

21.	JFINFO and Forms Compiled for a Windows Print 
Driver

The utility program JFINFO does not report 
field information for forms compiled for use 
with Windows print drivers.

22.	HP DeskJet 1200C

If you are using the Adobe PostScript driver 
for Windows to print to an HP DeskJet 1200C, 
you should upgrade the driver to Version 
2.1.1 or higher. Contact Hewlett Packard.

23.	ODBC Interface

If you are using the ODBC interface to access 
database software such as FoxPro, you must 
include the JetForm 4.0 directory in your 
PATH.

**************************************************
******            JetForm Filler 4.0        ******
**************************************************

SPECIAL NOTE:
=============

To install JetForm Filler 4.0 under Windows 
NT 3.1, you must run the File Manager and 
double-click on SETUP.EXE on the JetForm 
Filler Program Disk 1. Running SETUP from the 
Run command in Program Manager will cause the 
system to lock up.

1.	Errata in the JetForm Filler Getting Started 
Manual

P. 58 - Appendix B, Database Software 
Support. The INFORMIX files RDS.IEM and 
SQL.IEM should be located in the directory 
where you installed JetForm Filler (i.e. 
JETFORM4).

2.	Errata in the JetForm Filler Reference Manual

P. 24 - File Menu. The File menu now lists 
the last five files accessed. These could be 
data file or compiled form files (.MDF).

P. 74 - The Color dialog presented when you 
select Color from the Field Colors dialog 
does not have a selection for Custom Colors 
as is illustrated.

P. 79 - Forms Server. When Print to JetForm 
Server is selected, the 8 character DOS file 
name is used as the logcial form name in the 
^JOB command.

Two new commands have been added to the 
Position menu. When you choose Next Page, you 
are positioned at the next page in the form. 
When you choose Previous Page, you are 
positioned at the previous page in the form.

3.	Workstation Installations - Default Drive 
Location

When the network administrator setups up 
JetForm Filler for network installations 
(setup /s), the default INI files are created 
using the logical drive identifier as mapped 
by the administrator.

When the administrator performs a workstation 
install, the INI file copied to the user's 
personal JetForm directory still uses that 
logical drive identifier. If the user has a 
different logical drive, the resulting INI 
file must be edited to reflect the correct 
logical drive.

4.	Using Progress

If you are installing JetForm Filler to use 
Progress, access the DOS prompt and run 
PROGRESS.BAT (in the JETFORM4 directory).

When you run this batch file, you are 
prompted to identify the network version of 
Progress that you are using:

FTP TCP/IP
LAN Workplace TCP/IP
HP TCP/IP
Wollongong TCP/IP
NETBIOS
SPX

i.e.  PROGRESS . LAN  to select LAN Workplace

NOTE: The .BAT file will suggest you use 
\WINDOWS\SYSTEM as the second parameter but 
JetForm Design requires a period (.).

5.	Using OS/2 Database Manager and DB2/2

Before you can access a DB2/2 or Database 
Manager database, you must bind to it. Note 
that you must bind every database you intend 
to access.

Type:

SQLBIND QEDBM03.BND database_name

where database name is the name of the 
database you wish to access.

Note that you may have to copy the bind file 
QEDBM03.BND from the JetForm directory to the 
server.

6.	Version Checking

When you start JetForm Filler, the software 
checks the INI file to verify the version. If 
the software does not find the following 
section and entry, a message appears and 
execution stops.

	[JetForm]
	Version=4.0

Typically, this would happen only if files 
are moved manually after an installation.

7.	Additions to JFILLER.INI

"JetFormTextOnly=" was added to the [JfEmail] 
section. If this is set to Yes, the message 
that is sent will not have a .jfm attachment 
and will not have "jfm:" inserted into the 
subject. This setting is intended ONLY for 
users who are sending mail to e-mail systems 
that cannot handle any attachments. The 
default is No and should not be changed for 
most installations.

Two additions were made to the [JfEMail-Vim] 
section. "NotesMail=" is set at installation 
time. If you select Lotus cc:Mail transport 
it is set to "No". If you select Lotus Notes 
transport, it is set to "Yes". 
"SaveSendMessages=" applies to Lotus Notes 
Mail only. If this is set to "Yes", sent 
messages will be saved in the (Not 
Categorized) category. The default setting is 
"No".

"ForceDownload=Y" was added to the [JfEMail-
Mapi] section. This downloads new mail 
messages when you log-in to a MAPI mail 
system. Note that messages are not downloaded 
when you choose Check Mail with a MAPI mail 
system. If it has been some time since you 
logged into your MAPI mail system, we 
recommend that you log-out and log-in again 
to ensure that all recent messages have been 
downloaded.

To regulate the number of hits resulting from 
a database Select rule, the entry 
"SQLFetchListRow=" has been added to the 
[Database] section. The default is 100.

The entry "MaxRecordLen=256" was added to the 
[Prompt] section. This entry controls the 
maximum record length (less 2 bytes for the 
<cr><lf>) of a comma-delimited file created 
through the Export option. The default is 256 
bytes.

A "record" is a comma-separated list of all 
the data for one record of the form. There 
are 2 cases when a record can become 
"wrapped":

1) The total data form a record exceeds the 
value specified for MaxRecordLen. In this 
case, a warning message is issued that 
advises the Filler user that the record was 
wrapped at a specific field and recommends 
that MaxRecordLen be increased.

2) The data for any field exceeds the value 
specified for MaxRecordLen. In this case, a 
warning message is issued that identifies the 
field and recommends that MaxRecordLen be 
increased.

8.	Identifying Database Locations

Different users may map to different logical 
drives on your network. If your network 
supports UNC, the form designer should always 
use that designation (\\machine name\logical 
drive) to identify database locations. 

If the database system does not support UNC, 
there are two options. One is to have all  
users map to the same logical drive letter 
for the database location. The other is to 
edit the "Database=" line of the appropriate 
section of each user's \WINDOWS\ODBC.INI 
file.

For example, assume that your organization is 
using dBASE and the databases reside in the 
\CORP\DATABASE directory on the network 
volume. Each database user could edit the 
"Database=" line of the [qedbf] section of 
their ODBC.INI file. They would enter 
X:\CORP\DATABASE (where X: represents the 
logical driver mapping they use to access the 
network volume). Then the designer simply 
identifies the database by name 
(EMPLOYEE.DBF)and not location when the table 
alias is set up.

9.	Mixing SQL and non-SQL Functions with Paradox 
Tables

JetForm Filler interfaces with Paradox tables 
using both SQL functions (new for 4.0) and 
non-SQL functions (available from earlier 
versions).

The SQL functions are available through 
Database Lookup type fields and with the form 
level Select, Insert, Update, and Delete 
rules.

The non-SQL functions are available through 
the DbFetch and DbField 
calculation/validation functions.

The form designer cannot combine SQL and non-
SQL functions on a form. If the designer has 
done so, the JetForm Filler user will 
encounter the error:

"Engine already initialized"

If this occurs, have the form designer modify 
the form to use either only SQL functions or 
non-SQL functions.

10.	Database Form Level Rules and Form Sets

Database rules at the form level (Select, 
Insert, Update, and Delete) are not supported 
when using Form Sets in JetForm Filler. Those 
menu commands are inactive.

11.	Special Object Group Name

If the form contains an object group that 
uses a name beginning with an underscore (_) 
such as _LINES, then the object group always 
displays in Filler but does not print. This 
enables the form designer to use data entry 
captions for pre-printed forms.

12.	Special Field Name JF_JOB_CARD

There is an additional special field name 
JF_JOB_CARD. If a form contains this field, 
the value in the field is used at the first 
line of the data file when the Filler user 
prints with the option Print to Server 
enabled. This replaces the normal ^JOB 
statement included in the data file.

13.	Forms Server - Server Configuration Path

If you define the path as E:, the directory 
defaults to the working directory. If you 
want to identify the root directory of a 
drive, enter E:\.

14.	OLE Fields

If you open a data file with a linked object 
in it and you don't have access to the link, 
you will get an error that the link can't be 
reestablished, but the link information will 
not be lost. The field turns to a hatched 
purple color if selected and double clicking 
will not be active. If you want to delete the 
link from the field, you can go to Edit-
Delete, otherwise the field contents cannot 
be changed.  

15.	WordNum Function

If the WordNum function would return a value 
greater than 2,147,483,647 or less than 0, 
asterisks are used to indicate an overflow 
condition.

16.	HP DeskJet 1200C

If you are using the Adobe PostScript driver 
for Windows to print to an HP DeskJet 1200C, 
you should upgrade the driver to Version 
2.1.1 or higher. Contact Hewlett Packard.

17.	Form Categories

To further segregate form categories, you can 
add the entry: 

OpenCategoryPath=drive:directory  

to the [Paths] section of the JFILLER.INI.

When JetForm Filler is resolving the location 
of the forms defined within the Forms 
Categories, the location specified in the 
OpenCategoryPath entry is used instead of the 
FormPath location as described on page 166 of 
the JetForm Filler Reference Manual.

In addition, you can identify a sub-category 
within a Form Category as illustrated in the 
following example. 

[Forms Category]
Purchasing=G:\PUBLIC\FORMS\PURCHASING
Accounting=M:\PUBLIC\ACCOUNTING

[Purchasing]
Purchasing Forms=G:\PUBLIC\FORMS\PURCHASING

[Purchasing Forms]
Purchase Order=PURCH01.MDF
Purchase Order Log=PURCH02.MDF

When you start JetForm Filler and select Use 
Form, the following Form Categories would 
appear in the Open Form Category dialog:

- Accounting
+ Purchasing
+ Purchasing Forms
- Purchase Order
- Purchase Order Log

18.	Barcode 128 - Extensions to use Code 
Switching and FNC Commands

Functionality has been added to support the 
extended codes and some non-printable 
function codes for CodeB and CodeC. The 
special extended codes switch from CodeB to 
CodeC and from CodeC to CodeB.

Character		CodeB	CodeC
---------		-----	-----

\B					CODE B
\C			CODE C
\1			FNC 1	FNC 1
\2			FNC 2
\3			FNC 3
\4			FNC 4
\D			DEL
\S			SHIFT

These codes are converted to the appropriate 
Code128 set of bars when printed. The human 
readable text will remove these characters.

Example:

Data typed or in .DAT file:

I\C23003100002271160091\B6!

Produces a Code128B field filled with:

|Start|I|codeC|23|00|31|00|00|22|71|16|00|91|
codeB|6|!|stop

Note that if you want to include a backslash 
as a data character and not an extension, you 
must enter \\ (two backslashes).

19.	ODBC Interface

If you are using the ODBC interface to access 
database software such as FoxPro, you must 
include the JetForm 4.0 directory in your 
PATH.

20.	Mailing Form Sets

When you mail a form set you are given the 
option of including the form set with the 
data. This option includes only the .FST file 
(identifies the forms within the form set) 
and not the actual compiled form (.MDF) 
files. The recipient must have access to the 
forms and the forms must reside in the same 
directory structure on both the sender and 
recipient systems as defined in the form set 
file.

