You are here: Job and Form Set Rules Reference > JDT Rules Reference > OMRMarks

OMRMarks

Use this job level rule to generate OMR marks on 1-up documents printed on any supported base system printer or on 2-up documents printed on any AFP printer that supports 2-up printing.

OMR marks are used to indicate ZIP code change, demand feed, inserts and so on. OMR marks are solid boxes placed on a page.

The rule loops through the pages of the form set and creates special sections for each page with the required OMR marks. The OMR marks are based on special settings in your FSISYS.INI or FSIUSER.INI file. The INI file settings use special global variable names, rule names, and conditions to trigger specific OMR marks.

Syntax

;OMRMarks;;Cond(LetterOMR);

Parameter

Description

Cond

(Optional) Indicates special conditions exist for printing OMR marks.

LetterOMR

(Optional) Refers to the data in the Condition table (CONDTBL). The true or false for this condition triggers the printing of the set of OMR marks for particular transaction.

Place this rule after the WriteNAFile rule in the AFGJOB.JDT file.

Note

Example

Here is an example from the Condition table (CONDTBL):

< Conditions >

LetterOMR: LetterCode = "0006" or LetterCode = "0039" or

LetterCode = "0040"

Here is an example from the record dictionary definition:

< Variables >

LetterCode = GVM(CD-LTR-TYPE) Length(4) Type(Char)

LetterCode is a global variable with the name, CD-LTR-TYPE. This variable has a type of Char (character) and a length of four. In this example, any time the condition is true, the system prints OMR marks on the page created for the transaction it is processing.

You must update your FSISYS.INI or FSIUSER INI files as follows.

Enter the path for your table files in the MasterResource control group. Use the TablePath option to define the table file’s path.

< MasterResource >

TablePath = \deflib\

Enter the file name of your Condition table in the Tables control group. Use the Conditions option to define the Condition table’s file name.

< Tables >

Conditions = CondTbl

Create the OMR_Params control group with all necessary options in your FSISYS.INI or FSIUSER INI file.

Here is an example of INI settings for 1-up printing:

< OMR_Params >

Mark = Cord(2100, 2140, 300, 1000), RuleParms(INSERT2),

Rule(FlagFromGVM), When(All)

Mark = Cord(4200, 4240, 300, 1000), Rule(Always), When(All)

Mark = Cord(2100, 2140, 700, 1300), Rule(Always), When(All)

Mark = Cord(6300, 6340, 700, 1300), RuleParms(A-AND-C),

Rule(Always), When(All), Cond(ac)

Here is an example of INI settings for 2-up printing:

< OMR_Params >

Mark = Cord(Left(2100,2140,300,1000),Right(2100,2140,32500,33200)),

RuleParms(Insert2),Rule(FlagFromGVM),Page(B), When(All)

Mark = Cord(Left(4200,4240,300,1000),

Right(4200,4240,32500,33200)), Rule(Always),Page(B), When(All)

Mark = Cord(Left(2100, 2140, 700, 1300), Right(2100, 2140, 32500,

33200)), Rule(Always),Page(B), When(All)

Parameter

Description

Mark

Definition for each OMR mark. You need a definition for each OMR mark that can be generated on a page. For instance if eight is the maximum number of OMR marks per page, you need eight mark definitions in this control group.

Cord(t,b,l,r)

Top, bottom, left, and right coordinates for the page in FAP units (1 inch = 2400 FAP units) for 1-up printing.

Cord(Left(t,b,l,r),Right(t,b,l,r))

Top, bottom, left, and right coordinates for the page in FAP units (1 inch = 2400 FAP units) for 2-up printing. Left is for the left side and right is for the right side of the 2-up paper.

Page()

Indicates which sides to print: Both or B = both left and right; Left or L = left side only; Right or R = right side only.

Rule()

The name of the OMR rule to execute.

RuleParms()

The Input parameter to the rule, as specified in the Rule() parameter.

When(All)

When to print on pages:

All - print on all pages of the transaction output.

FirstOnly – only print on the first page of transaction output.

LastOnly – only print on the last page of the transaction output.

ExceptFirst - print on all pages except the first page.

ExceptLast - print on all pages except the last page.

Cond()

Condition, if true, then print OMR mark.

The OMR rules are:

Rule

Description

Always

Always generate the OMR mark.

Cond()

You can use condition logic for one OMR mark or for the whole set. Here is an example: Cond(ac)

DivertPage

Generates the OMR mark only for a special divert page. This only applies to 2-up printing. If you use this rule, you must also define the DivertOpt and DivertOMR options in the TwoUp control group.

FlagFromGVM

Generates the OMR mark if the GVM variable defined in the RuleParms is set to zero (0) or one (1).

You control generation based on data in an extract record (using the Ext2GVM or Field2GVM rules) or based on a DAL script which uses the SetGVM function.

The GVM variable must be in the RCBDFDFL and TRNDDFDFL files.

ZipCodeChange

Generates the OMR mark only when the ZIP code has changed. You must define the parameter associated with this rule as a global variable or else define it in the RCBDFDFL.DAT file.

< TwoUp >

CounterTbl = Counter.tbl

LMargin = 0

LShift = -240

RShift = 16560

DivertOpt = No

DivertOMR = OMR20

PageSize = 40800

OMR marks are not supported in these situations:

? In 1-up printing when you have multiple copies of the same form
? In 2-up printing when you are printing duplex

See also