Image processing device, control method for image processing device, and program

The image processing apparatus provides flexible control over print job saving by integrating multiple output management functions, addressing the lack of defined storage operations in driverless printing frameworks, thereby enhancing user convenience and adaptability to diverse usage trends.

JP7881302B2Active Publication Date: 2026-06-29CANON KK

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
CANON KK
Filing Date
2021-12-02
Publication Date
2026-06-29

AI Technical Summary

Technical Problem

In driverless printing frameworks based on standards like IPP, there is a lack of defined operations for specifying storage areas or functions for print jobs, making flexible control of print job saving difficult.

Method used

An image processing apparatus is equipped with multiple output management functions, allowing users to select and manage print jobs based on predetermined conditions, including a function to discard jobs that do not meet these conditions, and supports various storage functions like Job Storage, Hold-Job, and IPP Hold-Job, enabling flexible control over print job saving.

Benefits of technology

Enhances user convenience by allowing flexible control over print job saving, accommodating different usage trends in various installation environments, and ensuring secure and efficient storage options.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007881302000001
    Figure 0007881302000001
  • Figure 0007881302000002
    Figure 0007881302000002
  • Figure 0007881302000003
    Figure 0007881302000003
Patent Text Reader

Abstract

To increase convenience for a user in storing a print job based on a standard such as an IPP.SOLUTION: An MFP 101 comprises a plurality of output management functions including at least a first output management function and a second output management function different from the first output management function, as an output management function that can manage data corresponding to a print job received from the outside and output the data to be managed according to an operation performed by a user. The MFP 101 sets one of the output management functions to deal with a print job satisfying a predetermined condition based on the user operation, and when receiving the print job satisfying the predetermined condition, performs control such that data corresponding to the received print job is managed in association with the set output management function.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an image processing apparatus that receives a print job from the outside.

Background Art

[0002] It has become common to input a print job from a client terminal to an image processing apparatus and save the print job in the storage of the image processing apparatus without discharging the paper (Patent Document 1). In such a printing system, the storage of a print job is selected and printing is instructed using a vendor driver of the image processing apparatus from the client terminal. After the print job is saved in the image processing apparatus based on the instruction, the user moves in front of the image processing apparatus. Then, the print job saved in the image processing apparatus is selected from the operation unit of the image processing apparatus, and printing processing is performed.

[0003] Also, specifications for saving a print job according to a standard printing standard without using a vendor driver are defined in RFC8011 and PWG (Printer Working Group). In Non-Patent Document 1 publicly disclosed by PWG as a prototype, a function called Job Storage is defined as a print extension of IPP. This function is a function of saving a print job input from a print client in an image processing apparatus and performing a release instruction later.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Non-Patent Documents

[0005]

Non-Patent Document 1

[0006] In some cases, an image processing device may offer multiple different saving functions. With such devices, the user selects and uses the appropriate saving function through the vendor driver settings screen provided by the image processing device vendor.

[0007] If we simply implement the print job saving function from standards such as IPP into the image processing device, it is likely that new job saving functions, such as Job Storage, will be added in addition to the existing vendor-specific job saving functions.

[0008] Incidentally, it is expected that the way image processing equipment is used and the tendencies in how its storage functions are utilized will differ depending on the organization or company where the image processing equipment is installed. In other words, it can be inferred that the primary storage functions used will differ depending on the installation environment of the organization or company.

[0009] In this way, in the installation environment, enabling the saving of print jobs using a driverless printing framework based on standards such as IPP, in addition to the commonly used save function, could potentially improve user convenience.

[0010] However, in driverless printing frameworks based on standards such as IPP, while print settings for saving jobs are defined, the operation to specify the storage area or saving function for those jobs is not defined. Therefore, when performing driverless printing based on standards, there is a challenge in that it is not possible to perform flexible control such as saving print jobs for a specific saving function.

[0011] This invention was made in view of the above-mentioned problems. One aspect of this invention is to improve user convenience when saving print jobs. [Means for solving the problem]

[0012] To achieve at least one of the above objectives, the image processing apparatus, as one aspect of the present invention, A first output management function performs a saving process to save data corresponding to print jobs received from an external source, and manages the data saved in the saving process so that it is output according to the operation performed by the user. A function that performs the aforementioned saving process and manages the data saved in the saving process to be output, and a second output management function that is different from the first output management function, A processing means capable of executing multiple output management functions, including, A setting means for determining which output management function will handle print jobs that meet predetermined conditions, based on user operation, A control means that, upon receiving a print job that satisfies the predetermined conditions, controls the output management function set by the setting means to handle the data corresponding to the received print job, to have death, A print job that satisfies the aforementioned predetermined conditions is a print job that conforms to IPP (Internet Printing Protocol) and is a print job in which a Hold-Job operation is specified. If the setting means is configured to indicate that print jobs that meet the predetermined conditions will not be handled by any output management function, and the control means receives a print job that meets the predetermined conditions, the control means discards the received print job. It is characterized by doing so. [Effects of the Invention]

[0013] According to one aspect of the present invention, it is possible to enhance the convenience of the user when saving a print job.

Brief Description of the Drawings

[0014] [Figure 1] It is a diagram showing an example of an image processing system. [Figure 2] It is a diagram showing an example of the hardware configuration of the MFP 101. [Figure 3] It is a sequence diagram explaining a printing procedure. [Figure 4] It is an example of a screen displayed on the operation unit 116 of the MFP 101. [Figure 5] It is an example of a screen displayed on the operation unit 116 of the MFP 101. [Figure 6] It is a flowchart showing an example of the control executed by the MFP 101. [Figure 7] It is a flowchart showing an example of the control executed by the MFP 101. [Figure 8] It is an example of a screen displayed on the client terminal 102. [Figure 9] It is an example of a packet for communication between the MFP 101 and the client 102. [Figure 10] It is an example of a packet in the second embodiment. [Figure 11] It is an example of a screen displayed on the client terminal 102 in the second embodiment. [Figure 12] It is a flowchart showing an example of the control executed by the MFP 101 in the second embodiment.

