Method of processing a job, in a printing system, with a composite job ticket

Abstract: A method of processing a job, with compound segments, in a printing system is provided. The method includes the steps of (a) generating a dialog (206), having a set of attributes designating a manner in which compound segments of the job are to be processed by the printing system, and (b) programming the dialog (216,218) so that values are provided for selected ones of the set of attributes. The method further includes the steps of (c) capturing the attribute values (222), programmed in step (b), to obtain a job ticket for a first one of the compound segments and (d) repeating (228) steps (a) - (c) for one or more other compound segments to create a composite job ticket. The compound segments are then processed, in accordance with the composite job ticket, so that one or more copies of the job are delivered (226) to one or more output/storage destinations.

Description: The present invention relates generally to a technique for processing a job, with multiple compound segments, in a printing system and, more particularly, to a method for creating a composite job ticket and processing the multiple compound segments in accordance therewith. Electronic printing systems typically include an input section, sometimes referred to as an input image terminal ("IIT"), a controller, sometimes referred to as an electronic subsystem ("ESS") and an output section or print engine, sometimes referred to as an image output terminal ("IOT"). In one type of electronic printing system, manufactured by Xerox® Corporation, known as the DocuTech® electronic printing system, a job can be inputted to the IIT from, among other sources, a network or a scanner. An example of an IIT with both network and scanner inputs is found in US-A-5,170,340. US-A-5,260,805 discloses an electronic printing system with a touch screen for programming print jobs using job tickets displayed on the screen. The job tickets have various job programming choices together with scaled representations of a print image superimposed on selected print media, and a control for comparing the size of the print image, as originally oriented with the maximum image size. A full message is displayed on the screen, in the event that the print image size exceeds the system maximum image size, even though the print image as displayed fits into the print media. Certain versions of the DocuTech® printing system can be coupled operatively with one or more network clients by way of a DocuTech Network Server. A multiple job ticket scheme adapted for use in a Network DocuTech® Printing System is disclosed in EP-A-0,529,818, in which a Network Printing System includes a print server having a plurality of print queues mapped with one or more mask files. Each of the queues communicates with one or more workstations and upon selecting one of the print queues with a selected workstation a mask file associated with the selected print queue is communicated to a job ticket processing circuit. An interclient job ticket, which represents all of the attributes of all of the printers associated with the print queues is combined with the associated mask file to obtain a user interface dialog job ticket, which user interface dialog job ticket is displayed at the selected workstation. The user interface dialog job ticket displays the attributes of the printer associated with the selected print queue. Various ones of the above references relating to job tickets describe the use of multiple tickets to describe multiple aspects of a single job copy. More particularly, each time a user programs a job for a given output, values are selected from one or more tickets to describe the input/output attributes of a job copy. When the user desires to program a job for a plurality of outputs, a set of one or more job tickets is developed for each designated output. Moreover, when certain attributes, such as stock size, are varied for a given job, multiple sets of one or more job tickets may be required. For a job with a wide variety of attributes and a relatively large number of intended output destinations, it is necessary, with the multiple job ticket schemes of the above-described references to create a relatively large number of individual job ticket sets. Management of such large number of job ticket sets can become cumbersome for a print machine operator, particularly when not all of the job ticket sets are programmed at the same time. It would be desirable to provide a scheme in which a plurality of job copies could be programmed with an integrated ticket so that even a large number of job ticket sets could be managed as one convenient set. EP-A 0,479,494 describes a high speed electronic printing system for processing ordered stock such as tabbed sheets for use in maintaining the prints produced in correct sequence with the tabbed stock. A process for operating a printing system that has a source of electronic pages for use in producing prints, printing means for making prints from said electronic pages, and a controller section for controlling operation of said system to make prints in response to print programming instructions is described. The process is characterized by programming said system to produce a predetermined number of prints on a sheet stock with said prints collated into groups, selecting an ordered stock comprising successive sets of sheets with each sheet in each of said sets being unique and arranged in a predetermined order, determining the number of different sheets of stock per group from the number of said electronic pages in said job and the number of prints to be made, programming a sequence number representing the number of said unique sheets in a set from said sequence number and the number of sheets per group, identifying the number of sheets in the last set in each group printed that must be purged in order to remove excess sheets and maintain correspondence between said electronic images and said sheets, at the end of printing of each group, purging said excess sheets from the last set of said group. EP-A 0,529,808 describes a print manager system for electronic job printing. The print managing system is for a networked job processor of the type having plural PCs, at least one output printer, a print manager, and a network electronically coupling the PCs, printer, and print manager together so as to enable the PCs to utilize the output printer. It is the object of the present invention to provide a scheme in which a plurality of job copies could be programmed with an integrated ticket so that even a large number of job ticket sets could be managed as one convenient set. This object is solved by the method as claimed in independent claim 1. Preferred embodiments of the invention are subject-matters of dependent claims. In accordance with one aspect of the present invention, there is provided a method of processing a job, with a job ticket, in a printing system with a user interface for programming the job with a selected input, the printing system being associated with output/storage destinations, each output/storage destination including an output device or a memory location, the job being represented by a first compound segment and a second compound segment with each compound segment corresponding with the selected input and one of the output/storage destinations, including the steps of: (a) generating a dialog having a set of attributes, the set of attributes designating a manner in which one of first compound segment and the second compound segment are to be processed by the printing system; (b) programming the dialog, with the user interface, so that values are provided for selected ones of the set of attributes; (c) capturing the attribute values, programmed in the step (b), to obtain a job ticket for the one of the first compound segment and the second compound segment; (d) repeating steps (a) - (c) for the other one of the first compound segment and the second compound segment to create a composite job ticket; and (e) processing both the first compound segment and the second compound segment, in accordance with the composite job ticket, so that one or more copies of the job are delivered to one or more of the output/storage destinations. These and other aspects of the invention will become apparent from the following description, the description being used to illustrate a preferred embodiment of the invention when read in conjunction with the accompanying drawings, in which:- Figure 1 is a block diagram depicting a multifunctional, network adaptive printing machine; Figure 2 is a block diagram of a video control module for the printing machine of Figure 1; Figure 3 is a block diagram of a transfer module used in conjunction with the printing machine of Figure 2; Figure 4 is a block diagram of a facsimile card used in conjunction with the printing machine of Figure 2; Figure 5 is a block diagram of a network controller for the printing machine of Figure 1; Figure 6 is a flow diagram illustrating a first embodiment of developing a composite job ticket; Figure 7 is a schematic depiction of a job with two compounds; Figure 8 is a display screen with a plurality of frames respectively configured as compounds, each compound including a plurality of attributes; Figures 9 is a flow diagram illustrating various functions that can be performed on a programmed composite job ticket; and Figures 10 and 11 represent a flow diagram depicting various post creation modifications that can be performed on a stored composite job ticket. Referring to Figure 1, a multifunctional, network adaptive printing system is designated by the numeral 10. The printing system 10 includes a printing machine 12 operatively coupled with a network service module 14. The printing machine 12 includes an electronic subsystem 16, referred to as a video control module (VCM), communicating with a scanner 18 and a printer 20. In one example, the VCM 16, which will be described in further detail below, coordinates the operation of the scanner and printer in a digital copying arrangement In In a digital copying arrangement, the scanner 18 (also referred to as image input terminal (IIT)) reads an image on an original document by using a CCD full width array and converts analog video signals, as gathered, into digital signals. In turn, an image processing system 22 (Figure 2), associated with the scanner 18, executes signal correction and the like, converts the corrected signals into multi-level signals (e.g. binary signals), compresses the multi-level signals and preferably stores the same in electronic precollation (EPC) memory 24. Referring again to Figure 1, the printer 20 (also referred to as image output terminal (IOT)) preferably includes a xerographic print engine. In one example, the print engine has a multi-pitch belt (not shown) which is written on with an imaging source, such as a synchronous source (e.g. laser raster output scanning device) or an asynchronous source (e.g. LED print bar). In a printing context, the multi-level image data is read out of the EPC memory 24 (Figure 2) while the imaging source is turned on and off, in accordance with the image data, forming a latent image on the photoreceptor. In turn, the latent image is developed with, for example, a hybrid jumping development technique and transferred to a print media sheet. Upon fusing the resulting print, it may be inverted for duplexing or simply outputted. It will be appreciated by those skilled in the art that the printer can assume other forms besides a xerographic print engine without altering the concept upon which the disclosed embodiment is based. For example, the printing system 10 could be implemented with a thermal ink jet or ionographic printer. Referring specifically to Figure 2, the VCM 16 is discussed in further detail. The VCM 16 includes a video bus (VBus) 28 with which various I/O, data transfer and storage components communicate. Preferably, the VBus is a high speed, 32 bit data burst transfer bus which is expandable to 64 bit. The 32 bit implementation has a sustainable maximum bandwidth of approximately 60 MBytes/sec. In one example, the bandwidth of the VBus is as high as 100 MBytes/sec. The storage components of the VCM reside in the EPC memory section 30 and the mass memory section 32. The EPC memory section includes the EPC memory 24, the EPC memory being coupled with the VBus by way of a DRAM controller 33. The EPC memory, which is preferably DRAM, provides expansion of up to 64 MBytes, by way of two high density 32 bit SIMM modules. The mass memory section 32 includes a SCSI hard drive device 34 coupled to the VBus by way of a transfer module 36a. As will appear, other I/O and processing components are coupled respectively to the VBus by way of transfer modules 36. It will be appreciated that other devices (e.g. a workstation) could be coupled to the VBus by way of the transfer module 36a through use of a suitable interface and a SCSI line. Referring to Figure 3, the structure of one of the transfer modules 36 is discussed in further detail. The illustrated transfer module of Figure 3 includes a packet buffer 38, a VBus interface 40 and DMA transfer unit 42 . The transfer module 36, which was designed with "VHSIC" Hardware Description Language (VHDL), is a programmable arrangement permitting packets of image data to be transmitted along the VBus at a relatively high transfer rate. In particular, the packet buffer is programmable so that the segment or packet can be varied according to the available bandwidth of the VBus. In one example, the packet buffer can programmed to handle packets of up to 64 Bytes Preferably, the packet size would be reduced for times when the VBus is relatively busy and increased for times when activity on the bus is relatively low. Adjustment of the packet size is achieved with the VBus interface 40 and a system controller 44 (Figure 5). Essentially, the VBus interface is an arrangement of logical components, including, among others, address counters, decoders and state machines, which provides the transfer module with a selected degree of intelligence. The interface 40 communicates with the system controller to keep track of desired packet size and, in turn, this knowledge is used to adjust the packet size of the packet buffer 38, in accordance with bus conditions. That is, the controller, in view of its knowledge regarding conditions on the VBus 28, passes directives to the interface 40 so that the interface can adjust packet size accordingly. Further discussion regarding operation of the transfer module 36 is provided below More particularly, each DMA transfer unit employs a conventional DMA transfer strategy to transfer the packets. In other words, the beginning and end addresses of the packet are used by the transfer unit in implementing a given transfer. When a transfer is complete, the interface 40 transmits a signal back to the system controller 44 so that further information, such as desired packet size and address designations, can be obtained. Referring to Figures 1 and 2, three I/O components are shown as being coupled operatively to the VBus 28, namely a FAX module 48, the scanner or IIT 18, and the printer or IOT 20; however, it should be recognized that a wide variety of components could be coupled to the VBus by way an expansion slot 50. Referring to Figure 4, an implementation for the FAX module, which is coupled to the VBus 28 by way of transfer module 36b, is discussed in further detail. In the preferred embodiment, a facsimile device (FAX) 51 includes a chain of components, namely a section 52 for performing Xerox adaptive compression/decompression, a section 54 for scaling compressed image data, a section 56 for converting compressed image data to or from CCITT format, and a modem 58, preferably manufactured by Rockwell Corporation, for transmitting CCITT formatted data from or to a telephone, by way of a conventional communication line. Referring still to Figure 4, each of the sections 52, 54 and 56 as well as modem 58 are coupled with the transfer module 36b by way of a control line 60. This permits transfers to be made to and from the FAX module 48 without involving a processor. As should be understood, the transfer module 36b can serve as a master or slave for the FAX module in that the transfer module can provide image data to the FAX for purposes of transmission or receive an incoming FAX. In operation, the transfer module 36b reacts to the FAX module in the same manner that it would react to any other I/O component. For example, to transmit a FAX job, the transfer module 36b feeds packets to the section 52 through use of the DMA transfer unit 42 and, once a packet is fed, the transfer module transmits an interrupt signal to the system processor 44 requesting another packet. In one embodiment, two packets are maintained in the packet buffer 38 so that "ping-ponging" can occur between the two packets. In this way, the transfer module 36b does not run out of image data even when the controller cannot get back to it immediately upon receiving an interrupt signal. Referring again to Figure 2, the IIT 18 and IOT 20 are operatively coupled to the VBus 28 by way of transfer modules 36c and 36d. Additionally, the IIT 18 and the IOT 20 are operatively coupled with a compressor 62 and a decompressor 64, respectively. The compressor and decompressor are preferably provided by way of a single module that employs Xerox adaptive compression devices. Xerox adaptive compression devices have been used for compression/decompression operations by Xerox Corporation in its DocuTech® printing system. In practice, at least some of the functionality of the transfer modules is provided by way of a 3 channel DVMA device, which device provides local arbitration for the compression/decompression module. As further illustrated by Figure 2, the scanner 18, which includes the image processing section 22, is coupled with an annotate/merge module 66. Preferably the image processing section includes one or more dedicated processors programmed to perform various desired functions, such as image enhancement, thresholding/screening, rotation, resolution conversion and TRC adjustment. The selective activation of each of these functions can be coordinated by a group of image processing control registers, the registers being programmed by the system controller 44. Preferably, the functions are arranged along a "pipeline" in which image data is inputted to one end of the pipe, and image processed image data is outputted at the other end of the pipe. To facilitate throughput, transfer module 36e is positioned at one end of the image processing section 22 and transfer module 36c is positioned at another end of the section 22. As will appear, positioning of transfer modules 36c and 36e in this manner greatly facilitates the concurrency of a loopback process. Referring still to Figure 2, arbitration of the various bus masters of the VCM 16 is implemented by way of a VBus arbiter 70 disposed in a VBus arbiter/bus gateway 71. The arbiter determines which bus master (e.g. FAX module, Scanner, Printer, SCSI Hard Drive, EPC Memory or Network Service Component) can access the VBus at one given time. The arbiter is made up of two main sections and a third control section. The first section, i.e., the "Hi-Pass" section, receives input bus requests and current priority selection, and outputs a grant corresponding to the highest priority request pending. The current priority selection input is the output from the second section of the arbiter and is referred to as "Priority Select". This section implements priority rotation and selection algorithm. At any given moment, the output of the logic for priority select determines the order in which pending requests will be serviced. The input to Priority Select is a register which holds an initial placement of devices on a priority chain. On servicing requests, this logic moves the devices up and down the priority chain thereby selecting the position of a device's next request. Control logic synchronizes the tasks of the Hi-Pass and the Priority Select by monitoring signals regarding request/grant activity. It also prevents the possibility of race conditions. Referring to Figure 5, the network service module 14 is discussed in further detail. As will be recognized by those skilled in the art, the architecture of the network service module is similar to that of a known "PC clone". More particularly, in the preferred embodiment, the controller 44, which preferably assumes the form of a SPARC processor, manufactured by Sun Microsystems, Inc., is coupled with a standard SBus 72. In the illustrated embodiment of Figure 5, a host memory 74, which preferably assumes the form of DRAM, and a SCSI disk drive device 76 are coupled operatively to the SBus 72. While not shown in Figure 5, a storage or I/O device could be coupled with the SBus with a suitable interface chip. As further shown in Figure 5, the SBus is coupled with a network 78 by way of an appropriate network interface 80. In one example, the network interface includes all of the hardware and software necessary to relate the hardware/software components of the controller 44 with the hardware/software components of the network 78. For instance, to interface various protocols between the network service module 14 and the network 78, the network interface could be provided with, among other software, Netware® from Novell Corp. In one example, the network 78 includes a client, such as a workstation 82 with an emitter or driver 84. In operation, a user may generate a job including a plurality of electronic pages and a set of processing instructions. In turn, the job is converted, with the emitter, into a representation written in a page description language, such as PostScript. The job is then transmitted to the controller 44 where it is interpreted with a decomposer, such as one provided by Adobe Corporation. Referring again to Figure 2, the network service module 14 is coupled with the VCM 16 via a bus gateway 88 of the VBus arbiter/bus gateway 71. In one example, the bus gateway comprises a field programmable gate array provided by XILINX corporation. The bus gateway device provides the interface between the host SBus and the VCM VBus. It provides VBus address translation for accesses to address spaces in the VBus real address range, and passes a virtual address to the host SBus for virtual addresses in the host address range. A DMA channel for memory to memory transfers is also implemented in the bus gateway. Among other things, the bus gateway provides seamless access between the VBus and SBus, and decodes virtual addresses from bus masters, such as one of the transfer modules 36, so that an identifier can be obtained from a corresponding slave component. It will be appreciated by those skilled in the art that many components of the printing system 10 are implemented in the form of a single ASIC. Referring to Figures 2, 3 and 5, further discussion regarding DMA transfer of each of the transfer modules 36 is provided. In particular, in one example, the images of a job are stored in the host memory 74 as a series of blocks which are stored in the EPC memory 24. Preferably, each block comprises a plurality of packets. In operation, one of the transfer modules 36 is provided, by the controller 44, with the beginning address of a block and the size of the block. In turn, for that block, the transfer module 36 effects a packet tranfer and increments/decrements a counter. This procedure is repeated for each packet of the block until the interface 40 determines, by reference to the counter, that the last packet of the block has been transferred. Typically, for each stored image, several blocks are transferred, in a packet-by-packet manner, as described immediately above. Referring to Figure 6, a technique for generating a composite job ticket is discussed. At step 200, the programming of a composite job ticket is initiated. Preferably, the composite job ticket is formed from one or more "compound segments". Referring to Figure 7, a compound segment is defined, herein, as each pair of input/output designations used to describe the processing of a job. In the illustrated embodiment of Figure 7, two compound segments, namely compound segment 202 and compound segment 204, are shown. As will be explained in further detail below, the current embodiment contemplates that, for a given job, the input aspect of each compound remains constant. Referring again to Figure 6, at step 206, a dialog, representing a single compound segment, is generated. As will appear, for a preferred composite ticket, multiple compounds will be formed. Referring to Figure 8, as each compound segment is generated, it will appear on a screen 208, the screen residing on a user interface ("UI") 210 (Figure 2), the user interface being coupled with the VBus 28 by way of a suitable UI interface 212. Any suitable UI such as the Ul used with the DocuTech® printing system, would be appropriate for use as UI 210. Each compound segment includes one or more frame attributes, each frame attribute being shown in a compound card as a blank rectangle. As is known, a job attribute refers to a job characteristic, such as a stock characteristic (e.g. stock size). The attributes serve as directives for the printing system 10 indicating the manner in which a job copy is inputted and/or outputted. Referring again to Figure 6, frame attributes are created for a selected compound segment (step 216) and values for those attributes are, via step 218, entered with the UI 210. In one example, a value would include the degree to which a portion of a job copy is to be edited, e.g. "cropped". Through use of the controller 44 (Figure 5), the values of the selected compound segment are, via step 220, captured. It will be understood that for each compound segment or frame, two tickets, namely an input ticket and an output ticket, are programmed to provide suitable information to the printing system regarding the input/output attributes of the job. For the first programmed frame (step 222), the electronic input and output job tickets are, at step 224, added to the job and, at step 226, the values are set for the attributes to construct input and output electronic job tickets. If further compound segments are to be specified (step 228), then the process loops back to step 206, otherwise, the process process to a checking routine of Figure 9. It will be appreciated that each of the electronic tickets are linked or coupled to one another by way of an appropriate referencing scheme, such as a link list. While, in the preferred embodiment, the electronic tickets are maintained in a link list, in other contemplated embodiments parallelism may be facilitated by placing the electronic tickets in an array. Referring again to step 222, if the frame being programmed is not the first frame, then a conflict check is performed. As will appear, the conflict check insures that only one input is programmed for the job. At step 232, a comparison is performed between the various programmed input tickets of the job. It is then determined, at step 234, whether the job input designator of each programmed input ticket is the same. If the input designators are all the same, then the currently programmed output job ticket is, via step 236, added to the job. On the other hand, in the illustrated embodiment of Figure 9, if a conflict exists between the input designators, then the process, at step 238, prompts the user to resolve the conflict. Referring to Figure 9, after the composite job ticket has been programmed, by way of the routine of Figure 6, a user is provided with an opportunity to modify the programmed composite job ticket in various ways. At step 242, a check is performed to determine if the user wishes to make any modifications prior to processing the job. If the compound segments are all suitably specified, from the user's point of view, the job is then processed (step 244). In one example, the job is processed, with the scanner 18 (Figure 2) and queued in EPC memory 24 for subsequent output to multiple destinations. If the user desires to make further modifications, then the process proceeds to step 246. At step 246, the user may indicate that a modification (or examination) is desired. In this event a compound segment to be fetched is designated (step 248) and the compound segment is fetched from one of the printing system memory sections (step 250). Once the designated compound segment is fetched, a decision is made, at step 252, as to whether it is to be deleted. If deletion is required, a deletion is performed at step 254 and a check is made, at step 256, as to whether another deletion is desired. If another deletion is desired, then the process loops back to step 248, otherwise the process proceeds to step 260 where a determination regarding examination is made. If the user desires to examine a designated compound segment, then an examination opportunity is afforded at step 262. If further examination is required (step 264), then the process loops back to step 248 so that another compound segment can be fetched. If the user decides, at 260, not to examine the fetched compound segment, then the process is routed to step 266 where editing capability is provided. Editing can be achieved with a number of suitable graphics packages. If further editing is required (step 268), then the process loops back to step 248 where another compound segment is fetched. Assuming that no further examination or editing is required (step 264 or 268) then processing of the job is begun at step 244. On the other hand, if the user decides, at step 246 that a new composite job ticket is to be composed, in place of the one just programmed, then the programming process can, by way of a positive decision at step 270, be reentered at step 206 (Figure 6). At step 270, however, the user may decide to abort, which, in such case, a return to a main program, would be initiated. Subsequent to storing the link list of electronic tickets in memory, it may be desirable, among other things, to modify one or more of the stored tickets, delete one or more tickets, or even create another ticket. Referring to Figures 10 and 11, a post creation modification routine can be achieved through use of, among others, four subroutines, namely first subroutine 271, second subroutine 272, third subroutine 272 and fourth subroutine 274. In the illustrated embodiment of Figures 10 and 11, it is assumed that post creation modification is limited to four subroutines. It will be appreciated, however, that other modification subroutines are contemplated by the preferred embodiment. At step 275, the post creation modification routine is initiated and, assuming that any part of the job is still queued (step 276), one of the four subroutines can be performed on that part of the job. It should be recognized that, in many examples, a job will not be maintained in memory after a designated number of copies of the job have been delivered to one or more programmed output destinations. The routine of Figure 10 is performed for those parts of a job that still remain in memory. At step 278, a check is performed to determine if a user desires to examine a part of the job by use of the first subroutine 271. If examination is desired, a frame, corresponding to a designated compound is fetched (step 280) and, at step 282, examined. The process may be continued through use of the decision at step 284. Once the user is finished with the first subroutine (step 286), s/he may proceed to the second subroutine or end. If the user desires to use a subroutine other than the first subroutine (step 278) or simply proceed from the first subroutine (step 286), the process is directed to step 290. If the user desires to modify an existing part of the job, then a frame, corresponding to a designated compound is fetched (step 292) and the user, at step 294, designates a modification to be made with respect to a given value. In one example, the user may alter a previously programmed finishing or stock characteristic. Once the user has designated each value to be altered in the frame, the system, via step 296, prompts the user to confirm such designation. At that time, the user may cancel the designated values (step 298) or permit the system, at step 300, to modify the designated values. The procedure of the second subroutine may be repeated through use of decision block 302. Once the user is finished with the second subroutine (step 304), s/he may proceed to the third subroutine or end. If the user desires to use a subroutine other than the second subroutine (step 290) or simply proceed from the second subroutine (step 304), the process is directed to step 308. Referring to Figure 11, if the user wishes to delete an existing compound (step 310), a selected compound is fetched (step 312) and the user designates, at step 314, a corresponding deletion operation. If the user confirms deletion, at step 314, then the fetched compound is, at step 316, deleted, otherwise, the deletion designation is, at step 318, cancelled. The procedure of the third subroutine may be continued through use of the decision at step 320. Once the user is finished with the third subroutine (step 322), s/he may proceed to the fourth subroutine or end. If the user desires to use the fourth subroutine (step 308) or simply proceed from the third subroutine (step 322), the process is directed to step 326. In the four subroutine model of Figures 10 and 11, it is assumed that any users accessing the fourth subroutine intend to program a job ticket for an additional output. The programming of an additional output is obtained with the steps shown in Figure 6. Through use of decision step 328, a user may program as many additional outputs as required. As each additional electronic job ticket is generated, it is added to the link list of the preexisting composite job ticket. Numerous features of the disclosed embodiment will be appreciated by those skilled in the art: First, the disclosed embodiment discloses a technique for generating a composite job ticket. This technique permits a plurality of job tickets, describing multiple output/storage destinations for copies of the same job, to be stored conveniently as a single set. Storing the plurality of job tickets in this manner facilitates management of the job in that the plurality of job tickets is not dispersed throughout memory. Moreover, a composite job ticket of the sort described above is consistent with the work process of a typical printing system user. More particularly, through use of the composite job ticket the job can be programmed as one job with multiple output/storage destinations rather than as a series of jobs, each having a single output/storage destination. Second, in the technique of the disclosed embodiment the composite job ticket need not be programmed in one programming session. For example, the user can create a set of electronic tickets at one time and store the resulting composite job ticket. Subsequently, the user can retrieve the composite job ticket and add another set of electronic job tickets to the composite job ticket. In this way, all of the sets of electronic job tickets are maintained in the same composite job ticket. Third, the technique of the disclosed embodiment insures that the composite job ticket is internally consistent. More particularly, each set of electronic job tickets preferably includes an input designator and an output designator. The technique includes a subroutine which determines whether each one of the input designators are the same. When the input designator for one of the sets of electronic job tickets varies from other programmed input designators of the job, the user is prompted to make the choice input designators consistent. Finally, the technique of the disclosed embodiment offers a wide variety of post creation modification options for the composite job ticket. In one example, the user can examine one or more parts of the composite job ticket in order to determine if it meets desired specifications. In another example, the user can modify preexisting parts of the composite job tickets. In yet another example, the user can delete designated compounds described by the composite job ticket. In another example, the user can program a job ticket for an additional output.

