jobdef

Top  Previous  Next

obj=new("jobdef"[,jobname$])

 

The jobdef object can be used to maintain a job definition.  Jobs are composed of several elements, including many that are lists of elements, such as zones and fields. If jobname$ is supplied, that job is loaded at the time the object is created.  You can also use the get() method to load a job at any time.

 

The object instance maintains an in-memory copy of the job as methods are used to manipulate it.  Once all modifications are complete, use the put() method to write the changed job to the job definition file.

 

Properties

 

codeinitialize$, codefinalize$, codezones$, codedetect$, codefields$, codeidentification$, codepreupload$, codepostupload$ contain custom script code for the respective sections.  Code lines are separated with linefeeds ($0A$).

createdby$, createdon are read-only values indicating the job's creating user and julian creation time.

enablenewlib is a boolean (1=true, 0=false) indicating the job can create a new library when transferring.

enableoverwrite is a boolean indicating the job can overwrite existing document images when transferring to a library.

inactive is a boolean indicating the job can't be run.

jobdesc$ is the job's description.

jobname$ is the job name, which identifies the job.  It can be up to 20 alpha-numeric characters.

jobtype$ is the type of job, such as Pick Ticket or AP Invoice.  In the job user interface, the list of jobs is ordered by type, and detect and run actions can work with a single type of job.

lasterrmsg$ will contain an error message when a method is unsuccessful.

singlepage is a boolean indicating when this job runs, all document pages are split into individual files automatically, and all zones are single page zones without page headers.

 

 

Methods

 

deldetect(name$) deletes the named detection row.

delfield(name$) deletes the named data field row.

delparam(name$) deletes the named parameter row.

delzone(name$) deletes the named zone row.

get(name$) loads the specified job, filling all properties and enabling method operations on its structure.

getdetect(name$,prop$) creates the prop$ template with the named detection item. Fields in the template are zone$, operator$, and value$

getdetect(seq,prop$) creates the prop$ template with the row sequence detection item.

getdetects$([detail]) returns a linefeed-delimited list of detection row names.  If detail is true (non-0) the, all properties for each row are returned tab-separated.

getdetects() returns the number of detection rows.

getfield(name$,prop$) creates the prop$ template with the named field item. Fields in the template are name$, description$, type$, value$, filter$, validation$, autofill$.  Multiple filters and validations are separated by semicolons.  Autofill$ can be "1" or null.  Valid types are text, longtext, note, number, date, checkbox, radio, list, lookup, grid, label, hidden, and link.  Special formats:

 

list=item1;item2;...
radio=value1;value2;...
checkbox=caption
lookup=lookup-name
label=label-text
link=link-text (the value$ field contains the actual url, while link-text is the visible text, if a different value is needed)

 

You can also see how these values are structured in the image manager job editor, as the fields match the screen presentation.

 

getfield(seq,prop$) creates the prop$ template with the row sequence field item.

getfields$([detail]) returns a linefeed-delimited list of field row names.  If detail is true (non-0) the, all properties for each row are returned tab-separated.

getfields() returns the number of field rows.

getident(name$,prop$) creates the prop$ template with the named identification item. Fields in the template are name$, description$, value$, validation$, autofill$.  Multiple validations are separated by semicolons.  Autofill$ can be "1" or null.  The names can be library, doctype, docid, subid, subtitle, title, entityid, date, categories, keywords, links, and notes.

getidents$([detail]) returns a linefeed-delimited list of identification row names.  If detail is true (non-0) the, all properties for each row are returned tab-separated.

getidents() returns the number of identification rows.

getparam(name$,prop$) creates the prop$ template with the named field item. Fields in the template are name$, description$, and value$.

getparam(seq,prop$) creates the prop$ template with the row sequence parameter item.

getparams$([detail]) returns a linefeed-delimited list of parameter row names.  If detail is true (non-0) the, all properties for each row are returned tab-separated.

getparams() returns the number of parameter rows.

getzone(name$,prop$) creates the prop$ template with the named zone item. Fields in the template are name$, type$, position$, pages$, and filter$.  Multiple filters are separated by semicolons.  Valid types are bcd, ocr, grid, and col.

getzone(seq,prop$) creates the prop$ template with the row sequence zone item.

getzones$([detail]) returns a linefeed-delimited list of zone row names.  If detail is true (non-0) the, all properties for each row are returned tab-separated.

getzones() returns the number of zone rows.

movefield(name$,position) moves the named field to the specified row position.

moveparam(name$,position) moves the named parameter to the specified row position.

movezone(name$,position) moves the named zone to the specified row position.

put() updates the current job.  Returns 1 for success, 0 for failure.

putdetect(name$,prop$) updates the named detection row with the property template values.

putfield(name$,prop$) updates the named field row with the property template values.

putident(name$,prop$) updates the named identification row with the property template values.

putparam(name$,prop$) updates the named parameter row with the property template values.

putzone(name$,prop$) updates the named zone row with the property template values.