Modes for Carrying Out the Invention

[0015] Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings. Note that the following embodiments do not limit the invention according to the claims, and not all combinations of the features described in the embodiments are essential for the solution means of the invention.

[0016] )]]END]] <First Embodiment> First, the configuration of the image processing system according to the present invention will be explained using Figure 1. The image processing system according to this embodiment includes an MFP (Multi Function Peripheral) 101 and a client terminal 102. The MFP 101 communicates with the client terminal 102 via the network 100.

[0017] The MFP101 has a scanning function that transmits data based on an image obtained by scanning a document using a reading unit to an external device, a printing function that prints an image onto a sheet such as paper based on a print job received from an external device, and a copying function. In this embodiment, an MFP (Multi-Function Peripheral) with multiple functions is given as an example of an image processing device, but it is not limited to this. For example, it can also be applied to a single-function SFP (Single-Function Peripheral) that has only a printing function.

[0018] Furthermore, the MFP101 of this embodiment has a storage function (also called an output management function) that stores, manages, and outputs data such as print jobs. Print jobs can be stored in the storage area of ​​the MFP101, and when a user operation is received to select and print a saved print job, printing processing based on the selected print job can be performed.

[0019] The client terminal 102 has the function of sending print jobs to the MFP 101. The client terminal 102 is equipped with a print client application that generates print jobs compliant with IPP (Internet Printing Protocol) and sends them to an image processing device such as an image processing device that complies with IPP. In this embodiment, the case in which the print client generates IPP-compliant print jobs is illustrated, but it is not limited to this. It may also be a print application that generates IPP-based print jobs that are based on IPP and have been partially customized, i.e., a print application that generates print jobs in accordance with IPP. Hereafter, the print client application will also be simply referred to as the print client. For example, if the OS of the client terminal 102 is Windows 10 / 11, an IPP class driver compliant with Mopria® is pre-installed. Also, for example, if the OS of the client terminal 102 is MacOS® / iOS® / iPad® OS, a print client compliant with AirPrint® is pre-installed.

[0020] In this embodiment, it is assumed that the print client application described above supports the Job Storage function of the IPP as described above, and that the MFP101 also supports the Job Storage function.

[0021] Furthermore, the MFP101 of this embodiment also provides several different saving functions distinct from the Job Storage function. These different saving functions save print jobs that have been specified for saving from the vendor driver provided by the vendor, and data obtained by the MFP101 after scanning a document, so that they can be printed at any time. Users who wish to use these saving functions can specify the desired saving function as appropriate through the settings screen of the vendor driver provided by the MFP101 vendor and use the saving functions accordingly.

[0022] Here, if the Job Storage function is simply incorporated into the MFP101, it is considered that in addition to the existing job storage function, new modules and applications for supporting the Job Storage function will need to be implemented.

[0023] By the way, it is assumed that the usage trends of the image processing apparatus and the storage function vary depending on the organization or company where the image processing apparatus is installed. That is, it is inferred that the storage function mainly used differs depending on the installation environment such as the organization or company.

[0024] In such an installation environment, it may be possible to enhance the convenience for users by enabling the storage of print jobs in a driverless printing framework based on a standard specification such as IPP for the storage function that is frequently used in normal times.

[0025] However, in a driverless printing framework based on a standard specification such as IPP, although print settings for job storage are defined, operations for explicitly specifying the storage area and storage function for performing the job storage are not defined. Therefore, when performing driverless printing based on a standard specification, it is difficult to perform flexible control to save print jobs for a specific storage function.

[0026] In the present embodiment, in view of the above problems, it is possible to set which storage function of the image processing apparatus the print job is to be associated with and saved. And when saving a print job based on a standard specification such as IPP, a mechanism for switching the save destination according to the setting is provided. This will be specifically described below.

[0027] <Hardware Configuration of MFP101> First, the configuration of the MFP101 will be described. FIG. 2 is a block diagram showing the hardware configuration of the MFP101.

[0028] The control unit 110, including the CPU (Central Processing Unit) 111, controls the operation of the entire MFP 101. The CPU 111 reads control programs stored in the ROM (Read Only Memory) 112 or storage 114 and performs various controls such as print control and read control. The ROM 112 stores control programs that can be executed by the CPU 111. The RAM (Random Access Memory) 113 is the main memory of the CPU 111 and is used as a work area or a temporary storage area for deploying various control programs. The storage 114 stores print data, image data, various programs, and various setting information. In this embodiment, an auxiliary storage device such as an SSD (Solid State Drive) is assumed as the storage 114, but non-volatile memory such as an HDD (Hard Disk Drive) may be used instead of an SSD. In this way, the hardware such as the CPU 111, ROM 112, and RAM 113 constitute a so-called computer.

[0029] In this embodiment of the MFP101, one CPU 111 uses one memory (RAM 113) to execute each process shown in the flowchart described later, but other configurations are also possible. For example, multiple CPUs, RAM, ROM, and storage can work together to execute each process shown in the flowchart described later. Alternatively, some processes may be executed using hardware circuits.

[0030] The control interface (I / F) 115 connects the control unit 116 and the control unit 110. The control unit 116 is equipped with a liquid crystal display with touch panel functionality and various hard keys. The control unit 116 functions as a display unit for displaying information and a reception unit for receiving user instructions.

