(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024041245
(43)【公開日】2024-03-27
(54)【発明の名称】情報処理プログラム及び情報処理システム
(51)【国際特許分類】
G06F 3/12 20060101AFI20240319BHJP
B41J 29/38 20060101ALI20240319BHJP
H04N 1/00 20060101ALI20240319BHJP
【FI】
G06F3/12 373
B41J29/38 801
G06F3/12 303
G06F3/12 329
G06F3/12 385
H04N1/00 127A
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022145945
(22)【出願日】2022-09-14
(71)【出願人】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】松岡 佑樹
【テーマコード(参考)】
2C061
5C062
【Fターム(参考)】
2C061AP07
2C061AR01
2C061AR03
2C061AS02
2C061HJ08
2C061HK14
2C061HK15
2C061HK19
2C061HN15
2C061HP00
2C061HQ01
5C062AA05
5C062AA13
5C062AA35
5C062AB38
5C062AB40
5C062AB42
5C062AC04
5C062AC22
5C062AC34
5C062AF06
5C062AF07
(57)【要約】
【課題】画像形成装置毎に変更することなく、ジョブを実行するために設定された設定情報、及びジョブを実行した実績を取得できない不可装置が実行したジョブの設定情報及び実績を予測することができる情報処理プログラム、及び情報処理システムを提供する。
【解決手段】情報処理プログラム34Aは、ジョブを実行するために設定された設定情報、及びジョブを実行した実績を直接取得できない画像形成装置20である不可装置に関する情報をまとめた構造体を取得し、構造体に基づいて、不可装置が実行するジョブの設定情報及び実績を取得する、処理をコンピュータに実行させる。
【選択図】
図4
【特許請求の範囲】
【請求項1】
ジョブを実行するために設定された設定情報、及び前記ジョブを実行した実績を直接取得できない画像形成装置である不可装置に関する情報をまとめた構造体を取得し、
前記構造体に基づいて、前記不可装置が実行する前記ジョブの前記設定情報、及び前記実績を取得する、
処理をコンピュータに実行させる、
情報処理プログラム。
【請求項2】
前記設定情報及び前記実績を直接取得できる前記画像形成装置である可能装置が実行する前記ジョブの前記設定情報及び前記実績を更に取得する、
処理をコンピュータに実行させる、
請求項1に記載の情報処理プログラム。
【請求項3】
前記可能装置が実行する前記ジョブの前記設定情報及び前記実績、及び前記不可装置が実行する前記ジョブの前記設定情報及び前記実績を記憶する、
処理をコンピュータに実行させる、
請求項2に記載の情報処理プログラム。
【請求項4】
前記可能装置が実行する前記ジョブの前記設定情報及び前記実績と、前記不可装置が実行する前記ジョブの前記設定情報及び前記実績と、に基づいて、前記可能装置及び前記不可装置を含む複数の前記画像形成装置のうち、変更すべき前記画像形成装置を提示する、
処理をコンピュータに実行させる、
請求項2に記載の情報処理プログラム。
【請求項5】
前記不可装置が実行する前記ジョブのページ数である論理ページ数、前記ジョブを両面で印刷するか否かを示す両面設定、及び前記ジョブの印刷部数を示す部数設定を前記構造体から取得し、
前記論理ページ数、前記両面設定、及び前記部数設定に基づいて、前記不可装置が前記ジョブを実行した結果物の枚数の予測値を算出する、
処理をコンピュータに実行させる、
請求項1に記載の情報処理プログラム。
【請求項6】
前記設定情報及び前記実績を直接取得できる前記画像形成装置である可能装置が実行した前記ジョブの前記実績を更に取得し、
前記論理ページ数、前記両面設定、前記部数設定、及び前記可能装置が実行した前記ジョブの前記実績に基づいて、前記予測値を算出する、
処理をコンピュータに実行させる、
請求項5に記載の情報処理プログラム。
【請求項7】
前記可能装置が受信した受信ジョブの数、及び実行した前記受信ジョブの数を更に取得し、
前記論理ページ数、前記両面設定、前記部数設定、前記受信ジョブの数、及び実行した前記受信ジョブの数に基づいて、前記予測値を算出する、
処理をコンピュータに実行させる、
請求項6に記載の情報処理プログラム。
【請求項8】
前記可能装置が前記ジョブを実行した結果物の1ページに割り当てた前記ジョブの数を更に取得し、
前記論理ページ数、前記両面設定、前記部数設定、及び前記1ページに割り当てた前記ジョブの数に基づいて、前記予測値を算出する、
処理をコンピュータに実行させる、
請求項6に記載の情報処理プログラム。
【請求項9】
前記不可装置が前記ジョブの実行を開始する場合に、前記構造体を取得する、
処理をコンピュータに実行させる、
請求項1に記載の情報処理プログラム。
【請求項10】
請求項1に記載の情報処理プログラムを記憶した情報処理装置と、
前記不可装置と、
前記設定情報及び前記実績を直接取得できる前記画像形成装置である可能装置と、を備えた、情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理プログラム及び情報処理システムに関する。
【背景技術】
【0002】
特許文献1には、ネットワークに接続された機器の情報を取得する情報処理装置が開示されている。この情報処理装置は、ネットワーク上の機器を検索する検索手段と、前記検索手段で検索された機器の識別情報を取得する識別情報取得手段と、を備える。また、この情報処理装置は、前記識別情報取得手段で取得された識別情報に基づき、前記検索手段で検索された機器が有する機器情報を取得する機器情報取得手段を備える。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の情報処理装置は、画像形成装置の機器情報がまとめられたWeb(World Wide Web)ページを解析することで、ジョブを実行するために設定された設定情報、及びジョブを実行した実績を直接取得できない不可装置が実行したジョブの設定情報及び実績を取得する。Webページは画像形成装置が公開している。しかし、この情報処理装置が複数の画像形成装置と接続している場合、画像形成装置毎にWebページの解析方法を作成しなければならないという課題があった。
【0005】
本開示は、画像形成装置毎に変更することなく、上記不可装置が実行したジョブの設定情報及び実績を取得することができる情報処理プログラム、及び情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するために、第1態様に係る情報処理プログラムは、ジョブを実行するために設定された設定情報、及び前記ジョブを実行した実績を直接取得できない画像形成装置である不可装置に関する情報をまとめた構造体を取得し、前記構造体に基づいて、前記不可装置が実行する前記ジョブの前記設定情報、及び前記実績を取得する、処理をコンピュータに実行させる。
【0007】
また、第2態様に係る情報処理プログラムは、第1態様に係る情報処理プログラムにおいて、前記設定情報及び前記実績を直接取得できる前記画像形成装置である可能装置が実行する前記ジョブの前記設定情報及び前記実績を取得する、処理をコンピュータに実行させる。
【0008】
また、第3態様に係る情報処理プログラムは、第2態様に係る情報処理プログラムにおいて、前記可能装置が実行する前記ジョブの前記設定情報及び前記実績、及び前記不可装置が実行する前記ジョブの前記設定情報及び前記実績を記憶する、処理をコンピュータに実行させる。
【0009】
また、第4態様に係る情報処理プログラムは、第2態様に係る情報処理プログラムにおいて、前記可能装置が実行する前記ジョブの前記設定情報及び前記実績と、前記不可装置が実行する前記ジョブの前記設定情報及び前記実績と、に基づいて、前記可能装置及び前記不可装置を含む複数の前記画像形成装置のうち、変更すべき前記画像形成装置を提示する、処理をコンピュータに実行させる。
【0010】
また、第5態様に係る情報処理プログラムは、第1態様に係る情報処理プログラムにおいて、前記不可装置が実行する前記ジョブのページ数である論理ページ数、前記ジョブを両面で印刷するか否かを示す両面設定、及び前記ジョブの印刷部数を示す部数設定を前記構造体から取得し、前記論理ページ数、前記両面設定、及び前記部数設定に基づいて、前記不可装置が前記ジョブを実行した結果物の枚数の予測値を算出する、処理をコンピュータに実行させる。
【0011】
また、第6態様に係る情報処理プログラムは、第5態様に係る情報処理プログラムにおいて、前記設定情報及び前記実績を直接取得できる前記画像形成装置である可能装置が実行した前記ジョブの前記実績を更に取得し、前記論理ページ数、前記両面設定、前記部数設定、及び前記可能装置が実行した前記ジョブの前記実績に基づいて、前記予測値を算出する、処理をコンピュータに実行させる。
【0012】
また、第7態様に係る情報処理プログラムは、第6態様に係る情報処理プログラムにおいて、前記可能装置が受信した受信ジョブの数、及び実行した前記受信ジョブの数を更に取得し、前記論理ページ数、前記両面設定、前記部数設定、前記受信ジョブの数、及び実行した前記受信ジョブの数に基づいて、前記予測値を算出する、処理をコンピュータに実行させる。
【0013】
また、第8態様に係る情報処理プログラムは、第6態様に係る情報処理プログラムにおいて、前記可能装置が前記ジョブを実行した結果物の1ページに割り当てた前記ジョブの数を更に取得し、前記論理ページ数、前記両面設定、前記部数設定、及び前記1ページに割り当てた前記ジョブの数に基づいて、前記予測値を算出する、処理をコンピュータに実行させる。
【0014】
また、第9態様に係る情報処理プログラムは、第1態様に係る情報処理プログラムにおいて、前記不可装置が前記ジョブの実行を開始する場合に、前記構造体を取得する、処理をコンピュータに実行させる。
【0015】
また、第10態様に係る情報処理システムは、第1態様に係る情報処理プログラムを記憶した情報処理装置と、前記不可装置と、前記設定情報及び前記実績を直接取得できる前記画像形成装置である可能装置と、を備えている。
【発明の効果】
【0016】
第1態様及び第10態様によれば、画像形成装置毎に変更することなく、不可装置が実行したジョブの設定情報及び実績を取得することができる。
【0017】
第2態様によれば、可能装置が実行するジョブの設定情報及び実績も取得することができる。
【0018】
第3態様によれば、取得した設定情報及び実績を記憶することができる。
【0019】
第4態様によれば、変更すべき画像形成装置を把握することができる。
【0020】
第5態様によれば、不可装置がジョブを実行した結果物の枚数を予測することができる。
【0021】
第6態様によれば、可能装置が実行したジョブの実績に関係なく、不可装置がジョブを実行した結果物の枚数の予測値を算出する場合に比較して、高精度に当該結果物の枚数の予測値を算出することができる。
【0022】
第7態様によれば、可能装置が受信した受信ジョブの数、及び受信ジョブのうち実行した数に関係なく、不可装置がジョブを実行した結果物の枚数の予測値を算出する場合に比較して、高精度に当該結果物の枚数の予測値を算出することができる。
【0023】
第8態様によれば、可能装置がジョブを実行した結果物の1ページに割り当てたジョブの数に関係なく、不可装置がジョブを実行した結果物の枚数の予測値を算出する場合に比較して、高精度に当該結果物の枚数の予測値を算出することができる。
【0024】
第9態様によれば、ジョブを実行する場合に必ず不可装置が実行するジョブの設定情報及び実績を取得することができる。
【図面の簡単な説明】
【0025】
【
図1】実施形態に係る情報処理システムのハードウェア構成の一例を示す模式図である。
【
図2】実施形態に係る画像形成装置のハードウェア構成の一例を示すブロック図である。
【
図3】実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
【
図4】実施形態に係る情報処理の流れの一例を示すフローチャートである。
【
図5】実施形態に係るPRINTER_NOTIFY_INFO構造体の一例を示す模式図である。
【
図6】実施形態に係る印刷情報テーブルの一例を示す模式図である。
【
図7】実施形態に係る登録処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0026】
以下、本開示の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0027】
図1に示すように、本実施形態に係る情報処理システム10は、A社製の画像形成装置20A、B社製の画像形成装置20B、C社製の画像形成装置20C、・・・と、情報処理装置30と、を備えている。
【0028】
このように、情報処理システム10は、複数の製造元において製造された画像形成装置20を備えている。この場合、ある製造元(例えば、A社)が他社(例えば、B社又はC社)の画像形成装置20から情報を収集する場合に制約が存在するため、例えば、A社が管理する情報処理装置30は、B社製の画像形成装置20B及びC社製の画像形成装置20Cから、ジョブを実行するために設定された設定情報及びジョブを実行した実績を直接取得できない場合がある。一方、A社が管理する情報処理装置30は、A社製の画像形成装置20Aにおける設定情報及び実績を直接取得できる。言い換えると、A社が管理する情報処理装置30にとって、A社製の画像形成装置20Aは設定情報及び実績を直接取得できる可能装置であり、B社製の画像形成装置20B及びC社製の画像形成装置20Cは設定情報及び実績を直接取得できない不可装置である。以下では、画像形成装置20A、20B、20C、・・・を区別することなく説明する場合は単に「画像形成装置20」と総称する。なお、画像形成装置20の数は
図1に示した数に限られない。
【0029】
画像形成装置20と、情報処理装置30とは、通信手段N1を介して相互に通信可能とされている。なお、本実施形態では、通信手段N1としてLAN(Local Area Network)、又はWAN(Wide Area Network)等の企業内の通信回線を適用している。しかし、この例に限られない。例えば、通信手段N1として、インターネット又は電話回線等の公共の通信回線を適用してもよいし、企業内の通信回線及び公共の通信回線を組み合わせて適用してもよい。また、本実施形態では、通信手段N1として無線の通信回線を適用している。しかし、通信手段N1として、有線の通信回線を適用してもよいし、有線及び無線の各通信回線を組み合わせて適用してもよい。
【0030】
画像形成装置20は、用紙等のシート材に画像を形成する装置である。印刷装置やプリンタと呼ばれる場合がある。また、画像形成装置20は、画像を形成する機能の他にFAX(facsimile)の送受信の機能、又は原稿の画像を読み取るスキャナの機能の1つ以上を有していてもよい。画像形成装置20が複数の機能を有する場合、複合機やMFP(Multi-Function Peripherals)と呼ばれる。
【0031】
図2に示すように、画像形成装置20は、CPU(Central Processing Unit)21、ROM(Read Only Memory)22、RAM(Random Access Memory)23、ストレージ24、入力部25、表示部26、通信I/F(Interface)27、プリンタ部28、及びスキャナ部29の各構成を有する。各構成は、バス40を介して相互に通信可能に接続されている。
【0032】
CPU21は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、CPU21は、ROM22又はストレージ24からプログラムを読み出し、RAM23を作業領域としてプログラムを実行する。CPU21は、ROM22又はストレージ24に記録されているプログラムにしたがって、上記各構成の制御及び各種の演算処理を行う。
【0033】
ROM22は、各種プログラム及び各種データを格納する。RAM23は、作業領域として一時的にプログラム又はデータを記憶する。ストレージ24は、HDD(Hard Disk Drive)又はSSD(Solid State Drive)により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【0034】
入力部25は、マウス等のポインティングデバイス、及びキーボードを含み、各種の入力を行うために使用される。
【0035】
表示部26は、例えば、液晶ディスプレイであり、各種の情報を表示する。表示部26は、タッチパネル方式を採用して、入力部25として機能しても良い。
【0036】
通信I/F27は、情報処理装置30等の他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
【0037】
プリンタ部28は、印刷データを印刷して出力するための印刷装置である。スキャナ部29は原稿を光学的に読み取って電子データに変換する読み取り装置である。
【0038】
次に、本実施形態の情報処理装置30について説明する。
【0039】
情報処理装置30は、オペレーティングシステム及びアプリケーションソフトウェアが実行される装置又は機器である。例えば、情報処理装置30として、PC(Personal Computer)、スマートフォン、タブレット端末、PDA(Personal Digital Assistant)、ウェアラブルPC等を適用することができる。
【0040】
また、情報処理装置30には、画像形成装置20のプリンタドライバがインストールされている。プリンタドライバは、印刷データを生成し、画像形成装置20に印刷データを送信するソフトウェアである。情報処理装置30にプリンタドライバがインストールされると、画像形成装置20を表す画像データもインストールされる。一般にプリンタアイコンとは上記画像データ自体を意味するが、本実施形態ではプリンタアイコンに対応付けられた情報を含めてプリンタアイコンという。具体的に、プリンタアイコンとは、画像形成装置20に関する情報が対応付けられた情報処理装置30上のプリンタであり、論理プリンタと呼ばれる場合がある。
【0041】
図3に示すように、情報処理装置30は、CPU31、ROM32、RAM33、ストレージ34、入力部35、表示部36、及び通信I/F37の各構成を有する。各構成は、バス39を介して相互に通信可能に接続されている。CPU31、ROM32、RAM33、ストレージ34、入力部35、表示部36、及び通信I/F37の機能は、上述した画像形成装置20が有するCPU21、ROM22、RAM23、ストレージ24、入力部25、表示部26、及び通信I/F27と同じである。
【0042】
ストレージ34には、情報処理プログラム34Aが格納されている。CPU31は、ストレージ34から情報処理プログラム34Aを読み出し、RAM33を作業領域としてプログラムを実行する。なお、この情報処理プログラム34Aは、ROM32に記憶されていてもよい。
【0043】
また、ストレージ34には、印刷情報テーブル34Bが記憶されている。印刷情報テーブル34Bは、設定情報及び実績を記憶するデータベースである。
【0044】
次に、
図4から
図7を参照して、本実施形態の情報処理装置30における情報処理の流れについて説明する。情報処理は、CPU31がストレージ34から情報処理プログラム34Aを読み出して、RAM33に展開して実行することにより、行なわれる。なお、情報処理はユーザによる手動の操作によって開始されてもよいし、オペレーティングシステムの起動と共に自動で開始されてもよい。
【0045】
図4のステップS100において、CPU21は、登録処理を実行する。登録処理の詳細については後述する。
【0046】
ステップS102において、CPU21は、いずれかの画像形成装置20がジョブの実行を開始するまで待機する。具体的に、CPU21は、オペレーティングシステムからジョブの実行を開始する旨の通知を受け付けるまで待機する。画像形成装置20がジョブの実行を開始すると(ステップS102:YES)、CPU21はステップS104に移行する。
【0047】
ステップS104において、CPU21は、ジョブを実行する画像形成装置20から設定情報及び実績を直接取得できるか否かを判定する。言い換えると、ジョブを実行する画像形成装置20が可能装置であるか否かを判定する。CPU21は、ジョブを実行する画像形成装置20から設定情報及び実績を直接取得できる場合(ステップS104:Y)、CPU21はステップS106に移行する。一方、ジョブを実行する画像形成装置20から設定情報及び実績を直接取得できない場合(ステップS104:N)、CPU21はステップS108に移行する。
【0048】
ステップS106において、CPU21は、ジョブを実行する画像形成装置20(すなわち、可能装置)から設定情報及び実績を直接取得する。本実施形態では、設定情報として、ジョブをカラーで印刷するかモノクロで印刷するかを示すカラー設定、ジョブを両面で印刷するか否かを示す両面設定、及びジョブの印刷部数を示す部数設定を適用する。また、本実施形態では、実績として、印刷時刻、プリンタアイコン名、IPアドレス、プリンタドライバ名、論理ページ数、物理ページ数、可能装置が受信した受信ジョブの数、実行したジョブの数、及び1ページに割り当てられたジョブの数を適用する。
【0049】
なお、印刷時刻とは、ジョブの実行開始時刻であり、プリンタアイコン名とは、ジョブを実行した画像形成装置20に対応するプリンタアイコン(論理プリンタ)の名称である。また、IPアドレスとは、ジョブを実行した画像形成装置20のIPアドレスであり、プリンタドライバ名とは、ジョブを実行した画像形成装置20のプリンタドライバの名称である。また、論理ページ数とは実行したジョブのページ数であり、物理ページ数とはジョブを実行した結果物の枚数である。また、実行したジョブの数とは、受信ジョブのうち可能装置が実行したジョブの数であり、1ページに割り当てられたジョブの数とは、可能装置が結果物の1ページに割り当てたジョブの数である。以下では、CPU21が可能装置から取得した物理ページ数を実測物理ページ数という。そして、CPU21はステップS128に移行する。
【0050】
ステップS108において、CPU21は、FindNextPrinterChangeNotification()を呼び出し、第4引数として返ってくるPRINTER_NOTIFY_INFO構造体を取得する。FindNextPrinterChangeNotification()とは、マイクロソフト社のオペレーティングシステムであるWindows(登録商標)が提供するAPI(Application Program Interface)である。また、PRINTER_NOTIFY_INFO構造体とは、ジョブを実行した画像形成装置20に関する情報をまとめた構造体である。
【0051】
図5にPRINTER_NOTIFY_INFO構造体の一例を示す。
【0052】
図5に示すように、PRINTER_NOTIFY_INFO構造体には、PRINTER_NOTIFY_INFO_DATA、タイプ(type)、フィールド(field)、取得可能な情報、及び要否が関連付けて記憶されている。
【0053】
PRINTER_NOTIFY_INFO_DATAは、ジョブを実行した画像形成装置20に関する情報をそれぞれ識別するための情報である。本実施形態では、PRINTER_NOTIFY_INFO_DATAとして、数字を適用している。しかし、この例に限られない。例えば、PRINTER_NOTIFY_INFO_DATAとして、文字又は文字と数字との組み合わせ等を適用してもよい。
【0054】
タイプは、関連付けて記憶された取得可能な情報の種類を示す情報である。具体的に、PRINTER_NOTIFY_INFO構造体には、タイプとして、JOB_NOTIFY_TYPE又はPRINTER_NOTIFY_TYPEが記憶されている。タイプとしてJOB_NOTIFY_TYPEが記憶されている場合、ジョブに関する情報が取得可能である。一方、タイプとしてPRINTER_NOTIFY_TYPEが記憶されている場合、画像形成装置20に関する情報が取得可能である。
【0055】
フィールドは、関連付けて記憶された取得可能な情報を取得するために指定する値を示す情報である。
【0056】
取得可能な情報は、関連付けて記憶されたフィールドが指定されることで取得可能な情報である。
【0057】
要否は、関連付けて記憶された取得可能な情報を、後述する印刷情報テーブル34Bに記憶する必要があるか否かを示す情報である。
図5に示す例では、取得可能な情報を印刷情報テーブル34Bに記憶する必要がある場合は「要」と記憶し、取得可能な情報を印刷情報テーブル34Bに記憶する必要がない場合「否」と記憶されている。
【0058】
ステップS110において、CPU21は、PRINTER_NOTIFY_INFO構造体に含まれる情報をタイプ及びフィールドで判別し、実績及びDEVMODE構造体を取得する。具体的に、CPU21は、印刷時刻、プリンタアイコン名、ポート名、プリンタドライバ名、論理ページ数、及びDEVMODE構造体を取得する。DEVMODE構造体とは、プリンタドライバの各種設定を保持する情報である。また、ポート名とは、プリンタアイコンと対応付けられた画像形成装置20のポート(例えば、IPアドレス、又はUSBポート等)の名称である。
【0059】
なお、印刷時刻を取得するためのフィールドは、JOB_NOTIFY_FIELD_START_TIMEで、プリンタアイコン名を取得するためのフィールドは、JOB_NOTIFY_FIELD_PRINTER_NAMEである。また、プリンタドライバ名を取得するためのフィールドは、JOB_NOTIFY_FIELD_DRIVER_NAMEで、論理ページ数を取得するためのフィールドは、JOB_NOTIFY_FIELD_TOTAL_PAGESである。また、ポート名を取得するためのフィールドは、JOB_NOTIFY_FIELD_PORT_NAMEで、DEVMODE構造体を取得するためのフィールドは、JOB_NOTIFY_FIELD_DEVMODEである。
【0060】
ステップS112において、CPU21は、取得したDEVMODE構造体から設定情報を取得する。具体的に、CPU21は、DEVMODE構造体から、カラー設定、両面設定、及び部数設定を取得する。
【0061】
ステップS114において、CPU21は、取得したポート名から、画像形成装置20のIPアドレスを取得する。具体的に、CPU21は、レジストリから、ポート名に関連付けられたIPアドレスを取得する。
【0062】
ステップS116において、CPU21は、印刷情報テーブル34Bから、可能装置が実行したジョブの実績のうち、受信ジョブの数、受信ジョブのうち可能装置が実行したジョブの数、及び1ページに割り当てられたジョブの数を取得する。
【0063】
ステップS118において、CPU21は、受信ジョブのうち、可能装置が実行した受信ジョブの割合である実行割合を算出する。具体的に、CPU21は、可能装置が実行したジョブの数を受信ジョブの数で割った値を可能装置毎に算出し、当該割った値の平均値を実行割合として算出する。しかし、この例に限られない。例えば、CPU21は、予め定められた可能装置が実行したジョブの数を受信ジョブの数で割った値を実行割合として算出してもよい。
【0064】
ステップS120において、CPU21は、1ページに割り当てられたジョブの数における、全ての可能装置の平均値である割り当て枚数を算出する。なお、CPU21は、予め定められた可能装置がジョブを実行した結果物の1ページに割り当てられたジョブの数を実行割合として算出してもよい。
【0065】
ステップS122において、CPU21は、取得した両面設定が両面で印刷する設定であるか否かを判定する。両面設定が両面で印刷する設定である場合(ステップS122:Y)、CPU21はステップS126に移行する。一方、両面設定が片面で印刷する設定である場合(ステップS122:N)、CPU21はステップS124に移行する。
【0066】
ステップS124において、CPU21は、物理ページ数の予測値である予測物理ページ数を、取得した論理ページ数と部数設定と実行割合との積を、割り当て枚数で割ることで算出する。そして、CPU21はステップS128に移行する。
【0067】
ステップS126において、CPU21は、予測物理ページ数を、論理ページ数を2で割った値と部数設定と実行割合との積を、割り当て枚数で割ることで算出する。ここで、論理ページ数を2で割った値が整数でない場合、CPU21は論理ページ数を2で割った値の小数点以下を切り上げる。しかし、この例に限られない。論理ページ数を2で割った値が整数でない場合、CPU21は論理ページ数を2で割った値の小数点以下を切り下げてもよいし、四捨五入してもよい。そして、CPU21はステップS128に移行する。
【0068】
ステップS128において、CPU21は、ホストコンピュータの名称であるホスト名に関連付けて、取得した印刷時刻、プリンタアイコン名、IPアドレス、プリンタドライバ名、論理ページ数、両面設定、部数設定、カラー設定、及び予測物理ページ数を印刷情報テーブル34Bに記憶する。なお、CPU21がステップS106を実行している場合は、実測物理ページ数、受信ジョブの数、実行したジョブの数、及び1ページに割り当てられたジョブの数を更に印刷情報テーブル34Bに記憶する。以下では、予測物理ページ数及び実測物理ページ数を区別することなく説明する場合は単に「物理ページ数」と総称する。
【0069】
図6に示すように、印刷情報テーブル34Bには、ホスト名に関連付けて、印刷時刻、プリンタアイコン名、IPアドレス、プリンタドライバ名、論理ページ数、両面設定、部数設定、カラー設定、予測物理ページ数、実測物理ページ数、受信ジョブの数、実行したジョブの数、及び1ページに割り当てられたジョブの数が記憶されている。
【0070】
ステップS130において、CPU21は、印刷情報テーブル34Bに記憶された物理ページ数のうち、カラーで印刷した物理ページ数の割合とモノクロで印刷した物理ページ数の割合とを、プリンタアイコン名毎に算出する。
【0071】
ステップS132において、CPU21は、カラーで印刷した物理ページ数の割合が予め定められた割合(例えば、10%)以下であるプリンタアイコン名があるか否かを判定する。カラーで印刷した物理ページ数の割合が予め定められた割合以下であるプリンタアイコン名がある場合(ステップS132:Y)、CPU21はステップS134に移行する。一方、カラーで印刷した物理ページ数の割合が予め定められた割合以下であるプリンタアイコン名がない場合(ステップS132:N)、CPU21は本情報処理を終了する。
【0072】
ステップS134において、CPU21は、カラーで印刷した物理ページ数の割合が予め定められた割合以下のプリンタアイコン名に対応する画像形成装置20を、モノクロの画像のみを形成する画像形成装置20に変更するように提案する画面を表示部26に表示する。そして、CPU21は本情報処理を終了する。
【0073】
なお、本実施形態では、CPU21は、不可装置が実行するジョブの設定情報及び実績に加えて、可能装置が実行するジョブの設定情報及び実績も取得し、印刷情報テーブル34Bに記憶していた。しかし、この例に限られない。CPU21は、可能装置が実行するジョブの設定情報及び実績を取得せず、不可装置が実行するジョブの設定情報及び実績のみを印刷情報テーブル34Bに記憶してもよい。
【0074】
また、本実施形態では、CPU21は、DEVMODE構造体から取得した論理ページ数、両面設定、及び部数設定に加えて、可能装置が受信した受信ジョブの数、可能装置が実行した受信ジョブの数、及び1ページに割り当てられたジョブの数に基づいて、予測物理ページ数を算出していた。しかし、この例に限られない。CPU21は、DEVMODE構造体から取得した論理ページ数、両面設定、及び部数設定のみに基づいて、予測物理ページ数を算出してもよい。
【0075】
また、CPU21は、可能装置における論理ページ数、両面設定、及び部数設定に対する実測物理ページ数を教師データとして機械学習を行った学習済みモデルに対して、不可装置のDEVMODE構造体から取得した論理ページ数、両面設定、及び部数設定を入力することで、不可装置の予測物理ページ数を取得してもよい。
【0076】
また、本実施形態では、CPU21は、カラーで印刷した物理ページ数の割合が予め定められた割合以下の画像形成装置20を、モノクロの画像のみを形成する画像形成装置20に変更するように提示していた。しかし、この例に限られない。例えば、CPU21は、両面印刷ができず、かつ物理ページ数が予め定められた数以上の画像形成装置20を、両面印刷ができる画像形成装置20に変更するように提示してもよい。
【0077】
また、本実施形態では、CPU21は、可能装置が実行したジョブの設定情報及び実績を直接取得し、当該直接取得した設定情報及び実績を印刷情報テーブル34Bに記憶していた。しかし、この例に限られない。可能装置が実行したジョブの設定情報及び実績についても、CPU21は、不可装置と同様に、PRINTER_NOTIFY_INFO構造体に基づいて、可能装置が実行するジョブの設定情報及び実績を取得してもよい。
【0078】
次に、
図7を参照して登録処理の流れについて説明する。
【0079】
図7のステップS200において、CPU21は、情報処理装置30にインストールされているプリンタアイコン名の一覧を、EnumPrinters()で取得する。EnumPrinters()とは、Windows(登録商標)が提供するAPIである。
【0080】
ステップS202において、CPU21は、取得したプリンタアイコン名を使用してOpenPrinter()を呼び出し、プリンタアイコンのハンドルを取得する。OpenPrinter()とは、Windows(登録商標)が提供するAPIである。また、ハンドルとは、プリンタを表す情報である。
【0081】
ステップS204において、CPU21は、取得したハンドルを利用してFindFirstPrinterChangeNotification()を呼び出し、第2引数にPRINTER_CHANGE_ADD_JOBを設定する。FindFirstPrinterChangeNotification()とは、プリンタアイコンにおける変更の通知を受け取るための、Windows(登録商標)が提供するAPIである。第2引数にPRINTER_CHANGE_ADD_JOBを設定することで、取得したハンドルに関連付けられたプリンタアイコンにおいてジョブの実行が開始された旨を検知することができる。そして、CPU21は登録処理を終了し、情報処理のステップS102へ移行する。
【0082】
以上、実施の形態を説明したが、本開示の技術的範囲は上記実施の形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記実施の形態に多様な変更又は改良を加えることができ、該変更又は改良を加えた形態も本開示の技術的範囲に含まれる。
【0083】
また、上記実施の形態は、請求項に係る発明を限定するものではなく、また実施の形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。前述した実施の形態には種々の段階の発明が含まれており、開示される複数の構成要件の組み合わせにより種々の発明が抽出される。実施の形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られる限りにおいて、この幾つかの構成要件が削除された構成が発明として抽出され得る。
【0084】
また、上記実施形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU:Central Processing Unit、等)や、専用のプロセッサ(例えばGPU:Graphics Processing Unit、ASIC: Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array、プログラマブル論理デバイス、等)を含むものである。
【0085】
また、上記実施形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は上記実施形態において記載した順序のみに限定されるものではなく、適宜変更してもよい。
【0086】
上記実施形態では、各プログラムがROMにインストールされている形態を説明したが、これに限定されるものではない。上記実施形態に係る各プログラムを、コンピュータ読取可能な記憶媒体に記録した形態で提供してもよい。例えば、上記実施形態に係る各プログラムを、CD(Compact Disc)-ROM及びDVD(Digital Versatile Disc)-ROM等の光ディスクに記録した形態、若しくはUSB(Universal Serial Bus)メモリ及びメモリカード等の半導体メモリに記録した形態で提供してもよい。また、上記実施形態に係る各プログラムを、通信I/Fを介して外部の装置から取得するようにしてもよい。
【0087】
また、上記実施形態では、情報処理システム10における処理を、プログラムを実行することにより、コンピュータを利用してソフトウェア構成により実現する場合について説明したが、本開示はこれに限定されるものではない。例えば、情報処理システム10における処理を、ハードウェア構成や、ハードウェア構成とソフトウェア構成の組み合わせによって実現する形態としてもよい。
【0088】
その他、上記実施形態で説明した画像形成装置20と、情報処理装置30と、の構成は一例であり、本開示の主旨を逸脱しない範囲内において不要な部分を削除したり、新たな部分を追加したりしてもよいことは言うまでもない。
【0089】
また、上記各実施の形態で説明した情報処理装置30における処理の流れ(
図4、7参照)も一例であり、本開示の主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよいことは言うまでもない。
【0090】
以上の実施形態に関し、更に以下を開示する。
【0091】
(((1)))に係る情報処理プログラムは、ジョブを実行するために設定された設定情報、及び前記ジョブを実行した実績を直接取得できない画像形成装置である不可装置に関する情報をまとめた構造体を取得し、前記構造体に基づいて、前記不可装置が実行する前記ジョブの前記設定情報、及び前記実績を取得する、処理をコンピュータに実行させる。
【0092】
また、(((2)))に係る情報処理プログラムは、(((1)))に係る情報処理プログラムにおいて、前記設定情報及び前記実績を直接取得できる前記画像形成装置である可能装置が実行する前記ジョブの前記設定情報及び前記実績を取得する、処理をコンピュータに実行させる。
【0093】
また、(((3)))に係る情報処理プログラムは、(((2)))に係る情報処理プログラムにおいて、前記可能装置が実行する前記ジョブの前記設定情報及び前記実績、及び前記不可装置が実行する前記ジョブの前記設定情報及び前記実績を記憶する、処理をコンピュータに実行させる。
【0094】
また、(((4)))に係る情報処理プログラムは、(((2)))又は(((3)))に係る情報処理プログラムにおいて、前記可能装置が実行する前記ジョブの前記設定情報及び前記実績と、前記不可装置が実行する前記ジョブの前記設定情報及び前記実績と、に基づいて、前記可能装置及び前記不可装置を含む複数の前記画像形成装置のうち、変更すべき前記画像形成装置を提示する、処理をコンピュータに実行させる。
【0095】
また、(((5)))に係る情報処理プログラムは、(((1)))~(((4)))の何れか1に係る情報処理プログラムにおいて、前記不可装置が実行する前記ジョブのページ数である論理ページ数、前記ジョブを両面で印刷するか否かを示す両面設定、及び前記ジョブの印刷部数を示す部数設定を前記構造体から取得し、前記論理ページ数、前記両面設定、及び前記部数設定に基づいて、前記不可装置が前記ジョブを実行した結果物の枚数の予測値を算出する、処理をコンピュータに実行させる。
【0096】
また、(((6)))に係る情報処理プログラムは、(((5)))に係る情報処理プログラムにおいて、前記設定情報及び前記実績を直接取得できる前記画像形成装置である可能装置が実行した前記ジョブの前記実績を更に取得し、前記論理ページ数、前記両面設定、前記部数設定、及び前記可能装置が実行した前記ジョブの前記実績に基づいて、前記予測値を算出する、処理をコンピュータに実行させる。
【0097】
また、(((7)))に係る情報処理プログラムは、(((6)))に係る情報処理プログラムにおいて、前記可能装置が受信した受信ジョブの数、及び実行した前記受信ジョブの数を更に取得し、前記論理ページ数、前記両面設定、前記部数設定、前記受信ジョブの数、及び実行した前記受信ジョブの数に基づいて、前記予測値を算出する、処理をコンピュータに実行させる。
【0098】
また、(((8)))に係る情報処理プログラムは、(((6)))に係る情報処理プログラムにおいて、前記可能装置が前記ジョブを実行した結果物の1ページに割り当てた前記ジョブの数を更に取得し、前記論理ページ数、前記両面設定、前記部数設定、及び前記1ページに割り当てた前記ジョブの数に基づいて、前記予測値を算出する、処理をコンピュータに実行させる。
【0099】
また、(((9)))に係る情報処理プログラムは、(((1)))~(((8)))の何れか1に係る情報処理プログラムにおいて、前記不可装置が前記ジョブの実行を開始する場合に、前記構造体を取得する、処理をコンピュータに実行させる。
【0100】
また、第10態様に係る情報処理システムは、(((1)))~(((9)))の何れか1に係る情報処理プログラムを記憶した情報処理装置と、前記不可装置と、前記設定情報及び前記実績を直接取得できる前記画像形成装置である可能装置と、を備えている。
【0101】
(((1)))及び(((10)))によれば、画像形成装置毎に変更することなく、不可装置が実行したジョブの設定情報及び実績を取得することができる。
【0102】
(((2)))によれば、可能装置が実行するジョブの設定情報及び実績も取得することができる。
【0103】
(((3)))によれば、取得した設定情報及び実績を記憶することができる。
【0104】
(((4)))によれば、変更すべき画像形成装置を把握することができる。
【0105】
(((5)))によれば、不可装置がジョブを実行した結果物の枚数を予測することができる。
【0106】
(((6)))によれば、可能装置が実行したジョブの実績に関係なく、不可装置がジョブを実行した結果物の枚数の予測値を算出する場合に比較して、高精度に当該結果物の枚数の予測値を算出することができる。
【0107】
(((7)))によれば、可能装置が受信した受信ジョブの数、及び受信ジョブのうち実行した数に関係なく、不可装置がジョブを実行した結果物の枚数の予測値を算出する場合に比較して、高精度に当該結果物の枚数の予測値を算出することができる。
【0108】
(((8)))によれば、可能装置がジョブを実行した結果物の1ページに割り当てたジョブの数に関係なく、不可装置がジョブを実行した結果物の枚数の予測値を算出する場合に比較して、高精度に当該結果物の枚数の予測値を算出することができる。
【0109】
(((9)))によれば、ジョブを実行する場合に必ず不可装置が実行するジョブの設定情報及び実績を取得することができる。
【符号の説明】
【0110】
10 情報処理システム
20 画像形成装置
21 CPU
24 ストレージ
25 入力部
26 表示部
28 プリンタ部
29 スキャナ部
30 情報処理装置
31 CPU
34 ストレージ
34A 情報処理プログラム
34B 印刷情報テーブル
35 入力部
36 表示部
39 バス
40 バス