Claims: A method of processing a job, with a job ticket, in a printing system (10) with a user interface (210) for programming the job with a selected input, the printing system (10) being associated with output/storage destinations, each output/storage destination (34, 51) including an output device or a memory location, the job being represented by a first compound segment and a second compound segment with each compound segment corresponding with the selected input and one of the output/storage destinations (34, 51), comprising: (a) generating (206) a dialog having a set of attributes, the set of attributes designating a manner in which one of the first compound segment and the second compound segment is to be processed by the printing system (10); (b) programming (216, 218) the dialog, with the user interface (210), so that values are provided for selected ones of the set of attributes; (c) capturing (222) the attribute values, programmed in said step (b), to obtain a job ticket for the one of the first compound segment and the second compound segment; (d) repeating (228) steps (a) - (c) for the other one of the first compound segment and the second compound segment to create a composite job ticket; and (e) processing both the first compound segment and the second compound segment, in accordance with the composite job ticket, so that one or more copies of the job are delivered to one or more of the output/storage destinations (34, 51). The method of claim 1, further comprising: (f) storing the composite job ticket in one or more of the memory locations; (g) providing a third compound segment relating to the selected input and a selected one of the output/storage destinations (34, 51); (h) generating (206) a dialog having a set of attributes, the set of attributes designating a manner in which the third compound segment is to by processed by the printing system (10); (i) programming (216, 218) the dialog, with the user interface (210), so that values are provided for selected ones of the set of attributes; (j) capturing (222) the attribute values, programmed in said step (i), to obtain a job ticket for the third compound segment; and (k) adding the job ticket for the third compound segment to the composite job ticket, wherein: said step (e) includes processing the third compound segment in accordance with the composite job ticket. The method of claim 1 or 2 wherein: the composite job ticket includes an input ticket for the first compound segment and an input ticket for the second compound segment; the input ticket for the first compound segment includes an attribute value relating to the selected input; the input ticket for the second compound segment includes an attribute value relating to the selected input; and said method further comprises, subsequent to said step (c): (I) determining whether the attribute value relating to the selected input is the same for each of the input ticket of the first compound segment and the input ticket of the second compound segment. The method of claim 1, further comprising, at a time prior to said step (d), repeating steps (a) - (c) for the other one of the first compound segment and the second compound segment: (m) creating a composite job ticket including the job ticket obtained for the one of the first compound segment and the second compound segment by way of said step (c); (n) storing the created composite job ticket in a memory location; and further comprising, prior to said step (e): (o) supplementing the composite job ticket with the job ticket for the other one of the first compound segment and the second compound segment. The method of claim 4 wherein: the composite job ticket includes an input ticket for the first compound segment and an input ticket for the second compound segment; the input ticket for the first compound segment includes an attribute value relating to the selected input; the input ticket for the second compound segment includes an attribute value relating to the selected input; and said method further comprises, subsequent to said step (o): (p) determining whether the attribute value relating to the selected input is the same for each of the input ticket of the first compound segment and the input ticket of the second compound segment. The method of one of claims 1 to 5, further comprising: (q) modifying one of the attribute values of the composite job ticket. The method of one of claims 1 to 6, further comprising: (r) deleting one of the job tickets obtained by way of said step (c). The method of one of claims 1 to 7 wherein: the composite job ticket includes an output ticket for the first compound segment and an output ticket for the second compound segment; the output ticket for the first compound segment includes an attribute value relating to the selected one of the output device and the memory location; the output ticket for the second compound segment includes an attribute value relating to the selected one of the output device and the memory location; and said step (b) includes programming (216, 218) the attribute value relating to the selected one of the output device and the memory location to be the same for each of the output ticket of the first compound segment and the output ticket of the second compound segment. The method of one of claims 1 to 8, further comprising: (s) associating the job tickets with a link list to create the composite job ticket. The method of one of claims 1 to 9 wherein said step (e) includes scanning a document to generate an electronic document and outputting a representation of the electronic document at one or more output devices.

Inventors: AMBALAVANAR SAMUEL D, AUBERTINE KEVIN F, BETIT JENNIFER L, SALGADO DAVID L, SKLUT ROBERT L, ULRICH DENNIS B, AMBALAVANAR, SAMUEL D., AUBERTINE, KEVIN F., BETIT, JENNIFER L., SALGADO, DAVID L., SKLUT, ROBERT L., ULRICH, DENNIS B.
Applicants: XEROX CORP, XEROX CORPORATION
Application year: 1995
Main classification: G06F3
IPC codes: G06F3