[0031] The reading unit I / F 117 connects the reading unit 118 and the control unit 110. The reading unit 118 reads documents placed on the document glass or ADF and generates a scanned image. The generated scanned image is stored in the storage 114 or RAM 113. The scanned image generated by the reading unit 118 is transmitted to an external device via the network 100 or used for printing the image onto a sheet.

[0032] The printing interface 119 connects the printing unit 120 and the control unit 110. Read images generated by the reading unit 118 and stored in the storage unit 114 or RAM 113 are transferred from the control unit 110 to the printing unit 120 via the printing interface 119. The printing unit 120 receives the read images via the control unit 110 and prints them onto the sheet. It can also perform printing processing based on print jobs received from external devices or printing processing based on data managed by the storage function. The printing method of the printing unit 120 may be electrophotographic or inkjet. Other printing methods such as thermal transfer can also be applied.

[0033] The communication interface I / F121 is a communication interface provided by the MFP101. The control unit 110 is connected to the network 100 via the communication interface I / F121. The communication interface I / F121 can transmit data to devices and servers on the network 100, or to servers on the internet via gateways on the network 100 (not shown).

[0034] In this embodiment, it is assumed that the communication interface I / F121 is a communication interface that performs wired communication compliant with Ethernet®, but it is not limited to this. For example, it may be a wireless communication interface compliant with the IEEE 802.11 series. Also, the communication interface may be a communication interface that connects to a cellular network (e.g., LTE or 5G).

[0035] <Print Sequence> Next, the printing sequence in this embodiment will be explained using Figure 3.

[0036] First, the user uses the print client on client terminal 102 to add a printer for printing to MFP101. The process for adding a printer varies slightly depending on the OS, but it generally involves searching for printers and selecting a printer from the search results.

[0037] First, client terminal 102 searches for printers such as MFPs on the connected network and displays a list of found printers. Next, the printer selected by the user from the list is added to the print client's output printers (sequence S301). Upon detecting the selection operation, the print client creates a printer object that includes a spooler area for sending print jobs to the printer.

[0038] For the purposes of this explanation, we will assume that MFP101 is selected and added as the output printer for the print client.

[0039] The print client then queries the MFP101 for printing capabilities (S302). The content of the query is explained using Figure 9. Figures 9(a) to (d) are examples of IPP packets communicated between the MFP101 and the client terminal 102. Figure 9(a) is an example of a capability request sent from the print client to the printer. The attribute information "Job-Storage-Supported", "Job-Storage-Access-Supported", and "Job-Storage-Group-Supported" are queries regarding the job storage function. In other words, these attribute information queries which functions of the job storage function are supported. In addition, it includes attribute information that queries whether or not general capabilities are supported, such as whether or not color printing is supported and whether or not duplex printing is supported.

[0040] Upon receiving the print capability inquiry request illustrated in Figure 9(a), MFP101 generates the response packet illustrated in Figure 9(b) and sends it to the client terminal 102 (S303). If it has a print job saving function, it responds with "Hold-Job" in "Operations-supported". This string "Hold-Job" indicates that MFP101 supports the Hold-Job operation.

[0041] The system also responds with information regarding the job storage capabilities. In Figure 9(b), it responds with "any" for Job-Storage-Supported. "any" indicates that the job can be saved even if no specific method of saving is specified.

[0042] This attribute information indicates that the Job-Storage functionality is supported, meaning that as an MFP, it supports the IPP's job storage function. While this embodiment uses "any" as an example response, it is not limited to this. It can also be configured to list and respond with specific supported capabilities.

[0043] On the other hand, if the IPP's Job Storage function is disabled by the operation settings described later, the MFP101 sends a response that does not include Hold-Job attributes or attribute information related to the Job-Storage function, as illustrated in Figure 9(c).

[0044] Upon receiving a capability response from the MFP101, the print client updates the capability information of the destination printer added in S301 based on the attribute information included in the capability response. Subsequently, the print client displays the print settings screen as exemplified in Figure 8 (S304) in accordance with the user operation to call the print settings screen. This print settings screen is generated based on the updated capability information. The user can select either "black and white" or "color" by selecting the "Color" item. The user can also select double-sided printing or single-sided printing from the "Duplex" item. Furthermore, the user can input the number of copies by manipulating the "Copies" item. Finally, by manipulating the "Job-Storage" item, the user can set whether to use the Job-Storage function, that is, whether to enable the job saving setting based on the Job-Storage function. When the print client detects that option 801 has been selected from the pull-down list, it changes the job saving setting to ON, and when it detects that option 802 has been selected, it changes the job saving setting to OFF.

[0045] Users can change the print settings as needed by performing operations on each item. The print start key 803 is used to start printing. The cancel key 804 is used to cancel printing.

[0046] Returning to the explanation in Figure 3, the print client detects that a print command has been issued. Specifically, it detects that the print start key 803 has been pressed (S305).

[0047] When the print client detects that a print command has been issued, it generates a print job based on the specified print settings and sends a print request for the generated print job to the MFP101. (S306)

[0048] Figure 9(d) shows an example of a print job packet sent by the print client to the MFP101 in S306. For illustrative purposes, this example shows a print job generated by the print client when option 801 is selected and the job save setting is changed to ON. The print job has the Hold-Job operation attribute specified, indicating that it will be temporarily saved. It also lists other print settings, information identifying the user who requested the print job (Alice), and information indicating the name of the job (test.pdf). Furthermore, this embodiment illustrates the case where the print client sends a print job with the Store-Only attribute specified, which does not execute printing at the time of job submission, but only stores the file.

