7526 DCT Reference
The following transaction program commands are arranged by function and
include command format and description.
(Ref #5.)
- Change TOD clock manually. This command can be used only in the last
position of a function key definition.
- This command calls CFRs 0-9.
- f = 0-9 (User defined value)
- nn = number of parameter characters that follow; must be 00 if none
- abcd... = optional parameters for CFR (CFR
returns flag to continue or abort following command)
Note:
See Chapter 9. "Writing Custom Function Routines" for additional information.
- This command concatenates data to the transaction record when the next
data read occurs.
(Ref #6.)
- c = Autotrans TRUE or FALSE
- 0 = FALSE&mdash.Do not append to the transaction record
- 1 = TRUE&mdash.Append to the transaction record (default)
- This command can be called repeatedly in any single transaction
program. The value is set to TRUE at the start of any transaction program.
When a data read operation is executed, the result of the read is saved
in user variable 0, and if Autotrans is TRUE, the data just read is
appended to the transaction record. If Autotrans is FALSE, the data read
is not automatically appended to the transaction record. Data can be
appended to the transaction record by using ":F&mdash.Append Data".
- If Autotrans is FALSE at the end of the transaction, the user must
write the transaction record to the transaction queue file. (Use ":W&mdash Write Data from Source to Target" to write the transaction record to the RS-422 port.) Otherwise, if
Autotrans is TRUE at the end of a transaction, the transaction record is
automatically written to the transaction queue file.
- This command writes data to the RS-422 communications port or the printer
from message
File 8, a user variable, or the transaction record.
- t = Target
- 1 = Printer
- 2 = RS-422 (terminal controller communications)
- s = Source of write
- 0 = From message File 8
- 1 = From user variable; number follows
- 2 = Transaction record
- rrrrr = Record number or user variable number
- rrrrr = Record number in File 8 if s = 0
- rrrrr = 00000-00998 if s = 1 (can write from user variable 0)
- rrrrr = 00100 transaction record, if s = 2
Note:
Special characters can be embedded in strings to be printed by using a
format of \x?? where ?? is the hexadecimal code of the character to be
sent to the printer port. For example, to send a form feed to the
printer, put the code \x0C in the string, at the point you want to go
to the next page.
.
- This command appends data to a user variable from inline strings of
data.
;7 uuullltext...append data to user variable from inline strings of
data.
- uuu = the user variable number (001-998)
- lll = the length of the string (see note for the maximum length value)
- text... = the string to append to the user variable
Note:
The text to be appended and the data currently in the user variable, if any,
must not be greater than the size defined for that user variable. An E03
error is returned if an attempt is made to store more than the allowed number
of bytes into a user variable.
The user variable size is 256 bytes for user variables 1&mdash.3,
and the user-specified size for user variables four (4) and higher (if
defined). See the File 0 Record 00 Parameters for Offsets 140&mdash.145
for additional information on the number of user variables and their size.
.
- This command allows fixed length badge read with validation.
(Ref #7.)
- This command allows alphanumeric key or badge input with validation.
- ll = Length of data
- 01-40 if alphanumeric key input
- 01-99 if badge input
- f = File ID of validation file (0, 2-7, A-Z, a-z)
- 0 = No validation
- 2-7, A-Z, a-z = File ID
- t = Validation type
- 0 = Abort if data is found in the file (negative)
- 1 = Abort if data is not found in the file (positive)
- 2 = Skip if data is found in the file
- 3 = Skip if data is not found in the file
- This command allows data input from various sources with validation.
- a-k = Device mask. The position is set to 1 if a read
from that device is allowed.
Multiple positions can be set, allowing for many combinations.
- a = Numeric keypad (Model 200)
- b = Any alphanumeric key
- c = Reserved (set to 0)
- d = Reserved (set to 0)
- e = Sensor port
- 0 = No sensor input
- 1 = Alphanumeric sensor data allowed
- 2 = Numeric data only allowed
- f-k = Reserved (set to 0)
- r = Type of read
- 0 = Fixed length read
- 1 = Variable length read
- lll = Maximum length of read if variable read or
exact length of read if fixed length read
(actual length or maximum length
returned to the application program, 001-099)
- f = File ID of validation file (0, 2-7, A-Z, a-z)
- 0 = No validation
- 2-7, A-Z, a-z = File ID
- t = Validation type
- 0 = Abort if data is found in the file
- 1 = Abort if data is not found in the file
- 2 = Skip if data is found in the file
- 3 = Skip if data is not found in the file
- e = Echo to display/timeout
- 0 = Echo off, normal timeout
- 1 = Echo on, normal timeout
- 2 = Echo off, wait indefinitely
- 3 = Echo on, wait indefinitely
Data is read into user variable 0.
Device mask parameter a or b must equal 1.
The read times out after timer C timeout unless the read
is to wait indefinitely. Data is obtained from the sensor which has the
data available first.
If Echo is on, the information read is displayed
at the current cursor position.
The current cursor position defines the position where the first
underscore (_) of the input field begins on the display line. The actual
placement of
the cursor for the data entry will still be at the start of the input field
(which is the far right for numeric data and the far left for alphanumeric
data).
If :0 had been used to display a message, the cursor will be
positioned off the screen. If :R is attempting to display data, an
E03 error would result. This can be avoided by using the :E command
to display the message or :U to position the cursor prior to :R.
See note 1 near the top of page reference #4.
- This command reads variable length badge data.
Note:
Variable length reads for I 2 of 5 and UPC barcodes are only supported if an
optional bar code coprocessor is installed. However,
reading variable length Interleaved 2 of 5 (I 2 of 5) bar codes is not advised
due to the nature of the bar code symbology. Valid I 2 of 5 bar codes of
shorter length are often found embedded in longer bar codes.
.
- This command toggles DO point 0 active/inactive for 20 milliseconds.
- This command reads the value of DI/DO point.
- pp = DI/DO point number to be read (00-07)
- This command is capable of reading both digital input and digital output
ports. The value returned is an ASCII 1 or 0 showing whether the requested
port is high or low.
- When a read from DI is requested, the current state is returned.
Incomplete DI interrupts are not reflected in the returned data.
The state must be held high (or low) for at least 30 milliseconds and then held
low (or high) for at least 30
milliseconds for the read to return the value expected.
- This command suspends execution of a transaction program until the value
of the selected DI point has reached the desired value.
- pp = DI point number to read (00-07)
- v = Boolean value to wait for
- 0 = Point cleared
- 1 = Point set
- tt = Timeout in seconds (Range = 00-99)
- 00 = Wait forever (default)
Suspends execution of the currently defined transaction program in File 0
until value of DI point pp equals v. If the DI reading
is not satisfied before the timeout expires, then the transaction program is
cancelled.
If the point is already in the correct state, no wait occurs.
- This command writes the desired value into the selected DO point for a
specified time.
- pp = DO point to write (00-07)
- v = Value to write
- 0 = Clear (output = 5 volts)
- 1 = Set (output = 0 volts)
- 2 or T = Toggle current state of the DO point
- tt = Time in seconds (Range = 00-99)
- 00 = Wait forever (default)
- m = synchronous or asynchronous mode
- 0 = Asynchronous (default)
- 1 = Synchronous
If pp is set for DI instead of DO, a transaction error is
displayed.
If a point is set and the command is to set it for a specified time,
the point is cleared at the end of the specified time.
A way to pulse a DO is for v=T and tt not to
equal zero.
Synchronous mode returns after the specified time duration has expired;
asynchronous mode returns immediately.
This key command displays a message, left justified, on
line 1 and column 1.
- rrr = record number in File 8 to be displayed (000-998).
The third digit is optional and if not found, (rr) is assumed.
Note:
Messages are truncated on a 16-character display.
.
This command displays the message sent from the terminal controller for
display at the current cursor position.
This command shows a message on the display at row xx and column yy.
If row and/or column are out of range for this
DCT display, the transaction is aborted.
This command clears the display and positions the cursor to row 1 and column 1.
- This command sets the cursor position.
- rr = Row number (01-02)
- cc = Column number (01-40)
- This commands allows display data to be entered as a part of a
transaction.
- ss = Starting display position
- Model 100 = 01-16
- Model 200 = 01-80
- Row 1 = 01-40
- Row 2 = 41-80
- ll = Length of data
- Model 100 = 01-16
- Model 200 = 01-80
- This command allows numeric keypad input with validation.
- Optional advanced feature:
- ll = Length of keypad data
- Model 100 = 01-16 characters
- Model 200 = 01-40 characters
- f = File ID of validation file (0, 2-7, A-Z, a-z)
- 0 = No validation
- 2-7, A-Z, a-z = File ID
- t = Validation type
- 0 = Abort if data is found in the file (negative)
- 1 = Abort if data is not found in the file (positive)
- 2 = Skip if data is found in the file
- 3 = Skip if data is not found in the file
- a = Autofill (optional)
- 0 = No fill characters, underscore to length
- 1 = Underscore to length; fill data are ASCII zeroes
- pp = Place the leftmost character of the field at display
position (01-40)
- b = Display buffer
- 0 = Do not use display buffer
- 1 = Use display buffer
Note:
If the display buffer is used to display the data, it will hold the data and
continue to display it until power is cycled, or the Clear key is pressed.
.
- This command allows alphanumeric keypad input with validation.
- Optional advanced feature:
- ll = Length of keypad data
- Model 100 = 01-16 characters
- Model 200 = 01-40 characters
- f = File ID of validation file (0, 2-7, A-Z, a-z)
- 0 = No validation
- 2-7, A-Z, a-z = File ID
- t = Validation type
- 0 = Abort if data is found in the file (negative)
- 1 = Abort if data is not found in the file (positive)
- 2 = Skip if data is found in the file
- 3 = Skip if data is not found in the file
- a = Autofill (optional)
- 0 = No fill characters, underscore to length.
- 1 = Underscore to length; fill data are ASCII spaces
- pp = Place the leftmost character of the field at display
position (01-40)
- b = Display buffer
- 0 = Do not use display buffer
- 1 = Use display buffer
Note:
If the display buffer is used to display the data, it will hold the data and
continue to display it until power is cycled, or the Clear key is pressed.
.
Refer to ":R&mdash.Read Data with Validation".
This command activates selected operator indicator LEDs for the selected
interval.
- l = Selected LED indicator
- 0 = Panel LED 1 (Yellow)
- 1 = Panel LED 2 (Green)
- 2 = Magnetic port A LED1 (Yellow)
- 3 = Magnetic port A LED2 (Red)
- 4 = Magnetic port A LED3 (Green)
- 5 = Magnetic port B LED1 (Yellow)
- 6 = Magnetic port B LED2 (Red)
- 7 = Magnetic port B LED3 (Green)
- B = Beeper
- tt = Number of 20 millisecond intervals to activate indicator
- 00 = Forever (Range = 00-99)
Notes:
- The user can activate multiple indicator LEDs at the same time.
- LED 1 and LED 3 for Port A are not available to this command if the
bar code coprocessor is installed.
l.
transaction control key commands
- This command links two separate transaction programs.
- A second key will always follow.
After execution of the commands defined in the current
transaction program, message 9 from message File 8 is displayed to prompt
for the second key to be pressed.
All information collected by both transaction programs is returned in
a single transmission.
- This command must be used in the first position of a transaction program.
The usual data validation is allowed in the second key.
- A latched key can be the second key (see description under ";2&mdash.Latching Function"), but the second key cannot have a linked function. If it
does, the transaction is aborted and an error message E03 is displayed on
the terminal display.
- This command is used to define all unused key positions.
- This command delays execution of the transaction program for a specified
time.
ll = 01-99 seconds
Note:
Caution should be exercised when using the :D&mdash.Delay
command; for example, in a fast clocking
application with periods of high volume, a delay will increase the time
until the DCT is available for the next transaction.
- This command will allow branching to a different location in the same
transaction or to a location in a different transaction program. The
destination of the branch is defined by a transaction program label
(see ":L&mdash.Program Label")
ddd = the transaction program number
- 000 = Go to the end of this program
- 999 = Current transaction program
- 001&mdash.064 = Other transaction program
LABEL = a variable length label of 1 to 30 characters
- An E09 error will be generated if an unresolved label is encountered
during transaction program execution.
Notes:
- Since the transaction program is parsed and executed as the instructions are
encountered, jumping to the middle of one which has a ;2 (latch) as its
first instruction does not enable latching since the ;2 was not executed.
This is also true for the :8 (link) command.
- Microcode version 2.00 or later is required to use this function.
l.
- This command will allow branching to a different location in the same
transaction or a different transaction program and then return back to the
current location when a ;R (return) command is reached.
ddd = the transaction program number
- 000 = Go to the end of this program
- 999 = Current transaction program
- 001&mdash.064 = Other transaction program
LABEL = a variable length label of 1 to 30 characters, of which the first
15 are significant.
An E09 error will be generated if an unresolved label is encountered
during transaction program execution.
An E08 error will be generated if the number of Gosub and Return commands
are not equal. Specific examples are: Return without a Gosub, more than
25 levels of nesting, or all Gosub calls have not been matched with a Return
on completion of the transaction program.
Notes:
- Since the transaction program is parsed and executed as the instructions are
encountered, jumping to the middle of one which has a ;2 (latch) as its
first instruction does not enable latching since the ;2 was not executed.
This is also true for the :8 (link) command.
- Microcode version 2.00 or later is required to use this function.
l.
- The label marks the destination of a conditional (Conditional Test (;
N)) or unconditional (Goto :G or Gosub :GS) branch,
or key-initiated branching (Onkey-Goto :Z or Onkey-Gosub :ZS)
in the
processing of a transaction program. Labels must be unique within a
transaction program, but may be used in more than one transaction program. The
labels are limited to a length of 30 characters, of which the first 15 are
significant. Labels may not contain characters with a value less than ASCII
0 (hex 30) except the space character.
Note:
Microcode version 2.00 or later is required to use this function.
.
- This command waits for a key to be pressed and then branches to
a different location in the same
transaction or a different transaction program.
:Z tcccdddLABEL(+cccdddLABEL)...
- t = 0 to wait forever, t = 1 to wait for the time specified by Timer C.
ccc = the key number to act upon
- 001&mdash.026 Terminal keys A&mdash.Z
- 027&mdash.028 Next two keys in the keypad matrix after Z
- 031&mdash.040 Terminal keys 1&mdash.9 and 0 respectively
ddd = the transaction program number
- 000 = Go to the end of this program
- 999 = This transaction program
- 001&mdash.064 = Other transaction programs
LABEL = a variable length label of 1 to 30 characters, of which the first
15 are significant.
An E09 error will be generated if an unresolved label is encountered
during transaction program execution.
The '+' (plus sign) is used as a separator between key/label conditions.
There is no limit on the number of key/label sequences.
Note:
Microcode version 2.00 or later is required to use this function.
.
- This command will allow branching to a different location in the same
transaction or a different transaction program and then return back to the
current location when a ;R (return) command is reached.
:ZStcccdddLABEL(+cccdddLABEL)...
- t = amount of time to wait
- 0 = wait forever
- 1 = wait for the time specified by Timer C.
ccc = the key number to act upon
- 001&mdash.026 Terminal keys A&mdash.Z
- 027&mdash.028 Next two keys in the keypad matrix after Z
- 031&mdash.040 Terminal keys 1&mdash.9 and 0 respectively
ddd = the transaction program number
- 000 = Go to the end of this program
- 999 = This transaction program
- 001&mdash.064 = Other transaction programs
LABEL = a variable length label of 1 to 30 characters, of which the first
15 are significant.
An E09 error will be generated if an unresolved label is encountered
during transaction program execution.
The '+' (plus sign) is used as a separator between key/label conditions.
There is no limit on the number of key/label sequences.
Note:
Microcode version 2.00 or later is required to use this function.
.
- This command creates a transaction with function ID and time stamp, plus
sequence number if configured. This command must be the only command in a
transaction program.
- The format of the transaction record created by this command is
as follows:
- Two-byte header (7525 Compatibility mode) or a three-byte header (Enhanced
mode)
- Time stamp as defined in offset 6 in record 00
- Sequence number if configured in offset 21 in record 00
- RS (record separator).
- When used, this command must be at the beginning of the transaction
program. The transaction record created by this transaction program is
processed, and this transaction program executed again.
Notes:
- The latching function can be aborted by pressing the Clear key
during data entry.
- If the timer for operator input expires, the transaction is aborted.
l.
- No transaction is created by this command. This command is normally used
to update the display buffer and must be used at the start of the key
definition.
Note:
This is a 7525 function included for compatibility; using the Automatic
Transaction Command is preferred.
.
This command may be used to assign
an alias identification to the transaction in progress. If the host
system processes transactions differently according to the key or
other event which started the transaction, the alias command can be used to
allow the host to accept a transaction initiated by another event.
For example, a host program may expect the F28 key to identify all
time and attendance transactions. The alias command allows a
7526 DCT, Model 100 (which has no F28 key), to start this transaction from
F1 and alias it to F28.
Note:
If the 7526 is running in 7525 Compatibility mode, the highest value that
can be used for the alias is 63 hex (99 decimal) for buffered mode, and
27 hex (39 decimal) for interactive mode. Any values higher than these
will be rejected, and an E03 error displayed.
.
- nn = the transaction ID to substitute in ASCII hex.
- 00-FF = Transaction program ID
- This command allows branching within a transaction program, depending on
the equality of user variables or user variables and string constants.
If the condition is true, then control is transferred to the label, if
the optional parameters are present. If it is not true, the next command
is executed.
nnn = The user variable to test
Note:
If no additional parameters are present, then the user variable specified
by nnn is tested. If it contains data, the next command is skipped. If it
does not contain data, the next command is executed.
.
- 001&mdash.998 = User variable number
rr = A relational operator
- Possible values are LT (less than), LE (less than or equal), EQ (equal to),
GE (greater than or equal), GT (greater than), and NE (not equal to)
uuu = a user variable number
- 001&mdash.998 = User variable number
ddd = the transaction program number
- 000 = Go to the end of this program
- 999 = The current transaction program
- 001&mdash.064 = Another transaction program
LABEL = ASCII character string not more than 30 characters long.
- Only the first 15 characters of the label are significant. Also, the label
may not contain characters with a value less than ASCII 0 (hex 30) except the
space character.
Note:
Microcode version 2.00 or later is required to use this function.
.
- This command returns program execution back to the transaction program
and command following the Gosub (:GS) or Onkey-Gosub (:ZS) that
called this transaction program subroutine.
Notes:
- An E08 will be returned if there are no Gosub (:GS) or
Onkey-Gosub (:ZS) commands
pending. This is known as a Return without a Gosub.
- Microcode version 2.00 or later is required to use this function.
l.
- This command appends data to a user variable or transaction record from
selected source.
- nnn = Variable to which the data will be appended
- 001-998 = Append to selected user variable number
- 100 = Append to transaction record
- s = Source of string to be appended
- 0 = From message File 8
- 1 = From user variable, number follows
- 2 = Transaction record
- rrrrr = Record number or user variable number
- rrrrr = Record number in File 8 if s = 0
- rrrrr = 00001-00998 if s = 1
- rrrrr = 00100 transaction record, if s = 2
This command erases the contents of the specified user variable
or the transaction record.
- nnn = Variable to clear
- 001-998 = User variable number
- 100 = Transaction record
- This command formats the selected user variable into a field of a specified
length, strips indicated leading and trailing characters, and truncates the
field to the length specified, or fills out the remainder of the field with
the indicated character.
nnn = User variable number
- 001&mdash.998 = User variable number (cannot format user variable 0)
lll = Length of the resulting variable
- 001&mdash.999 = Exact length of resulting variable
- If lll = 000, then only the stripping is done.
r = Strip characters on the right
- 0 = Do not strip characters on right
- 1 = Strip characters on right
ccc = Number in ASCII of the character to strip from the right of the string
(000&mdash.255; usually an ASCII space or zero&mdash.032 or 048)
l = Strip characters on the left
- 0 = Do not strip characters on left
- 1 = Strip characters on left
ccc = Number in ASCII of the character to strip from the left of the string
(000&mdash.255; usually an ASCII space or zero&mdash.032 or 048)
f = Truncation/fill direction
- 0 = Truncate/fill on left
- 1 = Truncate/fill on right
ccc = Number in ASCII of the character used to fill the string
(000&mdash.255; usually an ASCII space or zero&mdash.032 or 048)
Note:
Microcode version 2.00 or later is required to use this function.
.
This command verifies the contents of variable nnn against the
validation specification. It continues with the transaction if
validation succeeds; otherwise, the transaction is cancelled.
- nnn = Variable to verify
- 000-998 = User variable number (can verify user variable 0)
- f = File ID of validation file 2-7, A-Z, a-z
- t = Positive/negative validation type
- 0 = Abort if data is found in the file
- 1 = Abort if data is not found in the file
- 2 = Skip if data is found in the file
- 3 = Skip if data is not found in the file
Note:
The maximum size of user variable data for the :K verify process is 40
bytes.
.