(57)【要約】【課題】  アプリケーションから提供されている複数の画面のうち、入力された情報を表示すべき画面に、当該情報を表示させるようにする。【解決手段】  複数の画面が起動している状態でバーコードの情報を入力すると、アクティブか否かに関わらず、通常通知用リスト１２の先頭に登録されている画面と強制通知用リスト１３に登録されている全ての画面に対して、その情報を通知する。【選択図】  図１
2015132931.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションから少なくとも第１画面と第２画面とを提供する提供手段と、
前記第１画面を強制通知用の画面として管理する管理手段と、
画面内に表示される情報を入力する入力手段と、
前記第２画面がアクティブの状態である場合、前記情報を、前記第１および第２画面の両者に通知し、前記第２画面が非アクティブの状態である場合、前記情報を、前記第１画面に対して通知し、前記第２画面に対して通知しない通知制御手段と、を備えることを特徴とする情報処理装置。
【請求項２】
前記管理手段は、前記アプリケーションから提供されている前記第１画面を含む画面を前記強制通知用の画面として管理し、
前記通知制御手段は、前記強制通知用の画面として管理されている画面の全てに、前記情報を通知することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記アプリケーションが非アクティブの状態であるときに前記アプリケーションから提供されている画面に、前記情報の表示を行うか否かを予め設定する設定手段と、
前記アプリケーションが非アクティブの状態であるときに、前記情報が入力されると、前記設定手段により、前記情報の表示を行うことが設定されているか否かを判定する判定手段と、を更に備え、
前記通知制御手段は、前記判定手段により、前記情報の表示を行うことが設定されていないと判定された場合には、前記情報を、前記第１画面にも前記第２画面にも通知しないことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記アプリケーションから提供されている前記第２画面を含む画面を非強制通知用の画面として管理する第２管理手段を更に備え、
前記通知制御手段は、前記判定手段により、前記情報の表示を行うことが設定されていると判定された場合には、前記情報を、前記強制通知用の画面として管理されている画面と、前記非強制通知用の画面として管理されている画面のうち、最後にアクティブの状態にされた画面に、前記情報を通知することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記情報は、用紙に印刷された、コード化された情報であり、
前記入力手段は、前記用紙から光学的に読み取られた前記情報を入力することを特徴とする請求項１〜４の何れか１項に記載の情報処理装置。
【請求項６】
前記情報は、用紙を用いて構成される成果物を識別する情報を含み、
前記アプリケーションから提供される画面は、前記成果物の生産を管理するための画面を含むことを特徴とする請求項１〜５の何れか１項に記載の情報処理装置。
【請求項７】
アプリケーションから少なくとも第１画面と第２画面とを提供する提供工程と、
前記第１画面を強制通知用の画面として管理する管理工程と、
画面内に表示される情報を入力する入力工程と、
前記第２画面がアクティブの状態である場合、前記情報を、前記第１および第２画面の両者に対して通知し、前記第２画面が非アクティブの状態である場合、前記情報を、前記第１画面に対して通知し、前記第２画面に対して通知しない通知制御工程と、を備えることを特徴とする情報処理方法。
【請求項８】
アプリケーションから少なくとも第１画面と第２画面とを提供する提供工程と、
前記第１画面を強制通知用の画面として管理する管理工程と、
画面内に表示される情報を入力する入力工程と、
前記第２画面がアクティブの状態である場合、前記情報を、前記第１および第２画面の両者に対して通知し、前記第２画面が非アクティブの状態である場合、前記情報を、前記第１画面に対して通知し、前記第２画面に対して通知しない通知制御工程と、をコンピュータに実行させることを特徴とするプログラム。
【請求項９】
前記管理工程は、前記アプリケーションから提供されている前記第１画面を含む画面を前記強制通知用の画面として管理し、
前記通知制御工程は、前記強制通知用の画面として管理されている画面の全てに、前記情報を通知することを特徴とする請求項８に記載のプログラム。
【請求項１０】
前記アプリケーションが非アクティブの状態であるときに前記アプリケーションから提供されている画面に、前記情報の表示を行うか否かを予め設定する設定工程と、
前記アプリケーションが非アクティブの状態であるときに、前記情報が入力されると、前記設定工程により、前記情報の表示を行うことが設定されているか否かを判定する判定工程と、を更にコンピュータに実行させ、
前記通知制御工程は、前記判定工程により、前記情報の表示を行うことが設定されていないと判定された場合には、前記情報を、前記第１画面にも前記第２画面にも通知しないことを特徴とする請求項８または９に記載のプログラム。
【請求項１１】
前記アプリケーションから提供されている前記第２画面を含む画面を非強制通知用の画面として管理する第２管理工程を更にコンピュータに実行させ、
前記通知制御工程は、前記判定工程により、前記情報の表示を行うことが設定されていると判定された場合には、前記情報を、前記強制通知用の画面として管理されている画面と、前記非強制通知用の画面として管理されている画面のうち、最後にアクティブの状態にされた画面に、前記情報を通知することを特徴とする請求項１０に記載のプログラム。
【請求項１２】
前記情報は、用紙に印刷された、コード化された情報であり、
前記入力工程は、前記用紙から光学的に読み取られた前記情報を入力することを特徴とする請求項８〜１１の何れか１項に記載のプログラム。
【請求項１３】
前記情報は、用紙を用いて構成される成果物を識別する情報を含み、
前記アプリケーションから提供される画面は、前記成果物の生産を管理するための画面を含むことを特徴とする請求項８〜１２の何れか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関し、特に、アプリケーションによって提供される画面の表示を制御するために用いて好適なものである。
【背景技術】
【０００２】
プリントオンデマンド（ＰＯＤ）の分野では、顧客毎に異なる仕上がりとなる多種多様な成果物を生産する必要がある。そのため、どの印刷物がどの顧客の成果物であり、どの印刷物をどのような仕上がりにする必要があるか等を管理するために、印刷物に印刷されたバーコードを用いたワークフローが構築されている。この場合、成果物毎に異なる識別子を表すバーコードを印刷物に印刷しておく。このバーコードをバーコードリーダーで読み取り、読み取ったバーコードの情報を、バーコードの情報を利用するアプリケーションがインストールされた情報処理装置に送信する。これにより、どの印刷物を対象としてワークフローを実行するのかということや、どのパラメータを適用すればよいのかということ等を機械的に判断することができ、手動によるワークフローと比較して作業効率を向上させることができる。
【０００３】
バーコードの情報を利用するアプリケーションは、バーコードリーダーで読み取られたバーコードの情報や、当該情報に対応するパラメータ等を、ワークフローを管理する画面に表示させる機能を有する。また、このアプリケーションは、読み取られたバーコードの情報から、当該情報に示される識別子に対応する成果物を探索し、所望のワークフローを実行する機能も有する。ここで、ワークフローには複数の工程が存在する。このため、アプリケーションは、ワークフローの機能単位の複数の画面を提供する。読み取られるバーコードの体系は共通であるため、このような構成の場合、アプリケーションは、バーコードの情報の入力時に、どのワークフローを実行するべきか、すなわちどの画面に対してバーコードの情報を送るべきかを制御する必要がある。
【０００４】
複数の画面を提供するアプリケーションが入力装置からのデータを制御する技術として、特許文献１に記載の技術がある。特許文献１には、入出力装置から受信した情報を、画面リストに登録されている全ての画面に配布することにより情報を一元管理し、情報の整合性を保つことが示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−２２４１６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、前述した特許文献１に記載の技術では、全ての画面に情報が通知される。このため、前述したユースケースの場合に、画面に表示される情報と、実行すべき内容との不整合が起きる虞がある。例えば、同時に実行し得ない複数の工程に関する機能を有する複数の画面が起動している際に、これらの画面の全てに情報が通知されると、当該複数の工程に関する機能の全てが実行される等、ユーザにとって意図しない動作が実行される虞がある。また、どの機能を実行すればよいのかをユーザに容易に判断させることができなくなる虞がある。
本発明は、このような問題点に鑑みてなされたものであり、アプリケーションから提供されている複数の画面のうち、入力された情報を表示すべき画面に、当該情報を表示させるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明の情報処理装置は、アプリケーションから少なくとも第１画面と第２画面とを提供する提供手段と、前記第１画面を強制通知用の画面として管理する管理手段と、画面内に表示される情報を入力する入力手段と、前記第２画面がアクティブの状態である場合、前記情報を、前記第１および第２画面の両者に対して通知し、前記第２画面が非アクティブの状態である場合、前記情報を、前記第１画面に対して通知し、前記第２画面に対して通知しない通知制御手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、アプリケーションから提供されている複数の画面のうち、入力された情報を表示すべき画面に、当該情報を表示させることができる。
【図面の簡単な説明】
【０００９】
【図１】ワークフロー管理システムの構成を示す図である。
【図２】情報処理装置のハードウェア構成を示す図である。
【図３】情報処理装置のユーザインタフェースの状態の第１の例を示す図である。
【図４】画面管理部に通知される情報の構造を示す図である。
【図５】通常通知用リストおよび強制通知用リストの構造を示す図である。
【図６】画面管理部が行う処理の第１の例を示すフローチャートである。
【図７】通常通知用リストと強制通知用リストの遷移を示す図である。
【図８】情報処理装置のユーザインタフェースの状態の第２の例を示す図である。
【図９】画面管理部が行う処理の第２の例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照しながら、本発明の実施形態を説明する。
（第１の実施形態）
まず、第１の実施形態を説明する。
図１は、ワークフロー管理システムの構成の一例を示す図である。
ワークフロー管理システムは、情報処理装置１と、入力装置２とを有する。
情報処理装置１は主に、生産ワークフローにおける各機能を実行するための実行装置である。ここで生産ワークフローとは、顧客から注文があった成果物を生産するために必要となる工程の一連の流れを指す。本実施形態では、情報処理装置１は、生産ワークフローを構成する複数の工程のうち、照合工程、再印刷工程、検品工程、出荷完了登録工程等、主に入力装置２からのバーコードの情報の入力をトリガーに実行する工程を扱うものとする。
【００１１】
入力装置２は、ユーザからの入力を行うための装置である。入力装置２から入力された情報は、インタフェースを通じて情報処理装置１に送信される。本実施形態では、入力装置２がバーコードリーダーである場合を例に挙げて説明する。この場合、入力装置２は、印刷物（用紙）に印刷されているバーコードの情報を入力して情報処理装置１に送信する。
ただし、入力装置２は、バーコードリーダーに限定されない。ＱＲコード（登録商標）のリーダー等、印刷物に印刷されたコード化された情報を光学的に読み取る装置を入力装置２として用いてもよい。例えば、キーボードによる入力や、近距離無線通信（ＮＦＣ）のリーダーによる入力を行う装置を入力装置２として用いることも可能である。
【００１２】
情報処理装置１は、複数のモジュールから構成される。まず、情報処理装置１は、画面制御部（画面へのバーコード情報の通知制御部）として、メイン画面制御部３、照合画面制御部４、再印刷画面制御部５、検品画面制御部６、出荷完了画面制御部７、明細画面制御部８、及びデバイス設定画面制御部９を有する。これらの画面制御部は何れも、グラフィカルなユーザインタフェース（ＧＵＩ）と、そのユーザインタフェースを制御する部分とを有する。メイン画面制御部３は、アプリケーション（アプリケーションプログラム）の起動時に表示されるポータル画面（メイン画面）を制御する。このメイン画面に対する操作を通じて、その他の各画面を起動させることができる。各画面の詳細については、図３等を参照しながら後で説明を行う。
【００１３】
また、情報処理装置１は、画面管理部１０と、入力受信部１１とを有する。
画面管理部１０は、各画面を管理する機能を有する。具体的に画面管理部１０は、ユーザによる操作によって画面がアクティブになったことや、クローズされたこと等の操作イベントを受信し、画面の状態を管理する機能を有する。また、画面管理部１０は、入力装置２から入力が行われた情報を、入力受信部１１を介して取得し、画面の状態に応じて、各画面制御部へ通知する機能も有する。
【００１４】
画面管理部１０は、通常通知用リスト１２と強制通知用リスト１３の２つのリストを管理する。強制通知用リスト１３は、画面の状態にかかわらず、常に、バーコードの情報を表示する画面を管理するためのリストである。通常通知用リスト１２は、アクティブの状態である場合にのみバーコードの情報を表示する画面を管理するためのリストである。リストの詳細については、図５等を参照しながら後で説明を行う。
このように本実施形態では、画面の状態にかかわらず、常に、バーコードの情報を表示する画面が、強制通知用の画面の一例であり、アクティブの状態である場合にのみ、バーコードの情報を表示する画面が、非強制通知用の画面の一例である。また、強制通知用リスト１３による管理が第１管理の一例であり、通常通知用リスト１２による管理が第２管理の一例である。
入力受信部１１は、入力装置２から、バーコードの情報を受信する機能を有する。入力受信部１１は、受信した情報を画面管理部１０に通知する。後述するように、バーコードの情報の少なくとも一部が、画面内に表示される。
【００１５】
図２は、情報処理装置１のハードウェア構成の一例を示す図である。
ＣＰＵ２１は、ＲＯＭ２６内部のプログラム領域に記憶されたプログラム、または、ハードディスク２３からＲＡＭ２２にロードされたＯＳ、アプリケーション等のプログラムを実行する。ＲＡＭ２２は、ＣＰＵ２１の主メモリ、ワークエリア等として機能する。ハードディスク２３は、ブートプログラム、種々のアプリケーション、フォントデータ、ユーザファイル、電子原稿ファイル等を記憶する。また、本実施形態で説明する処理にかかるプログラムは、例えば、情報処理装置１のハードディスク２３に記憶されており、ＲＡＭ２２に読み出されてＣＰＵ２１によって実行される。ディスプレイコントローラ２４は、ディスプレイによる表示の制御を行う。ネットワークコントローラ２５は、ネットワークに接続された他の機器との通信制御処理を実行する。外部記憶ドライブ２７は、可搬型の外部の記憶媒体との通信制御処理を実行する。バーコードコントローラ２８は、情報処理装置１に接続された入力装置２（バーコードリーダー）との通信制御処理を実行する。キーボードコントローラ２９は、情報処理装置１に接続されたキーボードやマウス等との通信制御処理を実行する。
【００１６】
図３は、情報処理装置１のユーザインタフェースの状態の一例を示す図である。
メイン画面３１は、メイン画面制御部３が有する画面（ユーザインタフェース）の一例である。メイン画面３１は、アプリケーションの起動時にアプリケーションから提供されて表示装置上に表示される。メイン画面３１は、照合ボタン３２、再印刷ボタン３３、検品ボタン３４、出荷完了ボタン３５、明細ボタン３６、およびデバイス設定ボタン３７を含む。それぞれのボタンは少なくとも１つ以上のボタンから構成されている。照合ボタン３２、再印刷ボタン３３、検品ボタン３４、出荷完了ボタン３５、明細ボタン３６、デバイス設定ボタン３７が押されると、それぞれ照合画面、再印刷画面、検品画面、出荷完了画面、明細画面、デバイス設定画面がアプリケーションから提供される。すなわち、照合画面、再印刷画面、検品画面、出荷完了画面、明細画面、デバイス設定画面が起動する。尚、ボタンの構成についてはユーザの用途に応じて変更することができ、アプリケーションの起動前に設定情報を編集することにより変更することが可能である。
【００１７】
照合ボタン３２は、照合画面を起動するためのボタンである。照合画面は、成果物の照合を行う機能を有する画面である。照合とは、表紙、本文等、複数の部品から構成される成果物の部品同士が同一の成果物の部品であるか否かを確認することをいう。各部品の印刷物に印刷されているバーコードが同じであるかによって、同一の成果物の部品であるか否かが判断される。成果物の構成により、照合点数（照合する部品の数）が異なる。図３に示す例では、２点の照合を行う２点照合画面を起動するための照合ボタン３２ａと、３点の照合を行う照合画面を起動するための３点照合ボタン３２ｂと、４点の照合を行う照合画面を起動するための４点照合ボタン３２ｃで照合ボタン３２を構成する。このように、アプリケーションの照合ボタン３２と照合画面を、それぞれ複数にすることも可能である。
【００１８】
再印刷ボタン３３は、再印刷画面を起動するためのボタンである。再印刷画面は、入力されたバーコードの情報で識別される成果物の再印刷を行う機能を有する画面である。印刷工程や後処理工程において生産の失敗等があった場合、印刷からやり直しを行う必要がある。生産の失敗等のあった印刷物に印刷されているバーコードの情報を読み取り、読み取った情報に基づいて再印刷が必要な印刷物の情報を再印刷画面に表示することで、作業者が対象の成果物をシステムから探索する手間なく再印刷が実行できる仕組みを実現する。
【００１９】
検品ボタン３４は、検品画面を起動するためのボタンである。検品画面は、成果物の検品の結果を、バーコードを用いて登録する機能を有する画面である。ＰＯＤの生産現場では、コストの管理や再印刷の対象を把握する目的で、成果物の検品時に、どの成果物が何枚ＮＧになったのかをシステムに登録しておくことがある。本機能は、その際に使用することができ、検品ＯＫ登録ボタン３４ａと検品ＮＧ登録ボタン３４ｂの２つのボタンで検品ボタン３４を構成する。検品ＯＫ登録ボタン３４ａは、生産の過程でＮＧが生じなかった成果物を登録する検品画面（検品ＮＧ登録画面）を起動するためのボタンである。検品ＮＧ登録ボタン３４ｂは、生産の過程でＮＧが生じた成果物を登録する検品画面（検品ＯＫ登録画面）を起動するためのボタンである。
【００２０】
出荷完了ボタン３５は、出荷完了画面を起動するためのボタンである。出荷完了画面は、ある配送先に対して成果物群が出荷完了されたことを、バーコードを用いてシステムに登録する機能を有する画面である。出荷完了の登録を行うことで注文を行った顧客に対して出荷連絡を行ったり、注文管理サーバーに対してステータスを通知したりすることができる。本機能により、生産が完了したことを自動的に管理することができる。本機能では、例えば、出荷を行う印刷物に印刷されたバーコードの情報を読み取り、読み取った情報に基づいて、出荷が完了する成果物の情報を出荷完了画面に表示することで、このようなユースケースを実行することができる。
【００２１】
明細ボタン３６は、明細画面を起動するためのボタンである。明細画面は、入力装置２から入力されたバーコードの情報に関する詳細情報を表す画面である。例えば、読み取られたバーコードの情報が、どのような成果物の識別子を示すのかということや、どの部品に関する情報であるのかということ等の詳細情報が明細画面に表示される。これにより作業者は、自身が読み取ったバーコードの対象に問題がないか等を確認することができる。
デバイス設定ボタン３７は、デバイス設定画面を起動するためのボタンである。デバイス設定画面は、ワークフローシステムに登録されているデバイスの中から、どのデバイスに対して実行を行うのかを閲覧、設定する機能を有する。
【００２２】
図３に示す例では、メイン画面３１と共に、照合画面３８及び明細画面３９が並列に表示されている場合を例に挙げて示す。図３に示すように、複数の画面を起動した後は、同時に複数の画面が、表示装置に並列に表示され得る。図３に示す例では、メイン画面３１、照合画面３８、明細画面３９の３つの画面が表示装置に並列に表示される。また、これらのメイン画面３１、照合画面３８、明細画面３９はモードレスで表示される。すなわち、現在アクティブな画面を閉じることなく別の画面に移って操作することが可能である。
【００２３】
以上説明したように、メイン画面３１は、アプリケーションが有する機能に対応した複数のボタンを有する。各工程を実行する機能である「照合、再印刷、検品、出荷完了」の機能は排他的な機能であり、ある工程において同時に使用されるケースは存在しない。そのため、照合画面、再印刷画面、検品画面、出荷完了画面が全て起動されていたとしても、バーコードの情報が入力された際には、現在アクティブになっている画面、すなわちユーザが現在使用しようとしている機能のみを有効にしておくべきである。一方、「明細、デバイス設定」の機能は、前述した各工程を実行する機能とは独立した機能を有する。このため、バーコードの情報が入力された際には、アクティブになっていなくても、明細画面とデバイス設定画面に、当該バーコードの情報の通知を行うべきである。
このように、画面の用途に応じて、バーコードの情報を、画面に対して通知を行うか否かを判断することが必要となる。このため、本実施形態では、画面管理部１０は、通常通知用リスト１２と強制通知用リスト１３の２つのリストを用いて、バーコードの情報の通知先となる画面制御部の管理を行う。
【００２４】
図４は、情報処理装置１の各画面のイベントの発生時に画面管理部１０に通知される情報の構造の一例を示す図である。このときに通知される情報は、画面ＩＤ４１、画面名称４２、イベント内容４３、強制通知有無４４である。
画面ＩＤ４１は、情報処理装置１により表示される前述した複数の画面を一意に識別するための識別子を表す。画面名称４２は、画面ＩＤ４１に対応する名称を表す。画面名称４２として、例えば「照合画面」や「再印刷画面」のように、どのような機能を有する画面であるのかが直感的に理解可能な名称を採用するのが望ましい。
【００２５】
イベント内容４３は、対象となる画面が発生させたイベントの内容を表す。イベント内容４３には、「アクティブ」、「非アクティブ」、「クローズ」の３種類のイベントの何れかが存在する。
アクティブとは、その画面のコントロールにフォーカスが当たっている状態になったことを表す。この状態（イベント）は、一般的に、画面がオープンになった際、または、すでにオープンになっている画面が非アクティブの状態であり、かつ、ユーザがマウスでその画面をクリックした際に発生する。
【００２６】
非アクティブとは、アクティブとは逆に、その画面のコントロールにフォーカスが当たっていない状態になったことを表す。この状態（イベント）は、現在アクティブになっている画面以外の画面をユーザがマウスでクリックした際に発生する。
クローズとは、画面が閉じられた状態になったことを表す。この状態（イベント）は、ユーザが画面の閉じるボタンを押下した際等に発生する。画面がクローズされた場合には、当該画面の１つ前にアクティブの状態であった画面がアクティブの状態になる。
尚、図３に示す例では、１つの画面がアクティブの状態になっている場合には、残りの画面は非アクティブの状態になる。
【００２７】
強制通知有無４４は、イベントが発生した画面が、強制通知を行う画面であるかどうかを表す情報である。強制通知有無４４には、「有」、「無」の２つの状態が存在する。強制通知有無４４が「有」である場合、画面管理部１０は、イベントが発生した画面が強制通知を行うべき画面であると判定する。そして、画面管理部１０は、強制通知用リスト１３を用いて、当該イベントが発生した画面に対するバーコードの情報の通知の管理を行う。一方、強制通知有無４４が「無」である場合、画面管理部１０は、イベントが発生した画面が通常の通知を行う画面であると判定する。そして、画面管理部１０は、通常通知用リスト１２を用いて、当該イベントが発生した画面に対するバーコードの情報の通知の管理を行う。各画面に対する強制通知有無４４の「有」、「無」は、予め設定されている。
【００２８】
図５は、画面管理部１０が管理する通常通知用リスト１２および強制通知用リスト１３の構造の一例を示す図である。これら２つのリストには、リスト番号５１、画面ＩＤ５２、及び画面名称５３が相互に関連付けて登録される。
リスト番号５１は、リストの順序を表す番号である。リスト番号５１は、リストの先頭から順に１、２、・・・と番号が振られていく。このリスト番号５１により、リスト中の画面の順序を管理することができる。そして、このリスト番号５１に、画面ＩＤ５２と画面名称５３とが紐付けられる。画面ＩＤ５２、画面名称５３は、それぞれ、図４で説明した画面ＩＤ４１、画面名称４２と同じ意味を有するものである。画面管理部１０は、ある画面からイベントが通知された際に、当該画面の画面ＩＤ４１、画面名称４２が、通常通知用リスト１２および強制通知用リスト１３のいずれかのリストの画面ＩＤ５２、画面名称５３の欄に登録される。尚、リストへの登録時の詳細については、図６、図７等を参照しながら後で説明を行う。
【００２９】
次に、画面管理部１０が行う一連の処理の一例を図６に示すフローチャートを用いて説明する。
まず、ステップＳ１において、画面管理部１０は、各画面制御部または入力受信部１１から、イベントを受信するまで待機する。イベントが受信された場合、ステップＳ２に進み、画面管理部１０は、受信されたイベントの種類が何であるかを判断する。具体的に画面管理部１０は、受信されたイベントが、画面に関するイベントであるか、それとも、入力受信部１１からのイベントであるかをまず判断する。この判断の結果、受信されたイベントが、入力受信部１１からのイベントである場合、画面管理部１０は、受信されたイベントがバーコード入力イベントであると判断する。
【００３０】
一方、受信されたイベントが、画面に関するイベントである場合、画面管理部１０は、入力受信部１１から受信した情報に含まれるイベント内容４３から、画面のどのようなイベントであるかを判断する。
この判断の結果、イベントの種類がアクティブ（画面アクティブイベント）である場合には、ステップＳ３に進む。ステップＳ３に進むと、画面管理部１０は、入力受信部１１から受信した情報に含まれる強制通知有無４４を取得する。そして、ステップＳ４において、画面管理部１０は、強制通知有無４４が「有」であるか、それとも「無」であるかの判断を行う。
【００３１】
この判断の結果、強制通知有無４４が「無」である場合には、ステップＳ５に進み、画面管理部１０は、イベントが発生した画面を通常通知用リスト１２の先頭（リスト番号５１が「１」の欄）に登録する。この場合、既に登録されている画面の順番を１つずつ下げる。一方、強制通知有無４４が「有」である場合には、ステップＳ６に進み、画面管理部１０は、イベントが発生した画面を強制通知用リスト１３に登録する。
【００３２】
ここで、ステップＳ５において、通常通知用リスト１２への登録を行う際に、既に同一の画面ＩＤ５２の画面が、通常通知用リスト１２に登録されている場合、イベントが発生した画面の画面ＩＤおよび画面名称を、通常通知用リスト１２の先頭に移動する。この場合、イベントが発生した画面よりも上位の順番の画面の順番を１つずつ下げる。一方、ステップＳ６において、強制通知用リスト１３への登録を行う際に、既に同一の画面ＩＤ５２の画面が、強制通知用リスト１３に登録されている場合には、イベントが発生した画面の画面ＩＤおよび画面名称の新たな登録を行わない（特に処理を行わない）。
【００３３】
ステップＳ２において、受信されたイベントが、バーコード入力イベント（入力受信部１１からのイベント）である場合には、ステップＳ７に進む。ステップＳ７に進むと、画面管理部１０は、通常通知用リスト１２に登録されている先頭の画面ＩＤ５２を取得し、取得した画面ＩＤ５２で識別される画面制御部に対して、バーコードの情報を通知する。ただし、通常通知用リスト１２の先頭の画面であっても、当該画面が非アクティブの状態である場合、画面管理部１０は、先頭の画面ＩＤ５２を取得せず、当該画面ＩＤ５２で識別される画面制御部に対して、バーコードの情報を通知しない。
【００３４】
次に、ステップＳ８において、画面管理部１０は、強制通知用リスト１３に登録されている全ての画面制御部に対して、バーコードの情報を通知する。尚、バーコードの情報の通知を受信した各画面制御部は、それぞれが有する機能の実行を行う。その際に、各画面制御部は、通知を受けたバーコードの情報により特定される成果物の状況に応じて異なる音を発生させる。例えば、通知を受けたバーコードの情報の入力に成功した場合と失敗した場合とで異なる音を発生させることができる。
【００３５】
バーコードの情報の入力に失敗する場合には、以下の場合がある。まず、バーコードの情報の読み取りに失敗した場合（バーコードが適切に読み取られなかった場合）がある。また、バーコードの情報により識別される成果物がワークフローシステムで管理されていない場合がある。また、バーコードの情報により識別される成果物がワークフローシステムで管理されているが、当該成果物が通知を受けた画面制御部で扱う工程とは異なる工程にある場合がある。さらに、バーコードの情報の読み取りに失敗した場合がある。これらの場合のそれぞれで異なる音を発生させるようにしてもよい。この他、照合画面３８において、バーコードの情報により特定される成果物の照合がＯＫである場合（当該成果物の部品が正しいものである場合）と、そうでない場合（照合がＮＧである場合）とで異なる音を発生させるようにしてもよい。
以上のようにすることによって、ユーザは、バーコードの読み取りによる各機能の実行結果を直感的に判断することが可能となる。
【００３６】
ステップＳ２において、イベントの種類がクローズ（画面クローズイベント）である場合には、ステップＳ９に進む。ステップＳ９に進むと、画面管理部１０は、イベントが発生した画面の画面ＩＤ５２および画面名称５３を、通常通知用リスト１２、強制通知用リスト１３から削除する。この場合、イベントが発生した画面よりも下位の順番の画面の順番を１つずつ上げる。このように、開かれていない画面に対しては、入力されたバーコードの情報の通知は行われない。
【００３７】
以上の処理の後、ステップＳ１０において、画面管理部１０は、アプリケーションが終了されたか否かを判定する。この判定の結果、アプリケーションが終了した場合には、図６のフローチャートによる処理を終了する。一方、アプリケーションが終了していない場合には、ステップＳ１に戻り、次のイベントが受信されるまで待機する。尚、アプリケーションの終了は、アプリケーションの終了を指示する所定の操作が行われたか否かによって判定される。
【００３８】
図７は、通常通知用リスト１２および強制通知用リスト１３の遷移の一例を示す図である。ここでは、以下の順序でアプリケーションが操作された場合を例に挙げて説明を行う。ここで、明細画面とデバイス設定画面に対しては、強制通知有無４４として「有」が設定されており、その他の画面に対しては、強制通知有無４４として「無」が設定されているものとする。このような設定としている理由は、前述した通りである。
【００３９】
操作１：アプリケーションを起動する。
操作２：検品画面を開く。
操作３：明細画面を開く。
操作４：再印刷画面を開く。
操作５：デバイス設定画面を開く。
操作６：再印刷画面にフォーカスを合わせる。
操作７：バーコードの入力を行う。
操作８：再印刷画面を閉じる。
【００４０】
まず、アプリケーションの起動時（操作１が行われた時）には、メイン画面３１が自動的に起動する。このため、強制通知有無が「無」であるメイン画面３１の情報（画面ＩＤおよびが画面名称）が、通常通知用リスト１２の先頭に登録される（図７の１番上の通常通知用リストを参照）。一方、強制通知用リスト１３は空である（図７の１番上の強制通知用リストを参照）。
【００４１】
次に、ユーザが、メイン画面３１の検品ＯＫ登録ボタン３４ａまたは検品ＮＧ登録ボタン３４ｂを押下すると（操作２が行われると）、検品画面制御部６は、検品画面を起動する。検品画面制御部６から画面管理部１０に対して、検品画面がアクティブになったことが通知されると、画面管理部１０は、検品画面については強制通知有無が「無」であると判断する。そして、画面管理部１０は、通常通知用リスト１２の先頭に検品画面の情報を登録する。これにより、メイン画面３１は、通常通知用リスト１２の２番目に移動することになる（図７の上から２番目の通常通知用リストを参照）。一方、強制通知用リスト１３は空の状態のままである（図７の上から２番目の強制通知用リストを参照）。
【００４２】
次に、ユーザが、メイン画面３１の明細ボタン３６を押下すると（操作３が行われると）、明細画面制御部８は、明細画面３９を起動する。明細画面制御部８から画面管理部１０に対して、明細画面３９がアクティブになったことが通知されると、画面管理部１０は、明細画面については強制通知有無が「有」であると判断する。そして、画面管理部１０は、強制通知用リスト１３に明細画面の情報を登録する（図７の上から３番目の強制通知用リストを参照）。一方、通常通知用リスト１２は変化しない（図７の上から３番目の通常通知用リストを参照）。
【００４３】
次に、ユーザが、メイン画面３１の再印刷ボタン３３を押下すると（操作４が行われると）、再印刷画面制御部５は、再印刷画面を起動する。再印刷画面制御部５から画面管理部１０に対して、再印刷画面がアクティブになったことが通知されると、画面管理部１０は、再印刷画面については強制通知有無が「無」であると判断する。そして、画面管理部１０は、通常通知用リスト１２の先頭に再印刷画面の情報を登録する。これにより、検品画面、メイン画面３１は、それぞれ、通常通知用リスト１２の２番目、３番目に移動することになる（図７の上から４番目の通常通知用リストを参照）。一方、強制通知用リスト１３は変化しない（図７の上から４番目の強制通知用リストを参照）。
【００４４】
次に、ユーザが、メイン画面３１のデバイス設定ボタン３７を押下すると（操作５が行われると）、デバイス設定画面制御部９は、デバイス設定画面を起動する。デバイス設定画面制御部９から画面管理部１０に対して、デバイス設定画面がアクティブになったことが通知されると、画面管理部１０は、デバイス設定画面については強制通知有無が「有」であると判断する。そして、画面管理部１０は、強制通知用リスト１３にデバイス設定画面の情報を登録する（図７の上から５番目の強制通知用リストを参照）。一方、通常通知用リスト１２は変化しない（図７の上から５番目の通常通知用リストを参照）。
尚、図７では、デバイス設定画面の情報を強制通知用リスト１３の先頭に登録しているが、ステップＳ８でも説明したように、バーコードの情報の入力が行われると、強制通知用リスト１３に登録されている全ての画面に対して通知が行われる。このため、強制通知用リスト１３に登録する画面の順番（リスト順）については問わない。
【００４５】
次に、ユーザが、操作４で起動させた再印刷画面にフォーカスを合わせると（操作６が行われると）、再印刷画面制御部５から画面管理部１０に対して、再印刷画面がアクティブになったことが通知される。しかし、通常通知用リスト１２には既に再印刷画面の情報が登録されているため、再印刷画面の情報を通常通知用リスト１２に新たに追加することは行われない。また、再印刷画面の情報は、通常通知用リスト１２の先頭に登録されているため、再印刷画面の情報を通常通知用リスト１２の先頭に移動させる処理も行われない。以上より、操作６が終了した後の通常通知用リスト１２の状態は（図７の上から５番目の通常通知用リストから）変化しない。
【００４６】
そして、ユーザが、入力装置２（バーコードリーダー）を用いてバーコードの読み取りを行う（操作７を行う）。このとき、バーコードの情報が読み取られたというイベント（バーコード入力イベント）が入力受信部１１を介して画面管理部１０に対して通知される。バーコード入力イベントを受信した画面管理部１０は、２つのリストのうち、通常通知用リスト１２の先頭に登録されている画面の画面制御部、すなわち再印刷画面制御部５に対してバーコードの情報を通知する。これにより、再印刷画面制御部５は、再印刷画面に対して、バーコードの情報の表示を行う。
【００４７】
また、画面管理部１０は、通常通知用リスト１２の２番目、３番目に登録されている検品画面、メイン画面の画面制御部（検品画面制御部６、メイン画面制御部３）に対しては、バーコードの情報を通知しない。よって、これら検品画面およびメイン画面はオープンされている状態であるが、バーコードの読み取りが行われても、これらの画面（ユーザインタフェース）に変化は生じない。
【００４８】
また、画面管理部１０は、強制通知用リスト１３に登録されている全ての画面の画面制御部、すなわち明細画面制御部８とデバイス設定画面制御部９に対して、バーコードの情報を通知する。これにより、明細画面制御部８、デバイス設定画面制御部９は、それぞれ、明細画面、デバイス設定画面に対して、バーコードの情報の表示を行う。明細画面と、デバイス設定画面は非アクティブの状態であるのにもかかわらず、強制通知を行う画面と判断されたため、バーコードの情報の通知が行われる。特に、明細画面は、デバイス設定画面よりも前に起動された画面であるのにもかかわらず、強制通知を行う画面と判断されたため、バーコードの情報の通知が行われる。
【００４９】
最後に、ユーザが、再印刷画面を閉じる操作を行うと（操作８が行われると）、再印刷画面制御部５から画面管理部１０に対して、再印刷画面がクローズされるというイベント（画面クローズイベント）が通知される。このタイミングで画面管理部１０は、再印刷画面の情報が登録されている通常通知用リスト１２から、再印刷画面の登録を削除する。これにより、通常通知用リスト１２の先頭に検品画面の情報が、２番目にメイン画面の情報が登録される（図７の一番下の通常通知用リストを参照）。一方、強制通知用リスト１３は変化しない（図７の一番下の強制通知用リスト１３を参照）。操作８が完了した状態で再度バーコードの情報が入力された場合、検品画面は非アクティブの状態（デバイス設定画面がアクティブの状態）であるので、画面管理部１０は、検品画面制御部６に対して、バーコードの情報を通知しない。
【００５０】
図８は、前述した操作７が完了した後の情報処理装置のユーザインタフェースの状態の一例を示す図である。
図８に示すように、操作１〜５を実施することにより、メイン画面３１、検品画面８０、明細画面３９、再印刷画面８１、及びデバイス設定画面８２が表示装置上に同時に表示される。これらの画面は、図３で説明した通りモードレスで表示される。この状態で操作７により、「１２３４５６７８９」の番号を表すバーコードが読み取られたものとする。図６のステップＳ７、Ｓ８で説明した通り、通常通知用リスト１２の先頭に登録されている画面の画面制御部と、強制通知用リスト１３に登録されている全ての画面の画面制御部に対して、バーコードの情報が通知される。
【００５１】
操作７が行われる前の通常通知用リスト１２および強制通知用リスト１３は、図７の下から２番目の状態である。このため、通常通知用リスト１２の先頭に登録されている再印刷画面８１に「１２３４５６７８９」の番号に対応する成果物が再印刷対象として表示される。一方、通常通知用リスト１２の先頭に登録されていない検品画面８０・メイン画面３１の制御部（検品画面制御部６とメイン画面制御部３）には、バーコードの情報の通知は行われない。このため、読み取ったバーコードの情報は、検品画面８０と、メイン画面３１には、表示されない。また、検品画面８０と、メイン画面３１に対応するワークフローの機能も実行されない。また、強制通知用リスト１３に登録されている明細画面３９・デバイス設定画面８２の制御部（明細画面制御部８とデバイス設定画面制御部９）には、バーコードの情報の通知が行われる。このため、明細画面３９とデバイス設定画面８２の入力番号の欄に「１２３４５６７８９」の番号が表示され、ユーザは、明細情報の確認とデバイスの設定とを行うことが可能になる。
【００５２】
尚、バーコードの情報が入力された時点で、アプリケーションの画面の全てが非アクティブ（図８の例では、メイン画面３１、明細画面３９、検品画面８０、再印刷画面８１、デバイス設定画面８２が非アクティブ）の状態である場合がある。他のアプリケーションの画面がアクティブの状態である場合がこのような場合に当たる。この場合には、例えば、画面管理部１０は、バーコードの情報の通知を行うべき画面制御部の全部または一部や、メイン画面制御部３にエラー通知を行うことができる。これにより、エラー通知を受けた画面制御部が、自身が制御する画面に対して、読み取られたバーコードによる機能を実行できないことや、バーコードの再読み取りを促すことなどを示すメッセージを表示することができる。この他、画面管理部１０は、このようなメッセージを表示装置の最前面に表示してもよい。
【００５３】
以上のように本実施形態では、複数の画面が起動している状態でバーコードの情報を入力すると、通常通知用リスト１２の先頭に登録されている画面と強制通知用リスト１３に登録されている全ての画面の両者に対して、その情報を通知する。このように、通常通知用リスト１２と強制通知用リスト１３の２つのリストに登録を行って、バーコードの情報を表示する画面を制御することで、起動している画面の機能と状態に応じて適切な通知を行うことができる。前述した例の場合、操作２で起動した検品画面は登録を行う目的である理由から、バーコードが読み取られた時点で検品の登録が実行される機能を有する。そのため、前述した従来技術のように、全ての画面に対して、バーコードの情報を通知すると、アクティブになっていなくても画面が起動していれば、検品の登録処理が実行されてしまう。このようなケースにおいても画面がアクティブになっている時にのみ当該画面の機能を実行する制御が可能である。したがって、ユーザビリティや作業効率の向上の面で効果的である。また、ユーザの意図しない動作が実行されることを防ぐことが可能となる。
【００５４】
本実施形態では、通常通知用リスト１２の先頭に登録されている画面が非アクティブの状態である場合には、当該画面に対しては、バーコードの情報を通知しないようにした。しかしながら、必ずしもこのようにする必要はない。例えば、通常通知用リスト１２の先頭に登録されている画面に対しては、当該画面の状態に関わらず、バーコードの情報を通知してもよい。この他、通常通知用リスト１２の先頭以外の画面に対しても、当該画面の状態に関わらず、バーコードの情報を通知してもよい。例えば、通常通知用リスト１２の先頭からｎ（ｎは２以上の整数）番目までの画面に対してバーコードの情報を表示してもよい。また、通常通知用リスト１２に登録されている画面のそれぞれについて、アクティブの状態になってからの時間を管理し、当該時間が所定値以下の画面に対してバーコードの情報を通知してもよい。このように、通常通知用リスト１２を、アクティブの状態の画面と、所定の通知条件を満たす非アクティブの状態の画面を管理するリストにすることができる。この場合でも、強制通知用リスト１３は、無条件でパーコードの情報を通知する画面を管理するリストになることに変わりはない。
【００５５】
（第２の実施形態）
本実施形態では、バーコードの情報が入力された時点で別のアプリケーションの画面がアクティブになっている場合に、非アクティブの状態のアプリケーションの画面の画面制御部に、バーコードの情報を通知するか否かを設定する。そして、バーコードの情報を通知することが設定されている場合には、第１の実施形態で説明したようにして、バーコードの情報の通知を行う。このように、本実施形態と第１の実施形態とは、バーコードの情報が入力された時点で別のアプリケーションの画面がアクティブになっている場合の処理が主として異なる。したがって、本実施形態の説明において、第１の実施形態と同一の部分については、図１〜図８に付した符号と同一の符号を付す等して詳細な説明を省略する。
【００５６】
以下のように、例えば、前述した操作６が、再印刷画面にフォーカスを合わせるのではなく、別のアプリケーションを起動する操作である場合に、これまでアクティブであったアプリケーション自体が非アクティブになる。
操作１：アプリケーションを起動する。
操作２：検品画面を開く。
操作３：明細画面を開く。
操作４：再印刷画面を開く。
操作５：デバイス設定画面を開く。
操作６：別アプリケーションを起動する。
操作７：バーコードの入力を行う。
操作８：再印刷画面を閉じる。
【００５７】
受信したイベントの種類がバーコード入力イベントである場合の画面管理部１０が行う一連の処理の一例を図９に示すフローチャートを用いて説明する。図９のフローチャートは、例えば、図６のステップＳ７、Ｓ８の代わりに実行されるものである。尚、以下の説明では、バーコードの情報の入力により、ワークフローの機能を実行するアプリケーション（第１の実施形態の図３、図８のような表示を行うアプリケーション）を必要に応じて本アプリケーションと称する。
【００５８】
まず、ステップＳ１１において、画面管理部１０は、本アプリケーション自体がアクティブになっているか否か（本アプリケーションの画面の何れか１つがアクティブになっているか否か）を判断する。この判断の結果、本アプリケーション自体がアクティブである場合、ステップＳ１５に進み、画面管理部１０は、画面管理部１０の内部が管理する通知フラグをＯＮにする。通知フラグとは、図６のステップＳ７、Ｓ８に相当する処理を実行するか否かを表すフラグであり、ＯＮであれば当該処理を実行し、ＯＦＦであれば当該処理を実行しないことを意味する。そして、後述するステップＳ１６に進む。
【００５９】
一方、本アプリケーション自体がアクティブでない場合（本アプリケーションの全ての画面が非アクティブである場合）には、ステップＳ１２に進み、画面管理部１０は、非アクティブ時通知フラグがＯＮになっているか否かを判断する。非アクティブ時通知フラグとは、アプリケーション自体が非アクティブの時にでも、通常通知用リスト１２の先頭と強制通知用リスト１３に登録されている画面の画面制御部に対して、バーコードの情報を通知するか否かを表すフラグである。非アクティブ時通知フラグがＯＮの場合には、バーコードの情報を通知し、ＯＦＦの場合にはバーコードの情報を通知しない。非アクティブ時通知フラグは、例えば、本アプリケーションの起動時に予め設定することができる。非アクティブ時通知フラグは、アプリケーションで値を固定値にしてもよいし、ユーザが値を変更できるように設定ファイル等で編集が可能な構成としてもよい。非アクティブ時通知フラグがＯＮの場合にはステップＳ１３に進み、画面管理部１０は、通知フラグをＯＮにする。一方、非アクティブ時通知フラグがＯＦＦの場合はステップＳ１４に進み、画面管理部１０は、通知フラグをＯＦＦにする。
【００６０】
次に、ステップＳ１６に進み、画面管理部１０は、ステップＳ１３、Ｓ１４又はＳ１５で決定された通知フラグの状態を判断する。この判断の結果、通知フラグがＯＮの場合、ステップＳ１７、Ｓ１８の処理を行う。ステップＳ１７、１８は、それぞれ、図６のステップＳ図６のステップＳ７、ステップＳ８の処理と同じであるので、これらステップＳ１７、Ｓ１８の詳細な説明を省略する。
一方、通知フラグがＯＦＦの場合、通常通知用リスト１２の先頭と強制通知用リスト１３に登録されている画面の画面制御部に対して、バーコードの情報を通知しない。このため、ステップＳ１７、Ｓ１８の処理を行わずに、図９のフローチャートによる処理を終了する。
【００６１】
以上のように本実施形態では、本アプリケーション自体が非アクティブになっている状態でバーコードの情報を入力した場合でも、ユーザの設定に基づいて、その情報を本アプリケーションの画面の画面制御部に通知させるか否かを切り替えることができる。
本アプリケーション自体が非アクティブの時においても、バーコードの情報を画面制御部に通知させるユースケースとして、ユーザが別のアプリケーションを起動しながらバーコードの入力を行いたいケースが挙げられる。
【００６２】
例えば、バーコードの情報の入力を行った際に、その情報を別のアプリケーションで開いた資料一覧から探し、チェックを行うとする。この場合、本アプリケーション自体がアクティブの時のみに、その情報を通知する設定にすると、本アプリケーションをアクティブにする操作と、別のアプリケーションをアクティブにする操作と、を繰り返す必要があり、画面に対するクリック数増加する。これに伴い、作業効率が落ちてしまう。そのため、本アプリケーション自体が非アクティブであっても、入力したバーコードの情報を、本アプリケーションの画面制御部に通知させる設定を行うことで、作業効率を落とすことなく、本ユースケースを実行することができる。
【００６３】
一方、本アプリケーション自体が非アクティブの時に、バーコードの情報を画面に通知させたくないユースケースとしては、以下のケースが挙げられる。すなわち、非アクティブにしたのは、現在、本アプリケーションを使用していないからなので、本アプリケーションの画面に入力を行わせたくないケースが挙げられる。
したがって、以上のようなユーザのユースケースに応じて設定を切り替えることで、複数のユースケースに対応した使い方を行うことが可能になる。
【００６４】
尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【００６５】
（その他の実施例）
本発明は、以下の処理を実行することによっても実現される。即ち、まず、以上の実施形態の機能を実現するソフトウェア（コンピュータプログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）が当該コンピュータプログラムを読み出して実行する。
【符号の説明】
【００６６】
１  情報処理装置、２  入力装置
【図１】
2015132931.tif 000003
【図２】
2015132931.tif 000004
【図３】
2015132931.tif 000005
【図４】
2015132931.tif 000006
【図５】
2015132931.tif 000007
【図６】
2015132931.tif 000008
【図７】
2015132931.tif 000009
【図８】
2015132931.tif 000010
【図９】
2015132931.tif 000011