[0049] Upon receiving a print job, the MFP101 performs the following processes based on the attribute information of the operations and jobs specified within the print job, including printing the print job as described in the flowchart below, and saving the data based on the print job in association with the save function. The CPU111 of the MFP101, upon receiving the print job, performs the processing based on the operations and attributes specified within the print job. After processing is complete, it sends a success response to the client terminal 102. The MFP101 sends a success response if printing or saving is successful, and sends a failure response if printing or saving fails (S307).

[0050] As explained above, the MFP101 can receive print jobs from IPP print clients and perform printing and job saving processes.

[0051] <Multiple save functions> As mentioned above, the MFP101 of this embodiment has multiple storage functions. These will be explained in detail using Figures 4 and 5. Figure 4(a) is an example of the main menu displayed on the operation unit 116 of the MFP101, and Figure 4(b) is an example of the operation setting screen for the IPP's Job-Storage function. Figures 5(a) to 5(c) are examples of the output data selection screen provided by the storage function.

[0052] Figure 4(a) is an example of the main menu screen displayed after a user logs into the MFP101. Through this screen, the user can select the desired function and use functions such as copying and scanning and sending provided by the MFP101. In addition, the MFP101 in this embodiment has three saving functions. The first saving function is the box saving function, which corresponds to icon 401. The box saving function is an example of the first output management function. The second saving function is the hold printing function, which corresponds to icon 402. The hold printing function is an example of the second output management function.

[0053] The third saving function is the IPP Hold-Job function, which corresponds to icon 403. The IPP Hold-Job function is an example of a third output management function. Each icon is configured to include an icon image and function name that match the characteristics of the saving function.

[0054] Each saving function has different characteristics, and the primary saving function used will vary depending on the installation environment of the organization or company. A brief explanation of the characteristics of these saving functions is provided below. The box saving function, shown in icon 401, is a function that converts print jobs received from the printer driver, etc., into a print-ready format and saves them in a storage location that handles a unique file format suitable for printing. When saving a print job to this area, the MFP101 saves the file, which is a bitmap version of the PDF or PCL data included in the print job, along with the print settings.

[0055] Furthermore, the storage location for the box save function can also store bitmap files obtained by scanning a paper document with the reading unit 118. Files saved using the box save function can be printed or sent externally via the output data selection screen of the box save function, as illustrated in Figure 5(b). Figure 5(b) illustrates a screen showing the state where a file corresponding to the scanned image obtained by scanning a paper document with the reading unit 118 and a file corresponding to a print job received from the driver are saved. Information 511 is information about the file corresponding to the scanned image. Information 512 is information about the file corresponding to the print job submitted from the printer driver. Information 512 includes an icon indicating a pinned mark. This icon is displayed to visually inform the user that a print job has been saved.

[0056] The user can select the files to be output by selecting the areas corresponding to information 511 and 512. Keys 513 and 514 are for selecting the output method. The box function allows for two output methods: printing and sending. After a file has been selected, if key 513 is detected to be pressed, the MFP101 will proceed with printing the selected file.

[0057] Data stored in this box function can be accessed, printed, and sent externally by users other than the one who sent the print job to the box's storage area. Therefore, in environments where there is a lot of work involving saving and reusing template documents used by multiple people, the box function is often used primarily as a storage function. Thus, while files stored in the box function can be output by any user who has access to the MFP101, making it highly convenient, it has the characteristic of not being suitable for storing documents requiring a high level of security.

[0058] Returning to the explanation of Figure 4, let's describe the held print function. The held print function, shown as icon 402, is a function that temporarily holds the print job for printing a document within the MFP101, preventing it from being printed immediately, mainly when printing a document from a printer driver provided by a vendor. In this embodiment, the held print function is configured so that printing of a held print job cannot be performed unless the MFP101 confirms that the user is the one who sent the print job. Let's describe the printing method for printing a print job that has been held by the held print function. After logging into the MFP101, the user performs the user operation of selecting icon 402 from the main menu screen illustrated in Figure 4. Upon detecting the user operation of selecting icon 402, the MFP101 displays the print job selection screen for the held print function. Figure 5(a) is an example of the print job selection screen for the held print function.

[0059] The MFP101 identifies the user logged in, extracts the print jobs corresponding to that user, and displays only the extracted print jobs corresponding to the logged-in user in a list format, as exemplified in information 501 in Figure 5. The user selects the desired print job from this selection screen and issues a print command. After the print job to be printed is selected based on the user's operation, the MFP101 receives the user's operation to select the print start key 502 and executes printing based on the selected print job.

[0060] Thus, by using the hold-print function, it is possible to reduce the risk of important documents being seen by others or mistakenly taken, compared to printing based on each print job received. Based on this feature, in this embodiment, an icon combining a symbolic representation of a key and a symbolic representation of a bundle of documents reminiscent of a print job is displayed as the icon for the hold-print function.

[0061] This section explains the main uses of the print hold function. In organizations with a high level of security awareness, the print hold function is often used primarily as a backup function. Furthermore, some organizations enforce the print hold function for all users by configuring it to temporarily save various print jobs submitted to the MFP using the print hold function. In such environments, the print hold function is often used as the primary tool for saving prints.

[0062] Returning to the explanation of Figure 4, we will now describe the IPP's Hold-Job function. The IPP's Hold-Job function, shown as icon 403, is a storage function that handles only print jobs related to the IPP's Job-Storage function. When "IPP's Hold-Job function" is set as the storage destination via the storage destination setting screen described later, the print jobs are saved in the storage area provided for the IPP's Hold-Job function. We will now describe printing print jobs saved in the storage area for the Hold-Job function. The user selects icon 403 from the main menu exemplified in Figure 4(a). Upon detecting the user's operation of selecting icon 403, MFP101 displays the print job selection screen for the IPP's Hold-Job function exemplified in Figure 5(c). At this time, MFP101 extracts the print jobs saved in the storage area for the Hold-Job function and displays them on the screen in the format of a list, etc., as shown in information 521. Figure 5(c) exemplified the selection screen displayed when "Alice" is logged in. "Alice" and "Bob" belong to the same department. In this embodiment, the MFP101 controls the extraction and display of print jobs belonging to users in the same department as the logged-in user from among the print jobs stored in the storage area for the Hold-Job function.

[0063] The user can select the desired print job from the selection screen and print by pressing the print key 522. This screen also allows for printing instructions specific to IPP's Job-Storage and Job-Release functions, such as the proof print function defined in IPP. The proof print function is a proofing function. After selecting a file, the user can execute printing based on the proof print function by pressing key 523. When this function is selected, the MFP101 prints one test copy. Once the first copy is printed, the MFP101 pauses printing and displays an inquiry screen. The inquiry screen (not shown in the illustration) allows the user to initiate the main print run or cancel the job while printing is paused. Upon detecting that the main print run has been initiated, the MFP101 outputs the specified number of copies.

[0064] This section explains how this save function is used. For example, organizations that primarily perform driverless printing based on standards such as the IPP standard are unfamiliar with conventional printer driver-oriented save functions such as hold print and box save, and therefore do not think to use them. Consequently, it can be inferred that users in organizations that mainly use driverless printing would want to use the save function specifically designed for printing IPP saved jobs. Another advantage is that users can access the save function screen by selecting icon 403, which has a name that clearly indicates that it is for printing IPP saved jobs. Icon 403 is explained below. Icon 403 is composed of a function name that indicates that it is for releasing an IPP job, an image that suggests that a stack of documents resembling a print job is being held, and an arrow image that suggests that the stack of documents in that held state can be output and used.

[0065] In addition, in this embodiment, although it is assumed that files and data for each storage function are stored in physically different storage areas, it is not limited to this. It is also possible to configure to store the files and data of each storage function in a physically identical storage area (for example, the same partition). In this case, the MFP 101 manages by associating identification information that identifies the files and data stored in the storage area and which data should be handled by which storage function. Then, when the MFP 101 receives a selection operation of a storage function by the user, it extracts the data and files associated with the identification information that matches the storage function selected by the user. Then, the MFP 101 displays a selection screen for each storage function based on the extracted data and files.

[0066] <Storage Job Save Settings> Next, the control for setting which storage function of the described image forming apparatus to associate and save the print job designated for saving by IPP will be described using FIG. 4(b). FIG. 4(b) is an example of a screen displayed according to an operation in which a user having administrator authority logs in to the MFP 101 and displays a setting change screen for the IPP job. In FIG. 4(b), an example in which the box storage function is set as the save destination is illustrated as an example. The user can select display items 411 to 413 and set any one of the storage functions as the save destination of the job designated for saving by the IPP job. Note that any of items 411 to 413 can also be changed to a non-selected state. The OK key 414 is a key used when finalizing the setting change, and the cancel key 415 is a key used when canceling the setting change.

[0067] When the OK key 414 is detected to have been pressed, the MFP 101 changes its operation settings based on the settings (selection state) made via the screen shown in Figure 4(b). Specifically, the MFP 101 changes the operation settings that indicate the IPP job save location and the operation settings that indicate whether to enable or disable the IPP Job-Storage function. If either save function is selected, the selected save function is stored in the storage 114 as the operation setting that indicates the IPP job save location. In this case, the operation setting of the IPP Job-Storage function stored in the storage 114 is changed to enable. If neither save function is selected, the operation setting that indicates the IPP job save location stored in the storage 114 is changed to a setting such as "NULL" or "none". In this case, the operation setting of the IPP Job-Storage function stored in the storage 114 is changed to disable.

[0068] Next, the control of the MFP101 based on the above settings will be explained using the flowcharts in Figures 6 and 7. Each operation (step) shown in the flowcharts in Figures 6 and 7 is realized by the CPU 111 calling the program for realizing each control module stored in the ROM 112 or storage 114 into the RAM 113 and executing it. Note that some processes such as transmission and reception are realized through the cooperation of the communication unit I / F 121 and the CPU 111.

[0069] The flowchart shown in Figure 6 is an excerpt of the process related to the notification of capability information in the MFP101.

[0070] In S601, the CPU 111 receives a packet of capability inquiry request from an external device such as the client terminal 102 (corresponding to S302). Specifically, the request received here is the IPP Get-Printer-Attributes Request operation as exemplified in Figure 9(c).

[0071] In S602, CPU 111 determines whether the IPP job saving function is enabled or disabled. CPU 111 retrieves the operation settings for the IPP Job-Storage function from storage 114. If the operation setting is set to enabled, the process proceeds to S603. If the operation setting is not set to enabled (i.e., disabled), the process proceeds to S604.

[0072] In S603, CPU111 generates a response indicating that it supports the IPP job saving function. Specifically, it generates a response that includes information indicating that it supports the "Hold-Job" and "Job-Storage" attributes, as exemplified in Figure 9(b).

[0073] In S404, CPU111 generates a response indicating that it does not support the IPP job saving function. Specifically, it generates a response that does not include "Hold-Job" as exemplified in Figure 9(c), nor does it include attributes related to "Job-Storage".

[0074] Then, in S605, the CPU 111 sends the capability response packet generated in S603 or S604 to the client terminal 102.

[0075] Next, we will explain the IPP print job reception process using Figure 7. Figure 7 is a flowchart that shows excerpts of the process for receiving IPP print jobs in MFP101, as well as the processing after reception.

[0076] In S701, the CPU 111 receives a print job from the client terminal 102 in accordance with IPP. Subsequently, in S702, the CPU 111 determines whether the print job is to be saved based on the attribute information contained in the received print job. For example, if the Hold-Job operation is specified in the operations specified in the job data, the CPU 111 determines that the print job is to be saved and proceeds to S705. On the other hand, if other print operations (e.g., Print-Job or Create-Job) are specified, the process proceeds to S703. Note that job operations other than printing are omitted for the sake of space, but for example, if a Cancel-Job operation is received, appropriate cancellation processing (not shown in the illustration) will be performed. The process in S702 is an example of the process of determining whether a received print job is a print job that meets predetermined conditions.

[0077] In S703, the CPU 111 works in cooperation with the printing unit 120 to execute the printing process based on the received print job. Once the printing process is complete and the printed material is output to the output tray (not shown), the process proceeds to S704. In S704, the CPU 111 sends a response indicating the execution result of the print job to the client terminal that sent the print job, and the receiving process ends for one example.

[0078] Meanwhile, in S705, the CPU 111 obtains the operation setting indicating the IPP job save location from the storage 114. Subsequently, in S706, the CPU 111 determines which save function to associate the IPP save job with, based on the operation setting indicating the job save location obtained in S705. Specifically, if the box save function is specified as the operation setting indicating the job save location, the CPU 111 determines that the save location is the box save function and proceeds to S707. Also, if the hold-print function is specified as the operation setting indicating the job save location, the CPU 111 determines that the save location is the hold-print function and proceeds to S708. Finally, if the IPP Hold-Job function is specified as the operation setting indicating the job save location, the CPU 111 determines that the IPP Hold-Job function is specified and proceeds to S710. Although omitted for space reasons, if the job save location is set to NULL or none, the CPU 111 discards the received print job and proceeds to S704.

[0079] In the S707, CPU111 saves print jobs in association with the Box function. Specifically, it converts IPP format print jobs into raster format files and print setting data, which are file formats supported by the Box function, and saves them as files that can be handled by the Box function.

[0080] In S708, CPU111 refers to the attribute information of the print job and attempts to obtain the user information of the user who submitted the job. Specifically, it obtains the requesting-user-name information included in the capability inquiry request. Subsequently, in S709, CPU111 saves the IPP print job in association with the hold print function. Specifically, it converts the IPP format print job into a job data format internally managed by MFP101 and saves the print job as a print job that can be handled by the hold print function. At this time, the user information obtained in S708 is set as information indicating the owner of the print job and the print job is saved.

[0081] Furthermore, in S708, it may be configured to retrieve user information contained in the job-originating-user-name attribute or the requesting-user-url attribute, which are job attributes of another IPP. In addition, during the process of printing sequences based on IPP, prior user authentication may be performed using basic authentication, digest authentication, or Auth authentication using HTTP communication. When performing this user authentication, it may be configured to identify the owner of the print job using the information of the user who successfully authenticated in the prior user authentication.

[0082] Although omitted for space limitations, there are cases where user information cannot be identified even after attempting to retrieve it from S708. In this case, print jobs for which user information could not be identified can be configured to be canceled as user-unspecified jobs. Alternatively, user-unspecified jobs can be configured to be saved as common jobs accessible to each user of the MFP101.

[0083] Meanwhile, S710 saves the IPP print job in association with the IPP's Hold-Job function. Once the saving processes in S707 / S708 / S710 are complete, the process described in S704 is performed to conclude this example.

[0084] The process described above allows print jobs with specified saving options, such as IPP, to be saved in association with a save function corresponding to the operation settings previously configured by a user with administrator privileges. Data corresponding to print jobs saved in association with any of the save functions during the save process can be printed via one of the output selection screens described in Figures 5(a) to (c).

[0085] <Second Embodiment> In the second embodiment, a mechanism for specifying the print job storage area using the IPP vendor extension area will be described. The hardware configuration of each device in the second embodiment is the same as in the first embodiment. The differences from the first embodiment will be described below.

[0086] Vendor extensions are a mechanism that defines attributes not specified in the IPP standard, allowing for arbitrary print settings. By incorporating modules that interpret these unique attributes on both the sending (print client) and receiving (printer) sides, it is possible to implement vendor-specific extended print settings that are not generally defined. These vendor-specific attributes are also called vendor-defined attribute information.

[0087] This section specifically explains the mechanism for performing extended print settings in an IPP print client. For example, the standard IPP client pre-installed on Windows® 11 for IPP printing can be associated with a PSA to support vendor-specific print settings. PSA stands for Print Support Application. The printer vendor developing the MFP101 provides the OS vendor with a PSA compatible with the MFP101. The OS vendor uploads the PSA, which is a UWP (Universal Windows Platform) application provided by the printer vendor, to an update server. When the OS (Windows 11) installed on the client terminal receives a user operation using the MFP101 with the standard IPP client, it retrieves the PSA from the update server. Subsequently, the client terminal's OS installs the PSA on the client terminal and associates it with the standard IPP client. The associated PSA provides a print settings screen that allows vendor-specific settings based on the attributes of the vendor extension. The PSA also provides a function to change the settings of the IPP print job according to the vendor's needs based on the settings made through the print settings screen.

[0088] The method for notifying the PSA of vendor extension attribute information (capability information for enabling extended print settings) will be explained using Figure 10. Figure 10(a) is an example of a capability response packet that the MFP101 responds to an external terminal such as a client terminal 102 in this embodiment. In this embodiment, the capability response includes a unique attribute such as "cn-job-storage-destination-supported" as exemplified in 1001. This unique attribute indicates a storage function that can be used as a destination. The MFP101 lists keywords that indicate storage destination information to identify a storage function that can be used as a destination as the attribute value of this unique attribute. Specifically, in this embodiment, the keywords "Box Space", "Retention Space", and "IPP Hold Job Space" are listed. "Box Space" is a keyword corresponding to the box function. "Retention Space" is a keyword corresponding to the hold-and-print function. Finally, "IPP Hold Job Space" is a keyword corresponding to the IPP Hold-Job function.

[0089] Upon receiving this response, the PSA on client terminal 102 interprets the vendor extension and displays the detailed settings screen exemplified in Figure 11. Figure 11 is an example of a detailed settings screen for vendor-specific print settings provided by the PSA. Area 1100 is a setting preview area corresponding to the current print settings. It can display the layout of the printed document so that it is immediately clear that it is in black and white and that double-sided printing is being performed. In this way, by using the PSA, it is possible to display a high-functional print setting UI provided by printer vendors who are well-versed in print technology.

[0090] Furthermore, the detailed settings screen displays settings related to Storage-Destination, which are used to select the type of save function based on the vendor extension attribute information. Users can select their desired save function from options 1101 to 1103 by selecting from the corresponding dropdown list for this setting item.

[0091] The OK key 1111 is used to confirm settings made via the detailed settings screen. The Cancel key 1112 is used to cancel settings made via the detailed settings screen.

[0092] When the OK key 1111 is selected, the PSA modifies the print settings managed by the print client to be applied to the IPP print job, according to the vendor's requirements. For example, if option 1101 (box storage function) is selected, information such as "cn-job-storage-destination:“Box Space”" is added to the print settings managed by the print client. After the PSA modifies the current print settings, when the print client issues a print start command via a screen provided by the print client, the print client generates a print job with the modified print settings and sends it to the MFP 101. Figure 10(b) shows an example of a print job packet sent after the print settings have been modified as appropriate. This packet includes attribute information 1002 added by the PSA.

[0093] Thus, in this second embodiment, vendor extension attributes are provided for an IPP client that can associate a print support application to provide vendor-specific functionality. Next, the processing performed by the MFP101 when it receives a print job containing vendor extension attributes will be described using Figure 12.

[0094] Figure 12 is a flowchart illustrating the IPP print data reception process in MFP101, and is an example of additional processing performed in addition to the processes shown in Figure 7 of the first embodiment. In the second embodiment, the processes S1211 to S1213 are executed instead of the process S705 described in Figure 7 of the first embodiment.

[0095] The processing in S701 to S702 is the same as in the first embodiment. In S702, if the CPU 111 determines that saving is specified, it proceeds to S1211.

[0096] In S1211, CPU111 determines whether the IPP job includes a setting that indicates the job storage destination. Specifically, CPU111 determines whether the IPP job's job attributes include attribute information such as "cn-job-storage-destination" and the corresponding attribute value. If it determines that it is included, the process proceeds to S1213; otherwise, the process proceeds to S1212.

[0097] In S1212, CPU 111, similar to S705, obtains the operation setting indicating the IPP job save location from storage 114 and proceeds to S706.

[0098] Meanwhile, in S1213, the CPU 111 obtains the setting indicating the job save location included in the IPP job and proceeds to S706. The job save location determination process from S706 onward is the same as in the first embodiment, so the explanation is omitted.

[0099] As described above, if an IPP job includes a setting that indicates the job save location, that setting can be used preferentially. Therefore, if a job save location is specified by user operation using PSA, it becomes possible to save the data of the print job in association with the job save location specified by user operation using PSA.

[0100] <Variation> In this embodiment, the determination of whether a print job is to be saved in S702 is based on whether Hold-Job is specified in the operation, but this is not the only example. For example, it is conceivable to implement an attribute tag related to the Job-Storage function to the print job of the create-job operation. In this case, it is also possible to configure the system to determine whether a print job is to be saved based on the presence or absence of an attribute tag related to Job-Storage and the content of that attribute tag. For example, it may be configured to determine that a job is to be saved if "job-storage-disposition:store-only" or "job-storage-disposition:print-and-store" is specified. Note that "print-and-store" is an attribute value that indicates that both printing and storing should be performed. Therefore, if this attribute value is specified, the MFP101 will perform the printing process based on the IPP job upon receiving the IPP job, and will also perform the saving process that is executed when Yes is determined in S702. Furthermore, the MFP101 may be configured to determine that saving a print job has been specified even if it does not include the job-storage-disposition attribute but includes other job-storage-related attributes.

[0101] <Other Embodiments> The present invention can also be realized by supplying a program that implements one or more of the functions of each of the embodiments described above to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC or FPGA) that implements one or more functions. [Explanation of Symbols]

[0102] 101 MFP 102 Client terminals

Claims

1. A first output management function performs a saving process to save data corresponding to print jobs received from an external source, and manages the data saved in the saving process so that it is output according to the operation performed by the user. A function that performs the aforementioned saving process and manages the data saved in the saving process so that it is output, and a second output management function that is different from the first output management function, A processing means capable of executing multiple output management functions, including, A setting means for determining which output management function will handle print jobs that meet predetermined conditions, based on user operation, A control means that, upon receiving a print job that satisfies the predetermined conditions, controls the output management function set by the setting means to handle the data corresponding to the received print job, It has, A print job that satisfies the aforementioned predetermined conditions is a print job that conforms to the IPP (Internet Printing Protocol) and is a print job in which a Hold-Job operation is specified. The image processing apparatus is characterized in that, when the setting means is configured to indicate that print jobs that satisfy the predetermined conditions will not be handled by any output management function, and when a print job that satisfies the predetermined conditions is received, the control means discards the received print job.

2. An image processing apparatus, A first output management function performs a saving process to save data corresponding to print jobs received from an external source, and manages the data saved in the saving process so that it is output according to the operation performed by the user. A function that performs the aforementioned saving process and manages the data saved in the saving process so that it is output, and a second output management function that is different from the first output management function, A processing means capable of executing multiple output management functions, including, A setting means for determining which output management function will handle print jobs that meet predetermined conditions, based on user operation, A control means that, upon receiving a print job that satisfies the predetermined conditions, controls the output management function set by the setting means to handle the data corresponding to the received print job, Reading means and It has, The first output management function is an output management function that manages a bitmap file based on data obtained by reading a document with the reading means, and a file obtained by converting data of a print job received from an external source into bitmap format. The second output management function is a function that temporarily stores print jobs received from an external source in storage, and the second output management function is characterized by providing a function that extracts print jobs of users logged into the image processing device from among the print jobs temporarily stored in the storage, displays a selection screen including a list of the extracted print jobs, and accepts user operations to select the print target.

3. The image processing apparatus according to claim 2, characterized in that the print job that satisfies the predetermined conditions is a print job in accordance with IPP (Internet Printing Protocol) and is a print job in which a Hold-Job operation is specified.

4. The image processing apparatus according to claim 3, wherein the setting means is configured to indicate that print jobs that satisfy the predetermined conditions will not be handled by any output management function, and when a print job that satisfies the predetermined conditions is received, the control means discards the received print job.

5. When the setting means has been configured to indicate that print jobs that satisfy the predetermined conditions will be handled by any output management function, the system further includes a providing means for providing attribute information to a client terminal in accordance with IPP that supports Job-Storage. The image processing apparatus according to claim 1 or 4, characterized in that, if the setting means is configured to indicate that print jobs that satisfy the predetermined conditions will not be handled by any output management function, the providing means does not provide attribute information indicating that it supports the Hold-Job operation to a client terminal in accordance with IPP.

6. The image processing apparatus according to claim 5, wherein, if the setting means has been configured to indicate that a print job satisfying the predetermined conditions will be handled by either output management function, the providing means further provides attribute information as vendor-defined attribute information indicating that it supports the first output management function and the second output management function.

7. Even when a print job that satisfies the predetermined conditions is received, if the print job includes setting information corresponding to vendor-defined attribute information provided by the providing means, which specifies an output management function, the control means controls the data corresponding to the received print job to be managed in association with the output management function specified based on the setting information, as described in claim 6.

8. The image processing apparatus according to any one of claims 1, 3 to 7, characterized in that the plurality of output management functions further include a third output management function provided for the purpose of managing and outputting data for print jobs in accordance with the IPP.

9. If the setting means is configured to handle the data for the first output management function, the data corresponding to the received print job will be handled by the first output management function. If the setting means is configured to handle the data for the second output management function, the data corresponding to the received print job will be handled by the second output management function. The image processing apparatus according to any one of claims 1 to 8.

10. If the settings for handling the first output management function are configured in the setting means, the data corresponding to the received print job is stored in the storage area corresponding to the first output management function. If the setting means is configured to handle the second output management function, the data corresponding to the received print job is stored in the storage area corresponding to the second output management function. The image processing apparatus according to any one of claims 1 to 9.

11. A first output management function performs a saving process to save data corresponding to print jobs received from an external source, and manages the data saved in the saving process so that it is output according to the operation performed by the user. A function that performs the aforementioned saving process and manages the data saved in the saving process so that it is output, and a second output management function that is different from the first output management function, A control method for an image processing device capable of performing multiple output management functions, including, A setting process in which, based on user operation, the output management function to handle print jobs that meet certain conditions is determined, A control step that, when a print job that satisfies the predetermined conditions is received, controls the output management function set in the setting step to handle the data corresponding to the received print job, It has, A print job that satisfies the aforementioned predetermined conditions is a print job that conforms to the IPP (Internet Printing Protocol) and is a print job in which a Hold-Job operation is specified. A control method for an image processing apparatus, characterized in that, in the setting step, a setting is made to indicate that print jobs that satisfy the predetermined conditions will not be handled by any output management function, and when a print job that satisfies the predetermined conditions is received, the control step discards the received print job.

12. A method for controlling an image processing apparatus, A first output management function performs a saving process to save data corresponding to print jobs received from an external source, and manages the data saved in the saving process so that it is output according to the operation performed by the user. A function that performs the aforementioned saving process and manages the data saved in the saving process so that it is output, and a second output management function that is different from the first output management function, A processing step capable of executing multiple output management functions, including, A setting process in which, based on user operation, the output management function to handle print jobs that meet certain conditions is determined, A control step that, when a print job that satisfies the predetermined conditions is received, controls the output management function set in the setting step to handle the data corresponding to the received print job, Reading process and It has, The first output management function is an output management function that manages a bitmap file based on data obtained by reading the original document in the reading process, and a file obtained by converting the data of a print job received from an external source into bitmap format. A control method for an image processing device, characterized in that the second output management function is a function that temporarily stores print jobs received from an external source in storage, and the second output management function extracts print jobs of users logged into the image processing device from among the print jobs temporarily stored in the storage, displays a selection screen including a list of the extracted print jobs, and accepts user operations to select the print target.

13. A program for causing a computer to function as one of the means of an image processing apparatus described in any one of claims 1 to 12.

14. A computer-readable storage medium storing a program for causing the computer to function as one of the means of an image processing apparatus described in any one of claims 1 to 12.