JP3957838B2 - Information processing apparatus and method, and storage medium storing the program - Google Patents

Information processing apparatus and method, and storage medium storing the program Download PDF

Info

Publication number
JP3957838B2
JP3957838B2 JP28074797A JP28074797A JP3957838B2 JP 3957838 B2 JP3957838 B2 JP 3957838B2 JP 28074797 A JP28074797 A JP 28074797A JP 28074797 A JP28074797 A JP 28074797A JP 3957838 B2 JP3957838 B2 JP 3957838B2
Authority
JP
Japan
Prior art keywords
processing
target information
processing target
job
execution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP28074797A
Other languages
Japanese (ja)
Other versions
JPH11120094A (en
Inventor
スレッシュ ジェヤチャンドラン
直子 上田
聖範 若井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP28074797A priority Critical patent/JP3957838B2/en
Priority to EP98308303A priority patent/EP0910008A3/en
Priority to US09/170,653 priority patent/US6667810B1/en
Publication of JPH11120094A publication Critical patent/JPH11120094A/en
Priority to US10/648,721 priority patent/US7187478B2/en
Priority to US11/615,149 priority patent/US7639405B2/en
Application granted granted Critical
Publication of JP3957838B2 publication Critical patent/JP3957838B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理装置及びその方法、及びそのプログラムを記憶した記憶媒体に関するものである。
【0002】
【従来の技術】
従来の情報処理装置においては、情報の送信は、利用者が、送信したい時期に送信を指示することで行われている。また、送信時期を指定しておき、指定した時期に送信することも行われている。
【0003】
【発明が解決しようとする課題】
しかしながら、一旦なされた送信の設定を変更することはできなかった。また、また、送信の設定が行なわれている情報に対して、更に別の送信処理を設定することはできなかった。
【0004】
【課題を解決するための手段】
上記課題を解決するために、本発明によれば、情報処理装置に、処理対象情報の送信処理及び印刷処理を実行する実行手段と、処理対象情報を処理の種類、実行時期及び実行先と対応付けて記憶する処理対象情報記憶手段と、該処理対象情報記憶手段に記憶された処理対象情報のリストを表示する表示手段と、前記処理対象情報のリストから処理対象情報を選択する処理対象情報選択手段と、選択された前記処理対象情報に対して実行すべき処理の種類を選択する処理選択手段と、選択された前記処理の種類が前記処理対象情報と対応付けて記憶された処理の種類と一致するか否かを判別し、一致する場合は、当該処理対象情報と対応付けて前記処理対象情報記憶手段に記憶された設定を変更し、一致しない場合は前記処理対象情報と対応付けて前記選択された処理の種類、実行時期及び実行先を追加する記憶制御手段と、前記処理対象情報記憶手段に記憶された処理対象情報に対して、該処理対象情報と対応付けて前記処理対象情報記憶手段に記憶された種類の処理を、記憶された実行時期及び実行先に基づいて実行するように前記実行手段を制御する実行制御手段とを備える。
【0005】
また、他の態様によれば、処理対象情報を、処理の種類、実行時期及び実行先と対応付けて記憶する処理対象情報記憶手段と、表示手段と、処理対象情報選択手段と、処理選択手段と、記憶制御手段と、実行手段とを備え、処理対象情報の送信処理及び印刷処理を実行可能な情報処理装置における情報処理方法に、前記表示手段が、前記処理対象情報記憶手段に記憶された処理対象情報のリストを表示する表示工程と、前記処理対象情報選択手段が、前記処理対象情報のリストから処理対象情報を選択する処理対象情報選択工程と、前記処理選択手段が、選択された前記処理対象情報に対して実行すべき処理の種類を選択する処理選択工程と、前記記憶制御手段が、選択された前記処理の種類が前記処理対象情報と対応付けて記憶された処理の種類と一致するか否かを判別し、一致する場合は、当該処理対象情報と対応付けて前記処理対象情報記憶手段に記憶された設定を変更し、一致しない場合は前記処理対象情報と対応付けて前記選択された処理の種類、実行時期及び実行先を追加する記憶制御工程と、前記実行手段が、前記処理対象情報記憶手段に記憶された処理対象情報に対して、該処理対象情報と対応付けて前記処理対象情報記憶部に記憶された種類の処理を、記憶された実行時期及び実行先に基づいて実行する実行工程とを備える。
【0006】
また、他の態様によれば、コンピュータ読み取り可能なプログラムを記憶した記憶媒体に、処理対象情報を、処理の種類、実行時期及び実行先と対応付けて記憶する処理対象情報記憶手段を備え、処理対象情報の送信処理及び印刷処理を実行可能なコンピュータに、前記処理対象情報記憶手段に記憶された処理対象情報のリストを表示する表示工程と、前記処理対象情報のリストから処理対象情報を選択する処理対象情報選択工程と、選択された前記処理対象情報に対して実行すべき処理の種類を選択する処理選択工程と、選択された前記処理の種類が前記処理対象情報と対応付けて記憶された処理の種類と一致するか否かを判別し、一致する場合は、当該処理対象情報と対応付けて前記処理対象情報記憶手段に記憶された設定を変更し、一致しない場合は前記処理対象情報と対応付けて前記選択された処理の種類、実行時期及び実行先を追加する記憶制御工程と、前記処理対象情報記憶手段に記憶された処理対象情報に対して、該処理対象情報と対応付けて前記処理対象情報記憶部に記憶された種類の処理を、記憶された実行時期及び実行先に基づいて実行する実行工程とを実行させるプログラムを記憶している。
【0007】
【発明の実施の形態】
以下、図面を用いて本発明の1実施形態を詳細に説明する。
【0008】
図1は、本実施形態の機能構成を示した図であり、ユーザ101、クライアント102、サーバ103、データベース104、デーモン105の関係を示したものである。クライアント102と、サーバ103は同一のデバイス上にあっても良いし、ネットワーク等で接続された別のデバイス上にあっても良い。
【0009】
ユーザ101が何らかの操作をクライアント102に対して行うと、クライアント102はその操作に対応する要求を生成し、サーバー103に送信する。サーバ103は、受け取った要求を解釈して、データベース104とやり取りして、Jobの追加・削除やデータの取得を行うなどの処理を行う。その結果、必要に応じて、対応するHTMLページを作成して、クライアント102に送信する。クライアント102は、受取ったHTMLページを表示し、ユーザ101に新たな操作を促す。
【0010】
データベース104に保存されたJobはデーモン105により監視され、デーモン105は、実行条件が満たされたJobに対応した、印刷、送信、通知などの処理を実行させる。
【0011】
図2は、本実施形態の機能構成の詳細を表した図である。
【0012】
クライアントコンポーネント102は、操作部201及び2つのWeb Browser 202,203から構成される。操作部201を介して行われたユーザの操作は、Web Browser 202,203によって、要求に変換され、サーバコンポーネント103に送信される。
【0013】
サーバコンポーネント103は、Web Server 204、デバイスマネージャ205、Requestマネージャ207、Command解析・処理部208から構成される。クライアントコンポーネント102から送信された要求は、Web Server 204により受信され、デバイスマネージャ205または Requestマネージャ207に渡される。
【0014】
デバイスマネージャ205は、プリンタ206のステータスを取得したり、制御を行う。Request マネージャ207は、要求を処理コマンドに変換し、Command解析・処理部208に渡す。
【0015】
Command解析・処理部208では、指示された処理コマンドに対応した処理を実行し、Databaseマネージャ209を介して、データベース104にアクセスし、Jobの追加・更新をする。
【0016】
一方、Daemon105は、一定間隔でDatabaseマネージャ209を介して、データベース104にアクセスし、実行条件が満たされたJobが存在するかどうかチェックし、存在する場合、対応する処理を実行する。
【0017】
図3は、ユーザの操作に対応した情報の流れを説明した図である。
【0018】
クライアント コンポーネント102は、ユーザの操作を入力情報として受け取り、要求を生成して、サーバ コンポーネント103に送信する。
【0019】
サーバ コンポーネント103は、受け取った要求を解釈して、データベースマネージャ209を介して、データベース104とやり取りして、Jobの追加・削除やデータの取得を行うなどの処理を行う。また、デバイスマネージャ205を介して、プリンタ206とやり取りをして、プリンタのステータスを取得するなどの処理を行う。その結果、必要に応じて、対応する表示命令(HTMLページ)を作成して、クライアント102に送信する。
【0020】
クライアント102は、受取った表示命令(HTMLページ)をユーザに表示し、新たな操作を促す。
【0021】
データベース104に保存されたJobはデータベースマネージャ209を介して、デーモン105により監視され、実行条件が満たされたJobに対応した、印刷、送信、通知などの処理を実行させる。
【0022】
図4は、ユーザの入力を受け取った後、対応するコマンドの処理が実行されるまでの処理の流れを示した図である。
【0023】
ユーザが操作を行うと、操作部201により対応する操作指示データに変換される。例えば、ユーザがキーボードやマウスを用いて行った操作は、対応するキーコードや、マウス移動情報等の情報処理装置が扱える情報に変換される。
【0024】
その後、上記で変換された操作指示データを受け取ったWeb Browser 202は、Web Server 204への対応する要求に変換し、送信する。例えば、画面に表示されているボタンの1つを選択した場合、「特定のボタンを選択」という要求が作成されることになる。
【0025】
上記要求を受け取ったWeb Server 204は、受け取ったデータをRequest マネージャ207に渡し、Request マネージャ207では要求に対応する処理コマンドに変換し、Command 解析・処理部208に渡す。例えば、ユーザが印刷を指示するボタンを選択した場合、「印刷を指示するボタンを選択」という要求から、「印刷を指示するボタンを選択に対応する処理実行」という処理コマンドに変換され、実行される。
【0026】
図5は、実際に行われた処理の結果や、プリンタのステータスの変化に対応して、ユーザに情報を表示するまでの処理の流れを示した図である。
【0027】
処理結果を受け取ったRequest マネージャ207は、対応する操作指示データをWeb Server 204に渡す。また、同様にプリンタのステータスの変化を検知したデバイスマネージャ205は、対応する操作指示データをWeb Server 204に渡す。例えば、処理結果として新たな操作画面をユーザに表示する場合、画面に表示する為の情報をHTMLのようなデータに変換することで、実現している。また、プリンタのステータスも同様にして、画面に表示する為の情報をHTMLのようなデータに変換することで、実現している。
【0028】
上記操作指示データを受け取ったWeb Server 204は、Web Browser 202にデータを送信し、Web Browser 202では実際にタッチパネルなどの表示操作部に表示することで、ユーザに示す。
【0029】
図5は、実際に行われた処理の結果や、プリンタのステータスの変化に対応して、ユーザに情報を表示するまでの、処理及びデータの流れを示した図である。
【0030】
処理結果を受け取ったRequest マネージャ207は、対応する操作指示データをWeb Server 204に渡す。また、同様にプリンタのステータスの変化を検知したデバイスマネージャ205は、対応する操作指示データをWeb Server 204に渡す。例えば、処理結果として新たな操作画面をユーザに表示する場合、画面に表示する為の情報をHTMLのようなデータに変換することで、実現している。また、プリンタのステータスも同様にして、画面に表示する為の情報をHTMLのようなデータに変換することで、実現している。
【0031】
上記操作指示データを受け取ったWeb Server 204は、Web Browser 202、203にデータを送信し、Web Browser 202では実際にタッチパネルなどの表示操作部に操作画面を表示し、ユーザに示す。Web Browser203は、プリンタのステータスを表示する。
【0032】
図6は、複数のデバイス(デバイスAと、デバイスBとする)間における、機能の関係を表した図である。ここでは、デバイスAは印刷装置であり、デバイスBは、ユーザのメールやスケジュールを管理するデスクトップ・パソコンとする。デバイスA及びデバイスBには、それぞれクライアントコンポーネント102、サーバコンポーネント103、デーモン105が存在する。但し、ここでは、ユーザがデバイスA側にいるものとして、デバイスBのクライアントコンポーネント102は省略している。
【0033】
ここで、ユーザがデバイスAで操作を行ったとすると、操作部201により、ユーザの操作情報が入力情報として取得され、サーバコンポーネント103のデバイスマネージャ205及びRequestマネージャ207に要求として渡される。
【0034】
デバイスマネージャ205は、プリンタ206のステータスを取得するなどにより、ユーザからの要求に答える。また、Request マネージャ207は要求の種類により、印刷制御部601によりプリンタを制御したり、更にCommand 解析処理部208により、より詳細な情報を解析し、対応する処理を実行させる。
【0035】
その結果、必要に応じて情報の形式を、変換制御部603を用いることで変換したり、制御部602を介して、様々な処理を実行する。ここで、Jobの管理が必要と判断されたならば、Databaseマネージャ209を介して、Database104の追加・更新を行い、表示が必要と判断されたならば、表示制御部604によって表示を行う。また、通知が必要と判断されたならば、通知制御部605によって通知を行う。
【0036】
一方、Daemon 105は定期的にDatabase 104を監視し、実行条件が満足されたJobが存在すれば、対応する処理を実行させる。
【0037】
ここで、デバイスAで処理が完結しないと判断された場合、デバイスBに要求が送信され、デバイスBのRequestマネージャ207が対応する処理を実行させる。例えば、デバイスBのファイルの印刷の場合、印刷部607によって、対応するアプリケーションを用いて印刷処理が実行される。また、Mailアクセスの場合、Mail制御部608によって、対応するアプリケーションを用いて、アクセスされる。この他にも、スケジュール情報の参照など、対応するアプリケーションが用いられて実現される。
【0038】
更に、デバイスBが持つDatabase104に格納されたJobに対しても、アクセスすることができる。
【0039】
図7は、本実施形態に係るシステム構成図である。
【0040】
同図において、ネットワーク701には、種々の装置が接続され、ネットワーク701を介してデータの送受信が行われる。プリンタ702は、ネットワークを介して受信したデータを印刷するとともに、入出力操作部703を有する。入出力操作部703は、ユーザに対して各種表示を行うとともに、ユーザからの指示を受け付ける。スキャナ704、マルチファンクション機器705も同様の入出力操作部を有している。スキャナ704は、紙などに印刷されたデータを光学的に読み取るものであり、マルチファンクション機器705は、プリンタ702とスキャナ704の機能を併せ持っている。パーソナルコンピュータ706は、文書や画像を作成したり、ユーザのメールやスケジュールなどのパーソナルデータを管理する。
【0041】
図8は、本実施形態に係るプリンタの機能ブロック図である。
【0042】
同図において、タッチパネル801は、ユーザに対してプリンタのステータスやメニュー画面の表示を行うとともに、ユーザが表示面に触れることで、メニュー項目の選択や表示されるキーボードによる文字の入力を行うことができる。なお、タッチパネル801に代えて、通常のディスプレイとキーボードを用意してもよい。
【0043】
CPU802は、フローチャートにつき後述する処理手順を含む各種プログラムを実行し、システムバス808により接続された装置各部を制御する。印刷部803は、データを紙などに印刷する。通信部804は、ネットワークを介して、デスクトップやスキャナ、他のプリンタなどと、命令やステータスを含むデータを送受信する。
【0044】
ROM805は、固定的なデータやプログラムを記憶する。RAM806は、データやプログラムを一時記憶する。ハードディスクドライブ(HDD)807は、プログラムやデータを永続的に記憶でき、上述したデータベースとして利用される。システムバス808は、上述した装置各部を接続し、装置間でデータやアドレス、制御信号を送受信する媒体として利用される。フローチャートにつき後述する処理手順を含む各種プログラムは、ROM805に記憶されていてもよいし、HDD807からRAM806へ、処理に先立ってあるいは処理の実行中に必要に応じてロードされるようにしてもよい。
【0045】
図9は、電源投入時の起動順序を示すフローチャートであり、ユーザがマシンの電源を入れた際の起動順序を示している。ステップS901でユーザが電源をonすると、ステップS902でOSが起動し、続いてステップS903でwebサーバが起動する。次にステップS904でクライアントが起動して、最後にステップS905でデーモンが起動する。
【0046】
図10は、クライアントコンポーネントの動作を表すフローチャートである。クライアントが起動すると、ステップS1001でウェブブラウザオブジェクトを作成して、ステップS1002でサーバコンポーネントへ要求を出し、HTMLページ作成を指示する(この時のページは、Opening Screenである)。その要求に対してサーバから送られたHTMLページをステップS1003で表示し、ステップS1004でユーザの入力を待つ。そして、ユーザの入力によって対応する処理を行う。ユーザの要求がexitである場合には、ステップS1006でシステムをシャットダウンして終了する。ユーザの要求がクライアントサイドで処理すべき場合は、ステップS1009で処理し、再びユーザの入力待ち状態になる。サーバサイドで処理すべき場合はステップS1008でサーバーコンポーネントへ処理要求を出し、その要求に対して作成されたHTMLページを受取り、表示する。その後、再びユーザの入力待ち状態になる。
【0047】
図11は、クライアントの要求に対するサーバコンポーネントの処理手順を示すフローチャートである。
【0048】
サーバコンポーネントは、ステップS1101でクライアントの要求を取得し、ステップS1102でこの要求を解析し、要求に対応する処理を行う。OpeningScreenを表示する要求に対しては、ステップS1104でプリンタステータスを取得する。Cancel All Jobsに対しては、ステップS1105で、図12につき後述する関数CancelAllPrinterJobs()関数を呼んで、全てのJobをキャンセルする。Cancel/Pause/Restart要求に対しては、ステップS1106でSetPrinterJobsStatus()関数を呼び、Jobを指定されたStatusに設定する。
【0049】
以上のどの要求に対しても、最後にステップS1107で対応するHTMLページを作成し、ステップS1108でクライアントコンポーネントにHTMLページを送信して処理を終える。
【0050】
要求が「login」「logout」であった場合は、図15につき後述する。要求が「Goto Other Device」「Goto Desktop」であった場合は、図16につき後述する。要求が、「Search」「Help」「Receive Job / Receive Notification」であった場合は、図17につき後述する。要求が、「Print」「Send」「Delete」「Reschedule」「Preview」であった場合は、図22につき後述する。
【0051】
図12は、CancelAllPrinterjobsの処理手順を示すフローチャートである。プロトタイプは、DWORD CancelAllPrinterjobs()である。
【0052】
まず始めに、ステップS1201で、図13につき後述する関数GetAllPrinterJobsを呼び、スプールからJobを取得する。ステップS1202で特定のプリンタをオープンし、ステップS1203で各々のJobのステータスをキャンセルにセットする。その後ステップS1204でプリンタをクローズする。これを、Jobがすべてキャンセルにセットされるまで行う。
【0053】
図13は、GetAllPrinterjobsの処理手順を示すフローチャートである。プロトタイプは、Int GetAllPrinterjobs(pInfo)である。
【0054】
まず、ステップS1301でEnumPrinter()関数を用いて、有効なプリンタ、プリントサーバ、ドメイン、プリント、プロバイダの列挙を行う。ステップS1302で列挙された対象のうちの一つをオープンし、ステップS1303でEnumJob()関数を用いてスプール中の有効なJobを列挙し、ステップS1304でプリンタをクローズする。この操作を全対象について行う。
【0055】
図14は、SetPrinterJobStatusの処理手順を示すフローチャートである。プロトタイプは、Int SetPrinterJobStatus(pPrinterName,JobId,Status)である。
【0056】
まず、ステップS1401でGetJob関数を用いて、スプールから指定されたJobを取得する。ステップS1402で、そのJobが存在する特定のプリンタをオープンし、ステップS1403でJobのステータスを指定された値にセットする。ステップS1404で最後にプリンタをクローズして終わる。
【0057】
図15はクライアントの要求が、「login」「logout」であった場合のサーバの処理手順を示すフローチャートである。
【0058】
要求がloginであったときは、まずステップS1502でlogin verbとリモートデバイスリストを取得し、ステップS1503でユーザ名を取得する。ステップS1504でGetUserId()をよび、そのユーザに有効なJobリストを取得し、ステップS1505で対応するHTMLページを作成すると同時に、ステップS1506でその隠れ領域にユーザとJobの詳細を保存する。
【0059】
一方、Logout要求の場合には、ステップS1507でリモートデバイスリストが空かを調べ、空のときは、ステップS1510で、ステータスに従ってOpeningScreenページを作成する。空でないときは、リストが空になるまで、ステップS1508で次のデバイスにlogin verb=Disconnectでログインし、ステップS1509でそのデバイスをリモートデバイスリストから削除することを繰り返す。すなわち、リモートデバイスリスト中の全てのデバイスをログアウトする。リストが空になったら、OpeningScreenページを作成する。
【0060】
Login、logoutどちらの場合も、最後にステップS1511で、作成したページをクライアントコンポーネントに送信して終わる。
【0061】
図16はクライアントの要求が、「Goto Other Device」「Goto Desktop」であった場合のサーバの処理手順を示すフローチャートである。
【0062】
要求がGoto Other Deviceの場合、ステップS1602でデバイス名とデバイスアドレスを取得する。Goto Desktopの場合は、ステップS1603でデスクトップアドレスを取得する。その後、ステップS1604でそのデバイスをリモートデバイスリストに追加し、ステップS1605でlogin verbを作成する。login verbがDevice or Desktop、Print、Send、Delete、Rescheduleの場合、ステップS1607でLogin verbによって、デバイスへログインし、Device or Desktopの場合は、ステップ S1608でオープニングスクリーンのHTMLページを作成し、Print、Send、Delete、Reschedule の場合は、ステップ S1609、1610、1611、1612で、それぞれPrintJob、Send Job、Delete Job、Reschedule JobのスクリーンのHTMLページを作成する。また、login verbがDisconnectの場合、ステップS1613でデバイスからログアウトし、ステップS1614でそのデバイスをリモートデバイスリストより削除し、ステップ S1615でオープニングスクリーンのHTMLページを作成する。最後にクステップS1616で、クライアントステップコンポーネントにページを送信して終わる。
【0063】
図17はクライアントの要求が、「Search」「Help」「Receive Job / Receive Notification」であった場合のサーバの処理手順を示すフローチャートである。
【0064】
Search要求の場合、ステップS1702で検索パラメータを取得し、ステップS1703で検索を実行する。ステップS1704で、その実行結果から検索結果のHTMLページを作成する。Help要求の場合、ステップS1705でヘルプコンテキストパラメータを取得し、ステップS1706で対応するヘルプスクリーンHTMLページを作成する。どちらの要求の場合も、最後にステップS1707で、作成したHTMLページをクライアントコンポーネントに送信して終了する。
【0065】
要求の種類が、Receive Job/Notificationの場合、ステップS1708でデータバッファを読み、ステップS1709で、そのバッファを、Receive Jobであれば、図18につき説明するIdAnalyze()関数へ、Receive Notificationであれば、図20につき説明するIdAnalyzeNotifyへ渡して終了する。
【0066】
図18は、IdAnalyzeの処理手順を示すフローチャートである。ここでは、他のデバイスから行データとして渡されたJobを解釈する。このJobはDBに加え、デーモンモジュールによって実行される。
【0067】
まず、ステップS1801でDemarshal関数を呼び、demarshalを行い、バッファオブジェクトを有効にする。次に、ステップS1802で、圧縮データをUnformatData関数を用いて復号、展開をおこなうことによって、行単位でデータが有効になる。ステップS1803で再びDemarshal関数を呼び、メッセージオブジェクトを有効にする。最後にステップS1804で図19につき後述するReceiveJob関数(DUMMY)を呼び、JobをDBに追加する。
【0068】
図19は、DUMMYの処理手順を示すフローチャートである。このモジュールはSendJobにより送られた行バッファを受取る、ISAPI拡張Receiveモジュールのダミーである。CGIアプリケーションへ渡される。
【0069】
実際には、ステップS1901でSendJobにより送られた行バッファ中のこれらの関数を読み、ステップS1902でテンポラリファイルをダンプする。このファイル名は、ステップS1903でCGIモジュールのIDExtn.Exeへ渡される。これは、ステップS1904でファイル名を読み、データを取得する。ステップS1905でCGIアプリケーションへデータを送るために、このモジュールはinternet client callを使う。
【0070】
図20は、IdAnalyzeNotifyの処理手順を示すフローチャートである。他の同種のデバイスから行データとして渡されたNotificationを解釈する。このnotificationを処理に加えnotificationはデーモンモジュールによって実行される。
【0071】
実際には、ステップS2001で、Demarshal関数を呼び、demarshalを行い、バッファオブジェクトを有効にする。つぎに、ステップS2002で圧縮データをUnformatData関数を用いて復号、展開をおこなうことによって、行単位でデータが有効になる。ステップS2003で、再びDemarshal関数を呼び、メッセージオブジェクトを有効にする。最後に、ステップS2004で、図21につき後述するRecieveHttpNotification関数を呼び、JobをDBに追加する。
【0072】
図21は、RecieveHttpNotificationの処理手順を示すフローチャートである。プロトタイプは、Void CIDAction::RecieveHttpNotification(poNotify)である。
【0073】
この関数はHTTPプロトコルによって送られたnotificationを受取る関数である。デバイスが要求された通知方法をサポートしていなくても、中間デバイスを利用して最終的には目的のデバイスに通知することが出来る。
【0074】
ステップS2101で、Notificationのレシーバ名とアドレス、通知方法を調べ、ステップS2102で、このデバイスがnotificationを受取る目的のデバイスか、他のデバイスへnotificationをpassする中間点として機能するのみかを調べる。
【0075】
このデバイスが最終目的値である場合、ステップS2103でテンポラリファイルを作成し、ステップS2104で、その中へnotificationメッセージを書き込む。また、ステップS2105でウィンドウズディレクトリ上のfixedファイル"pollfile"(デーモンがpollするファイル)を作成、上書きする。ステップS2107で、このファイルの中でnotificationモジュール(メッセージを表示したり、作成したりするモジュール)のコマンドラインパラメータを指定し、ステップS2107で指定された通知方法で通知する。
【0076】
このデバイスが中間デバイスである場合、ステップS2108で、このデバイスにnotificationを発行する能力があるかを確認し、あれば、ステップS2110で、指定された方法で指定されたデバイスへnotificationを送信する。このデバイスにnotificationを発行する能力がない場合、ステップS2112で、HTTPプロトコルを介して他の中間点へnotificationを送信する。
【0077】
図22は、クライアントの要求が、「Print」「Send」「Delete」「Reschedule」「Preview」であった場合のサーバの処理手順を示すフローチャートである。
【0078】
これらの5つの要求の場合、まずはじめに、ステップS2201で、ユーザID、JobID、ActionIDを取得する。
【0079】
Print要求の場合、ステップS2203で、印刷時刻と場所を取得し、ステップS2204でnotificationリストを取得する。ステップS2205で関数PrintJob()を呼びプリントを実行する。
【0080】
Send要求の場合、ステップS2206で送信時刻と場所を取得し、ステップS2207でnotificationリストを取得する。ステップS2208で関数SendJob()を呼び送信を実行する。
【0081】
Delete要求の場合、ステップS2209でCancelAction()関数をよび、Jobを削除する。
【0082】
Reschedule要求の場合、ステップS2210でRescheduleAction関数をよび、スケジュール変更を行う。
【0083】
Preview要求の場合、ステップS2211でformat conversion libraryを用いて、JobをJPGやGIFフォーマットに変換する。
【0084】
以上の要求全てにおいて、ステップS2212で、対応するHTMLページを作成して、ステップS2213でクライアントコンポーネントにHTMLページを送信して終了する。
【0085】
図23は、PrintJobの処理手順を示すフローチャートである。プロトタイプは、void CIDAction::PrintJob(ActionId, NotifyList)である。入力パラメータは、指定されたActionのID、ユーザのNotification設定リストであり、Jobを、今すぐにこのデバイスで印刷する。
【0086】
ActionIDがPrint/Holdのとき、Actionの属性(Print時刻、Notificationなど)は、現時刻と新しいNotificationに修正される。ActionIDがSendのとき、DB中に新しいActionが作成される。これは、そのこのユーザがHoldしている、このJobに関係する他のPrintActionが存在するかどうかに依存する。Jobがプリントされた後は、ActionStatusは"done"となり、このActionはユーザのHistoryの一部になる。
【0087】
まず、ステップS2301で、レコードを引き出して、Actionの詳細をチェックする。ステップS2302で、古いActionがHoldされているかチェックし、ステップS2303でこの情報を保存する。ステップS2304でこのActionに必要なJobDataを取得する。ステップS2305で、データベース中のエントリを“印刷中”となるよう修正する。これは、daemonモジュールがこのレコードを実行しないようにするためである。
【0088】
ステップS2307、2308で、新しいレコードを作成するかまたは、存在するレコードを修正する。たとえば、前のActionがPrint/Holdであったならそのレコードは修正され、前のActionがSendであったなら、そのJobに対してそのユーザがHold中のPrintActionがないときには新しいレコードが作成される。new/old ActionIDが返される(条件に従う)。
【0089】
ステップS2309で、無条件で、Notification StatusはFalseになる。ステップS2310で、このnewActionIDにnotificationを加えてユーザータイプを"Don't care"とする(すなわち、送信者も受信者もいない)。
【0090】
ステップS2311で、Spooler API Callsを使って印刷するために、プリントキューへJobを送る。ステップS2312で“印刷が成功”または“終了”とエントリを修正する。ステップS2313で、印刷のActionStatusに従ってNotificationStatusをセットする。
【0091】
図24は、SendJobの処理手順を示すフローチャートである。プロトタイプは、Void CIDAction::SendJob(bsendjobToDatabase,ActionId,roJobMessage)である。
【0092】
指定された“存在する”Job、または指定されたレシーバ・デバイスリストへ新しいJob を送信する。送信によって、1つのデバイスに対して、1つのコピーが送られる。この場合、複数のレシーバがいる場合には、Jobのコピーを共有していることになる。他の全てのレシーバの情報も送られるので、他のデバイスからJobにアクセスすることも可能である。JobはHTTPプロトコルで送信される。
【0093】
実際には、ステップS2401で、ActionIdが存在するJobか、新規のJobかをチェックする。ActionIdが存在する場合には、ステップS2402で、Actionの属性を取得して、ステップS2403で、そのActionタイプがHoldであるかチェックする。Hold Jobであるとき、ステップS2404で、Hold Jobがアクセスされたという情報をストアする。
【0094】
次に、この情報がDBへ行くと指定されているときには、ステップS2406で、SendJob()を呼び、Jobに関する全ての情報(センダ、レシーバなど)をDBにストアする。その後、ステップS2407で“今”送信するかどうか、時間をチェックし、今送らないときには、そのままに終了して、デーモンモジュールが送信を実行してくれるのを待つ。今送るときには、ステップS2408で、送信を実行して終了する。
【0095】
図25は、SendJob()による送信の実行手順を示すフローチャートである。
【0096】
まず、EditAction()を呼び、ActionStatusをactiveにセットする。次にレシーバのリストを処理し、ユーザ名、デバイス名、デバイスのURLアドレスを取得する。レシーバデバイスに対応するようにフォーマット変換を行う。これは適当なイメージ変換ライブラリを用いて実行される。メッセージデータをバイト列に変換し、さらに圧縮、符号化を行う。このデータをHTTPプロトコルを用いて送信し、ActionStatusをdoneに設定する。さらにActionをユーザのヒストリの一部として追加し、送信状況によってnotification statusをsuccess/failにセットする。JobがHeld Listからアクセスされたjobであることを示すStatusをセットする(ステップS2501〜2511)。
【0097】
図26は、CancelJobの処理手順を示すフローチャートである。プロトタイプは、Void CIDAction::CancelJob(dwActionId)である。
【0098】
この関数は指定されたActionをキャンセルするものである。具体的には、ステップS2601で、Actionの属性を取得して、CancelAction()関数を読んで、Actionをキャンセルとマークする。もし、ActionがHoldリストの中にある場合には、ステップS2603で、ユーザのヒストリの一部に追加し、ユーザのヒストリの一部になっている場合には、ステップS2604でエントリを削除する。ActionがHoldである場合には、ステップS2606で、notification conditionは“Hold Jobにアクセスしている”と設定する。ユーザがこのデバイス上でのレシーバであるときには、そのまま終了し、他のデバイス上にいる場合には、ステップS2608で、このデバイスへログインさせ、ステップS2609で、キャンセルActionに対しての詳細を設定し、ステップS2610で、実際のデバイスにこの情報を送るためにSendJob()関数をよび、送信を実行する。このことにより、Actionのキャンセルが実行される。
【0099】
図27は、SendNotificationの処理手順を示すフローチャートである。プロトタイプは、Void CIDAction::SendNotification(dwActionId)である。
【0100】
この関数は、実際の通知を行う関数である。Popupなどの通知のタイプは、httpを送信することによって通知を行う。電話やメールの場合は、適当なモジュールを呼ぶことによって通知する。サポートされたいない方法が指定された場合には、指定された中間デバイスへnotificationが送信されて、再送される、この機能は"now"にnitificationを送信しなければならないときにのみ行われる。この場合、NotificationStatusをDoneにして、デーモンモジュールがpollしないようにする。
【0101】
実際には、まず、ステップS2701で通知方法を調べ、その方法がpopup window やvoice messageのときには、ステップS2703で、httpプロトコルでデータが送信される。方法が電話などのときには、ステップS2705で、そのデバイスに通知能力があるかを調べ、その能力がある時には、ステップS2704で、その指定された方法で通知を行う。デバイスに能力がないときには、ステップS2706で中間点を調べる。この中間点では指定された発行のメカニズムをサポートしている。ステップS2707で、通知のメッセージとその詳細をHTTPプロトコルで中間デバイスに送信する。この方法でメール、Fax、ポケベルなどにも対応できる。
【0102】
図28は、サーバに対する入力情報と処理との対応関係を示す図である。それに対応する処理をまとめたものである。
【0103】
ここで、Print Job、Send Job、Cancel Job、Send Notification、Receive HTTP Notificationは、制御部602が司る。このモジュールは、プリンタのバックエンドのメインとなるモジュールであり、「ここで、今すぐにJobを印刷する。」「ここで、後でJobを印刷する。」「違う場所で、今すぐにJobを印刷する。」「違う場所で、後でJobを印刷する。」「今すぐに、または後で、他デバイスにJobを送信する。」「スケジュールを変更する。」「JobのActionをキャンセルする。」「通知のタイプを設定する(音声、ポップアップウィンドウ、電話、E-mail、Fax)。」「通知を受取る。」「デバイスのステータスを取得または設定する。」といった動作を実現する。
【0104】
このモジュールは、DBとその呼び出しがそれを用いるモジュール(GUIモジュールやDaemonモジュールなど)にtransparentとなる形でDBモジュールに覆い被さっている。
【0105】
図29は、デーモン105の起動からの処理手順を示すフローチャートである。
【0106】
デーモンモジュール105は、絶えずDBとファイルをポーリングして、後で実行されるように登録されているActionや操作を実行する。これらの全ての場合、エントリはDB中に作成される。
【0107】
まず、ステップS2901で、無限ループ中でポーリングを行うスレッドを作成し、“今”実行しなければならないJobをpollする。DB中にJob(Action)を発見すると、そのActionタイプを調べる(ステップS2902〜2905)。
【0108】
ActionがPrintである場合には、ステップS2906で、PrintJob()関数をよび、印刷を実行する。ActionがSendである場合には、ステップS2908で、ConstructSendMessage()を呼び、メッセージを作成した後、ステップS2909でSendJob()関数を呼び、送信を実行する。
【0109】
ActionがHoldである場合には、ステップS2907でCancelJob()関数をよび、Jobをキャンセルする。
【0110】
これらの処理の後、ステップS2910でnotificationを調べる。
【0111】
図30はデーモンモジュールのNotification処理手順を示すフローチャートである。
【0112】
まず、ステップS3001で、このデバイスから発行しなければならない通知が存在するかを、関数PollNotify()を呼ぶことによって調べる。発行すべきnotificationが存在する場合には、ステップS3002で、SendNotification()関数を読んで通知を発行する。Notificationがなければ、ステップS3003で、アプリケーションファイルの存在をチェックする。
【0113】
ファイルが存在する場合には、ステップS3005で、このファイルからコマンドラインパラメータを読んだ後、このファイルを削除する。ShowNotify.Exeモジュールを起動し、コマンドラインパラメータをpassする。
【0114】
最後に、PullPrintの場合には、ステップS3007でPrintOcx.EXEファイルを起動し、Scheduleの場合には、ステップS3008でDataDumo.Exeファイルを起動する。
【0115】
図31はデーモンが扱うjobの種類と対応する処理との関係を表した図である。
【0116】
図32は、PrintPrinterJobの処理手順を示すフローチャートである。プロトタイプは、Int PrintPrinterJob(pPrinterName,pDocumentName,pVoid,Bufsize)である。
【0117】
この関数はプリンタにJobがスプールされていることをプリントする関数である。実際には、指定されたプリンタをオープンし、そのプリンタにJobがスプールされていることを通知し、そのプリンタにデータを書き込み、プリンタをクローズする(ステップS3201〜3204)。
【0118】
図33は、Sendjobの処理手順を示すフローチャートである。
【0119】
ステップS3301で、送られるジョブが新規か、データベース中に既存のものかをチェックする。新規のジョブである場合、ステップS3303で、その詳細をデータベースに加える。ステップS3311で、ジョブのSender ・Receiverも同様にチェックする。それらがデータベースに存在する場合、ステップS3312で新規ActionはユーザIDに加えられ、データベース中に存在しないものに対しては、ステップS3313で新規エントリを加える。
【0120】
既存のジョブが送られる場合にはSenderへのActionをチェックする。ActionがSendで、ステータスがTodoまたはActiveである場合、Action のWhentodoタイムをJobMessageが作成された新しい時間に変更する。ステップS3313で、ActionがSendで、既に実行されている場合には、新しいActionをデータベースに加える。ActionがSendでない場合、このジョブにエントリされたActionが、データベースに作成される。
【0121】
全ての場合において、ジョブのReceiverの存在がチェックされ、もし、Receiverがデータベースに存在しない場合には、新規エントリが作成される。ActionがHoldで、ActionStatusがTodoのとき、ActionをSendに変更しWhenTodoタイムをJobMessageが作成された新しい時間に変更する。ActionStatusがTodoでないときには、ActionがSendである新しいレコードを作成し、WhenTodoTimeをJobMessageに指定された新しい時間に設定する。
【0122】
図34は、ReceivejobDataの処理手順を示すフローチャートである。
【0123】
まず、ステップS3400で、"Deny Jobs From Person/Device"というチェック項目を見て、ここに設定されている送信元からのジョブの場合、ステップS3417で、ジョブの受け取りを拒否する。この項目は、管理者によって設定される。
【0124】
図134は、ジョブの拒絶の設定のための設定画面を示す図である。同図において、"Deny Jobs From Person"には、拒否すべきユーザの識別子を設定する。"Deny Jobs From Device"には、拒否すべき装置を設定する。更に、図77につき後述する命令の設定において説明するように、拒否する。
【0125】
有効期限や拒否すべき処理の種類を設定するようにしてもよい。以上のようにして設定されたチェック項目をみて、送信元のユーザあるいは装置からのJobの受け取りの許可・不許可を判断し、許可されていれば、受け取り処理を行う。
【0126】
受け取られるジョブは、新しいジョブである場合と、既存のジョブである場合の二つの場合が想定される。
【0127】
新しいジョブが受け取られる場合、ステップS3402で、新しいエントリをジョブの詳細に加える。Senderが存在しない場合は、ステップS3404でSenderのエントリを加える。ステップS3405でAction、Notificationsも同様に加える。Senderが存在する場合、ステップS3406でNotificationsを加える。もしもReceiverが存在しない場合にはステップS3408で追加する。ステップS3409でReceiverのActionも追加する。
【0128】
既存のジョブが受け取られる場合、ジョブのReceiverをチェックする。もし、Receiverが存在し、受け取られたのと同じActionを持つ時には、前のもののActionステータスはキャンセルとされ、新規にレコードが作成される。Receiverに関するActionが受け取られたのと違うActionを持つ時には、新規エントリがReceiverに関して加えられる。場合によってはNotificationsも加えられる。Usertypeが異なる場合を除き、ActionステータスはTodoに設定される。
【0129】
図35は、GetListOfJobAttributeの処理手順を示すフローチャートである。
【0130】
指定された場所でのユーザの全ジョブをチェックし、そのユーザのジョブの全詳細を返す。ジョブはHeldjobs、またはHistoryjobsの2つである。データベースはUserIDごとにジョブをサーチし、全てのジョブがピックアップされてリストに加えられる。このリストが返される(ステップS3501〜3507)。
【0131】
図36は、PollJobの処理手順を示すフローチャートである。
【0132】
UserタイプがReceiverで、ActionStatusがTodoで、WhenTodoが現システム時間よりも短いを検索する(ステップS3601〜3605)。Jobが存在したら、Jobの詳細を取得し、ActionSetにデータを設定して、TRUEを返す(ステップS3606〜3608)。Jobが存在しないときには、FALSEを返す(ステップS3609)。
【0133】
図37は、PollNotifyの処理手順を示すフローチャートである。
【0134】
CanNotifyがTRUEで、WhetherToNotifyがTRUEで、WhenToNotifyが現システム時間よりも短い最初のレコードを検索する(ステップS3701〜3705)。レコードが存在するときには、notificationの詳細を取得し、NotificationSetにデータを設定して、TRUEを返す(ステップS3706〜3708)。レコードが存在しないときには、FALSEを返す(ステップS3709)。
【0135】
図38は、CancelActionの処理手順を示すフローチャートである。
【0136】
まず、指定されたActionIDを持つレコードを検索する。該当レコードが存在すれば、同じActionIdをもつJobを検索し、そのサイズをチェックする(ステップS3801〜3804)。そのサイズが管理者が設定するJobSizeLimitよりも小さい場合には、ステップS3805で、ActionStatusを調べる。このActionStatusがDoneであるか、ジョブのサイズがJobSizeLimit以上の場合、ActionStatusをDeletedに変更し、そのレコードを削除する(ステップS3807〜3808)。それ以外のときは、ステップS3806で、ActionStatusをキャンセルとする。そして、ステップS3809で、ActionIDに対応する全てのNotificationを削除する。
【0137】
図39は、EditActionの処理手順を示すフローチャートである。
【0138】
指定されたActionIDを持つレコードを検索し、該当レコードが見つかったら、Actionステータスを受け取ったパラメータに変換する(ステップS3901〜3903)。
【0139】
図40は、EditActionの処理手順を示すフローチャートである。図39につき説明したものとは、プロトタイプが異なる。
【0140】
指定されたActionIDを持つレコードを検索し、該当レコードのActionがActionIDのActionと一致し、かつ、Actionステータスが保留である場合に、Actionステータスを受け取ったパラメータに変換する(ステップS4001〜4006)。該当レコードがない場合には、ステップS4004で、新規Actionを追加する。
【0141】
図41は、RescheduleActionの処理手順を示すフローチャートである。
【0142】
指定されたActionIDを持つレコードを検索する。該当レコードが見つかり、Action Statusがdoneでなければ、WhenTodoを受け取ったNewTimeに変換する(ステップS4101〜4104)。
【0143】
図42は、RescheduleActionの処理手順を示すフローチャートである。図41につき説明したものとは、プロトタイプが異なる。
【0144】
ステップS4201で、指定されたActionIDを持つレコードを検索する。該当レコードが見つかり、UserTypeが一致していれば、Actionステータスをキャンセルに変更し、ActionステータスがTodoである新規レコードを追加する(ステップS4201〜4204)。該当レコードが見つからない場合、ユーザの存在をチェックする。ユーザが見つかればUserIDをpickし、見つからない場合は新規ユーザを追加してからUserIDをpickする。このUserIDに一致する新規Actionを追加する(ステップS4206〜4209)。
【0145】
図43は、RescheduleActionの処理手順を示す図である。図41、42につき説明したものとは、プロトタイプが異なる。
【0146】
指定されたActionIDを持つレコードを検索する。該当レコードが見つかったら、ActionステータスとActionをチェックする。ActionがActionIDと一致し、かつActionステータスが保留で未了の場合、WhenTodoタイムを新しい時間に変更する。ActionIDの全Notificationを削除し、新規Notificationを追加する(ステップS4301〜4302、4304〜4308)。該当レコードが見つからない場合、ステップS4303で、ActionステータスがTodoである新規Actionを追加し、WhenTodoタイムを新しい時間に変更する。
【0147】
図44は、AddNotificationの処理手順を示すフローチャートである。
【0148】
Notification に新規レコードを追加する。パラメータの総合情報(GeneratedFrom parameter)をチェックして、これに関する新規エントリを作成する。
【0149】
図45は、AddInstructionの処理手順を示すフローチャートである。
【0150】
ReceieveJobまたは、SendJobが発生する時に、Instructionの設定が呼び起こされる。まず、ステップS4501で、データベース上に指定されたUserIdの存在を確認し、存在しないときには処理を終了する。存在するときには、ステップS4502で、Instructionリストからレコードを取得し、ステップS4503で、このUserに新しいinstructionを追加する。
【0151】
Instructionは、データベースのInstructionテーブルにInstructionを追加する。関連するActionと、Instructionが満たされて与えられたNotificationを、Actionテーブル及び Notificationテーブルに反映する(ステップS4504〜4506)。
【0152】
Receiveジョブ・Sendジョブいずれの場合においても、これらを生成する Instructionが満たされた時には、Actionテーブル及び Notificationテーブルに新規Actionと新規 Notificationを生成するテンプレートとして作用するレコードを追加する。
【0153】
図46は、GetInstructionの処理手順を示すフローチャートである。
【0154】
この関数は、ReceieveJobDataとSendJobDataによって呼ばれる。まず、ステップ4601で、Instructionテーブルの全レコードにつき、ActionタイプがReceiveまたはSendであるかをチェックし、指定されたActionタイプの全命令を取得する。ステップS4602で、JobMessage中の詳細(命令として設定されている値)をチェックし、これらの値を用いて、instructionが実行できるか出来ないかを調べる。Instructionの有効性のチェックのために、check関数(後述)を用いる。Instructionが有効である場合には、ステップS4603でそのIdをリストに加え、ステップS4603で、全命令について処理が終了したなら、最後に有効なInstructionIdのリストを返す。
【0155】
図47は、ExecutionInstructionの処理手順を示すフローチャートである。この関数は、ReceieveJobDataとSendJobDataによって呼ばれる。ActionテーブルとNotificationテーブルのレコードを探す。これらのレコードは、Instructionリストの各Instructionに従って実行され、そのコピーをtodoフラグ(TRUEにセット)を付けて各テーブルに作成する(ステップS4701〜4708)。
【0156】
instructionによってセットされたdummy actionがあるかActionテーブルをサーチする。これらのdummy actionsに基づいて新しい適当なレコードが追加され、actionが実行される。
【0157】
Instructionによってセットされたdummy notificationがあるかサーチする。これらのdummy notificationに基づいて新しい適当なレコードが追加され、notificationが実行される。
【0158】
図89は、ResetInstructionsの処理手順を示すフローチャートである。プロトタイプは、Void ResetInstructions(dwUserId,pInstructionList)である。
【0159】
まず、指定されたUserIdの全ての命令を検索し、得られた命令と、その命令に対応する全てのAction,Notificatioinを削除する(ステップS8901〜8905)。その後、命令リストで渡された新しい命令を追加する(ステップS8906)。
【0160】
図90は、DeleteAllInstructionsの処理手順を示すフローチャートである。プロトタイプは、Void DeleteAllInstructions(dwUserId)である。
【0161】
指定されたUserIdの全ての命令を検索し、検索された命令と、その命令に対応する全てのAction,Notificatioinを削除する(ステップS9001〜9005)。
【0162】
図91は、DeleteInstructionsの処理手順を示すフローチャートである。プロトタイプは、Void DeleteInstructions(dwInstructionId)である。
【0163】
指定されたInstrucationIdの命令を検索し、検索された命令と、その命令に対応するAction,Notificatioinを削除する(ステップS9101〜9104)。
【0164】
図92は、GetInstructionDetailsの処理手順を示すフローチャートである。プロトタイプは、Void GetInstructionDetails(dwUserId)である。
【0165】
指定されたUserIdの命令を検索し、検索された命令と、その命令に対応するAction, Notificatioinの詳細をリストにして返す(ステップS9201〜9208)。
【0166】
図93は、Checkの処理手順を示すフローチャートである。プロトタイプは、Bool Check(nJobChk, JobNameConnector, nDeviceChk, DeviceConnector, nPersonChk, PerconConnector, nTimeChk, TimeConnector, nStatusChk, nStatusCode)である。
【0167】
この関数は、GetInstrucsionIds()の中で呼ばれる。命令が実行可能、有効であるかをチェックし、有効ならばTRUE、そうでなければFALSEを返す(ステップS9301〜9303)。
【0168】
図94は、GetJobDataの処理手順を示すフローチャートである。プロトタイプは、Void GetJobData(dwJobId,poJobMessage)である。
【0169】
指定されたJobIdのJobを検索し、Jobの詳細をJobMessageに設定する(ステップS9401〜9403)。
【0170】
図95は、GetJobAttributesの処理手順を示すフローチャートである。プロトタイプは、Void GetJobAttributes(dwJobId,poJobMessage)である。
【0171】
指定されたJobIdのJobを検索し、Jobの詳細をJobMessageに設定する。またJobのSenderとReceiverの詳細と、関係するActionの詳細を検索し、その詳細をJobMessageに設定する(ステップS9501〜9505)。
【0172】
図96は、GetActionAttributesの処理手順を示すフローチャートである。プロトタイプは、Void GetActionAttributes(dwActionId,poActionMessage)である。
【0173】
指定されたActionIdのActionを検索し、Actionの詳細をActionMessageに設定する。またJobのSender とRecieverのユーザ名、アドレスも、SenderとReceiverのActionMessageに設定する(ステップS9601〜9605)。
【0174】
図97は、DeleteJobの処理手順を示すフローチャートである。プロトタイプは、Void DeleteJob(dwUsrLd,dwJobId)である。
【0175】
ステップS9701で、指定されたJobIdをもつ、指定されたUserIdのActionを検索する。アクションが存在すれば、ステップS9703で、ActionStatusのタイプをチェックする。もしActionStatusがNot Doneであれば、ステップS9704で、ActionStatusをActionCancelに変更し、実行時間を現時刻に設定する。
【0176】
もしActionStatusがすでにDoneまたはCancelである場合には、ステップS9705で、そのActionと、関係する全てのNotificationを削除する。ステップS9706で、指定されたJobIdをもつ指定されたUserId以外のUserIdのActionがあるかをチェックし、なければステップS9707で、指定されたJobIdをもつ、指定されたUserIdのAction全てが既にDoneまたはCanceledであるかをチェックし、他のユーザのActionがなく、Action全てが既にDoneまたはCanceledである場合には、ステップS9708で、JobテーブルからこのJobのレコードを削除する。
【0177】
図98は、GetNotificationListの処理手順を示すフローチャートである。プロトタイプは、Void GetNotificationList(nGeneratedFrom,dwId)である。
【0178】
指定された生成場所(Action / Instructionのどちらか)から生成され、指定されたIdをもつ全てのNotificationを検索し、その詳細をリストに加えてリストを返す(ステップS9801〜9804)。
【0179】
図99は、SetNotificationConditionの処理手順を示すフローチャートである。プロトタイプは、Void SetNotificationCondition(nGenetaredFrom,dwId,nResult)である。
【0180】
指定場所(nGenerateFrom)から生成され、指定されたIdをもつNotificationを検索し、指定された値(nResult)で作成されていれば、WhetherToNotifyをTRUEに、指定された値で作成されていなければFALSEに、セットする(ステップS9901〜9905)。
【0181】
図100は、SetNotificationConditionの処理手順を示すフローチャートである。プロトタイプは、Void SetNotificationCondition(nGenetaredFrom,dwId,bCanNotifyFlag,nDummy)である。
【0182】
指定場所から生成された、指定NotificationIdを持つNotificationを検索し、CanNotifyFlagを指定値(bCanNotifyFlag)にセットする(ステップS10001〜10003)。
【0183】
図101は、SetNotificationStatusの処理手順を示すフローチャートである。プロトタイプは、Void SetNotificationStatus(dwNotificationId, bNotificationStatus)である。
【0184】
指定されたNotificationIdをもつNotificationを検索し、Notification Statusを指定値にセットする。(ステップS10101〜10103)。
【0185】
図102は、ClearHistoryの処理手順を示すフローチャートである。プロトタイプは、Void ClearHistory()である。
【0186】
まず、ステップS10201で、Action Statusを調べ、Done,Cancelled,Ignored,DeletedのActionを検索する。得られたActionの1つ1つについて、Action StatusがDoneのJobのときは、ステップS10204で、実行時間をチェックする。それ以外のときは、ステップS10205で、WhenTodo時間をチェックする。ステップS10206で、これらの時間と履歴(Hostory)の保持制限時間とを比較する。このようなジョブに対する制限は、管理者によって設定されるものである。図133に、このための設定画面の例を示す。ここでは、1箇月(1 Month)に設定されている。比較の結果、実行時刻あるいは実行予定時刻から保持制限時間以上経過していた場合、ステップS10207で、ActionとJobは削除される。
【0187】
図103は、DeleteAllPublicInfoJobsの処理手順を示すフローチャートである。プロトタイプは、Void DeleteAllPublicInfoJobs()である。
【0188】
PublicInfo Jobを全て検索し、ActionStatusをActionCancelにセットする(ステップS10304〜10304)。
【0189】
図104は、PrintPublicInfoの処理手順を示すフローチャートである。プロトタイプは、Void PrintPublicInfo(dwActionId)である。
【0190】
指定されたActionIdのActionをサーチし、PublicInfoJobがあるかどうかチェックする。存在するときには新しいActionを追加する。このActionをPublicInfoで、ActionがPrint、WhenTodoが現時刻、ActionStatusがTodoであるようなActionに設定する(ステップS10401〜10407)。
【0191】
図105は、SearchDataの処理手順を示すフローチャートである。プロトタイプは、Void SearchData(dwUserId,poSearchData)である。
【0192】
指定されたユーザの全Jobリストを取得し、その詳細とSearch Dataオブジェクト中の詳細を比較する。詳細がマッチしたら、新リストへのノードを追加し、最後に新リストを返す(ステップS10501〜10507)。
【0193】
図48はデスクトップのサーバコンポーネントのクライアントの要求に対する処理手順を示すフローチャートである。
【0194】
サーバコンポーネントは、ステップS4801で、クライアントの要求を取得し、対応する処理を行う。要求がloginであったときは、まずlogin verbとリモートデバイスリストを取得し、ユーザパスワードを取得する(ステップS4803〜4804)。その後ユーザに対応するHTMLページを作成し、ユーザパスワードを保存して、クライアントコンポーネントに送信して処理を終える(ステップS4805〜4806、4814)。
【0195】
Print a File要求の場合には、ユーザパスワードと印刷するファイル名を取得する。外部のアプリケーションを呼び、このアプリケーションが用いる印刷用ファイルへ指定されたファイル名のファイルを印刷する。この出力用印刷ファイルをメッセージオブジェクトに変換し、リモートデバイスの始めのデバイスへJobを送信する。最後に対応するHTMLページを作成し、クライアントコンポーネントに送信して処理を終える(ステップS4807〜4813、4814)。クライアントの要求が、「Read a Mail」「Print a Mail」であった場合は、図49につき後述する。クライアントの要求が、「View Schedule」「Print Schedule」であった場合は、図50につき後述する。クライアントの要求が、「Goto Other Device」であった場合は、図51につき後述する。クライアントの要求が、「logout」「help」であった場合は、図52につき後述する。
【0196】
図49は、メールに関する要求の処理手順を示すフローチャートである。これは、クライアントの要求が、「Read a Mail」「Print a Mail」であった場合の手順である。
【0197】
要求がRead a Mailであったときは、まずメールサーバのユーザパスワードを取得し、メールのセッションをオープンする。指定されたメールを読んだ後、セッションをクローズする(ステップS4902〜4905)。
【0198】
Print a Mail要求の場合には、Read a Mail要求と同様の処理を行った後、メールをファイルへ書き出し、Jobメッセージを作成した後、リモートデバイスリストの最初のデバイスへJobを送信する(ステップS4906〜4912)。
【0199】
どちらの場合も、最後に対応するHTMLページを作成し、作成したページをクライアントコンポーネントに送信して終わる(ステップS4913〜4914)。
【0200】
図50は、スケジュールに関する要求の処理手順を示すフローチャートである。クライアントの要求が、「View Schedule」「Print Schedule」であった場合のデスクサーバの処理手順を表す。
【0201】
要求がView Scheduleあった場合、スケジュールのタイプがDailyかMonthlyかを調べ、スケジュールデータを取得する(ステップS5002〜5003)。要求がPrint Scheduleの場合は上記と同様の処理を行った後、データを印刷用ファイルに書き出し、Jobメッセージを作成して、リモートデバイスリストの最初のデバイスへJobを送信する(ステップS5004〜5009)。
【0202】
どちらの場合も、対応するHTMLページを作成し、そのページをクライアントコンポーネントに送信して処理を終える(ステップS5010〜5011)。
【0203】
図51は、他のデバイスに関する要求の処理手順を示すフローチャートである。クライアントの要求が、「Goto Other Device」であった場合のデスクのサーバの処理手順を表す。
【0204】
要求がGoto Other Deviceの場合、デバイス名とデバイスアドレスを取得する。その後、そのデバイスをリモートデバイスリストに追加し,login verbを作成する(ステップS5102〜5104)。Login verbによって、デバイスへログインし、対応するHTMLページを作成し、最後にクライアントコンポーネントにページを送信して終わる。この処理は、図16につき説明したものと同様である。
【0205】
図52は、ログアウト及びヘルプに関する要求の処理手順を示すフローチャートである。クライアントの要求が、「logout」「help」であった場合のデスクのサーバの処理手順を表す。
【0206】
Logout要求の場合には、ステップS5202でリモートデバイスリストが空かを調べ、空のときは、ステップS5205で、ステータスに従ってOpeningScreenページを作成する。空でないときは、リストが空になるまで、ステップS5203で次のデバイスにlogin verb=Disconnectでログインし、ステップS5204でそのデバイスをリモートデバイスリストから削除することを繰り返す。すなわち、リモートデバイスリスト中の全てのデバイスをログアウトする。リストが空になったら、ステップS5205で、OpeningScreenページを作成する。
【0207】
Help要求の場合、ヘルプコンテキストパラメータを取得し、対応するヘルプスクリーンHTMLページを作成する(ステップS5206〜5207)。
【0208】
どちらの場合も作成したHTMLページをクライアントコンポーネントに送信して処理を終える。
【0209】
図53は、初期メニュー画面からの処理手順を示すフローチャートである。図106に、初期メニューの画面例を示す。ここで、プリントキューにジョブがある場合には、ステータス画面に一覧表示される。各ジョブの情報としては、ジョブ名、送信者が表示される。
【0210】
初期メニューでは、ステップS5301で、ユーザは自分の希望する項目を選択する。ステップS5302で、選択項目が判別され、その項目に従って新しい画面が表示される。
【0211】
まず、「new interaction(新しい操作)」項目を選択すると、ステップS5303において、図55につき後述する新規の処理(ログイン処理)に進み、画面は「ログイン」画面(図112)へと遷移する。
【0212】
「Print URL(URLの印刷)」項目を選択すると、画面は「URLの印刷」画面(図107)へと遷移する。ステップS5311において、URLを直接入力あるいは参照により指定して「Go」を選択すると、ステップS5312で情報が取得され、プレビューされる。ステップS5313で、確認した内容を印刷する。その後「初期メニュー」画面へ戻る。
【0213】
「Public Info(公開情報)」項目を選択すると、ステップS5314において、図54につき後述する公開情報の処理に進み、画面は「公開情報の処理」画面(図110)へと遷移する。
【0214】
「Goto Device(他のデバイス)」項目を選択すると、ステップS5315において、他のデバイスにアクセスするための設定画面(図81)が表示される。以後、図51につき説明した他のデバイスへアクセスする処理の「Device」の場合の処理が行われる。
【0215】
また、この初期画面では、プリントキューのジョブを選択することができる。ジョブを選択するには、所望のジョブ名の前に表示されたボタンにタッチする。このようにして「特定のJob」が選択されると、ステップS5304においてパスワード入力画面(図108)が表示される。ここで、パスワードを入力し、選択されたJobにつけられたパスワードと一致すると、プリントキュー内で選択されたジョブに対する処理の設定画面(図109)が表示される。
【0216】
続いてJobに対するActionの選択がステップS5305において行われ、ステップS5306では、アクションに関する時間が設定される。アクションとして「後で印刷(Print Later)」を選択した場合、印刷時期が設定できる。ここで、印刷時期は、具体的な日時(絶対日時)によって設定できるとともに、「1時間後(After 1 Hour)」のように設定時点からの経過時間による相対的な日時でも設定できる。この設定のためには、「1時間後」、「2時間後」、「6時間後」、「明日」、「明後日」、「1週間後」、「2週間後」のような項目をメニューとして用意しておき、その中から選択できるようにする。また、絶対的な日時で設定する場合、日付は現在の日付をデフォルト値とし、他の日付を選ぶ場合に、カレンダをポップアップさせ、該当する日付にタッチして入力する。更に必要であれば時刻を現在時刻から変更する。
【0217】
「保留(Hold Here)」を選択した場合、保留期間を設定する。この場合も、後で印刷する場合と同様にして、保留期限を絶対日時で指定できるとともに、保留する期間、例えば1時間(For 1 Hour)のような設定をメニュー選択できるようにする。また、以上の絶対日時、相対日時の指定の場合に、タッチキーボードを表示させて、直接数値を入力してもよいし、特定のボタンの指示回数に応じて、表示値をカウントアップ・ダウンするようにしてもよい。
【0218】
以上のように選択・設定されたアクションや日時の項目に従って、Actionが設定・実行される。まず、「後で印刷」が選択されると、ステップS5308で、印刷ジョブがキューから削除されて、印刷時刻とともに保留ジョブのリストに登録され、「初期メニュー」画面へ戻る。その後、設定時刻になると、印刷が行われる。
【0219】
また、「保留」が選択されると、ステップS5309で、印刷ジョブがキューから削除されて、保留期限とともにアクションとして保留が設定され、保留ジョブのリストに登録され、「初期メニュー」画面へ戻る。その後、保留期間の間、Jobは保留され、期限までに何もしないと、取り消される。
【0220】
また、「ポーズ(Pause/Restart Printing)」が選択されると、ステップS5310で、印刷を一時停止し、「初期メニュー」画面へ戻り、後で「再スタート(Pause/Restart Printing)」が選択される(同じボタンを再押下する)のを待つ。「印刷キャンセル(Cancel Printing)」が選択されると、印刷ジョブがキューから削除され、履歴にこのジョブのアクションとして「キャンセル」が記録され、「初期メニュー」画面へ戻る。
【0221】
図54は、公開情報の処理手順を示すフローチャートである。初期メニューにおいて「公開情報の処理」項目が選択された場合の画面遷移と処理の流れを示したものである。まず、ステップS5401で、このプリンタ上の公開情報のリストを表示する。図110は、そのような公開情報のリストとともに公開情報の処理設定画面を表示した例を示す図である。このリストに表示されるのは、公開情報という属性を持つ情報(公開というアクションを持つジョブ)であり、パスワード無しで印刷することができる。
【0222】
ステップS5402で、リストから特定のジョブを選択した場合には、ステップS5405に進み、選択されたジョブに対する処理を行なう。「他のデバイスから(From Other Device)」を選択した場合、他のデバイスにある公開情報を処理するために、ステップS5415に進む。
【0223】
ステップS5405では、選択されたジョブに対する処理を選択する。「印刷」を選択した場合には、ステップS5407で、通常のジョブの印刷処理につき後で詳述する印刷場所や必要なら印刷時刻の設定を実行し、ステップS5408で選択された公開情報の印刷を実行する。「プレビュー」を選択した場合には、ステップS5409でプレビューを実行し、ステップS5410で次の処理を選択する。
【0224】
ステップS5406或いはS5410で「追加(Make Job As Public Info.On Other Device)」を選択した場合には、選択した情報を他のデバイス上で公開するために、公開するためのデバイスを指定して、選択した公開情報をそのデバイスの公開リストに追加する設定を行なう。図111は、情報を他のデバイス上で公開するための設定画面の例を示す図である。
【0225】
ステップS5412では、追加先として、デバイスのアドレスと装置名を設定し、更に、いつまで公開するか、すなわち、公開期限を設定する。この場合も、前述のように、公開期限を絶対日時で設定してもよいし、現時点からの公開期間を設定してもよい。また、すぐに公開したくなければ、公開を開始する日時を設定してもよい。この場合も、「1週間後」のような相対的な設定も可能である。公開期間を制限するには、公開情報のリストを表示する際に、設定された期間をチェックして期間外のものを対象外とすればよい。また、定期的にリストをチェックして、期間が過ぎたものをリストから削除するようにしてもよい。
【0226】
一方、ステップS5415では、他のデバイスにアクセスするために、既に述べたように、他のデバイスにアクセスするための設定画面(図81)を表示し、デバイスのアドレスと名前を指定してアクセスする。ステップS5416では、アクセスした装置から公開情報リストを取得して、表示する。以後は、自装置における装置と同様に処理が実行される。
【0227】
図55は、ログイン処理手順を示すフローチャートである。初期メニューにおいて新規の処理を行うと選択された場合の処理である。まず、ステップS5501で、「ログイン」画面(図112)を表示し、入力されたユーザの識別子をチェックし、ログインが許可されれば、ステップS5502で、今ログインしたユーザに有効なジョブ(処理が実行されていない保留されたジョブ)があるかをチェックする。ジョブがあれば、ステップS5504で、そのジョブのリスト(図113)を表示して、図56につき後述するジョブを選択してアクションを行なう処理に進む。ジョブがなければ、ステップS5503で、メインメニュー(図121)を表示して、図64につき後述するメインメニューからの処理へ進む。
【0228】
図56は、ジョブを選択してアクションを行なう処理手順を示すフローチャートである。ユーザのログイン時にそのユーザに対して有効なJobが存在する場合の処理である。ステップS5601で、ユーザの保留されたジョブのリストを表示する。図113は、保留されたジョブのリストの例を示す図である。
【0229】
ここで、保留されているジョブには、設定された日時に印刷が予定されているジョブ、設定された日時に送信が予定されているジョブ、設定された日時まで単に保持されている(その時が来るまでに何もしないと取り消される)ジョブがある。リストには、ジョブ名、送信者あるいは受信者、アクションの種類(印刷、送信、保持)、アクションの実行予定日時などが、表示される。これらのジョブは、アクションの種類に応じて、色を変えたり、異なるマークを付けるなど、種類が識別可能な表示態様で表示される。なお、装置には、実行済みのジョブや、実行が取り消されたジョブも、ステータスを「実行済み」や「取り消し」に変えることで、履歴として記録されており、これらも必要に応じて、実行前のジョブとともにリストに表示させることができる。その場合、ステータスによっても、表示態様を変えるものとする。
【0230】
次に、ステップS5602で対象となるジョブを選択し、ステップS5603で、選択されたジョブに対する処理(アクション)を選択する。ステップS5603で、メインメニューが選択された場合には、ステップS5605に進み、図64につき後述するメインメニューからの処理を行なう。検索が選択された場合には、ステップS5606に進み、図65につき後述する検索処理を行なう。印刷が選択された場合には、ステップS5607に進み、図60につき後述する選択Jobの印刷処理を行なう。送信が選択された場合には、ステップS5610に進み、図62につき後述する選択Jobの送信処理を行なう。プレビューが選択された場合には、ステップS5608に進み、図57につき後述する選択Jobのプレビュー処理を行なう。削除が選択された場合には、ステップS5609に進み、図58につき後述する選択Jobの削除処理を行なう。スケジュールが選択された場合には、ステップS5611に進み、図59につき後述する選択Jobのスケジュール変更処理を行なう。ログアウトが選択された場合には、ステップS5612に進み、図52につき説明したログアウト処理を行なう。
【0231】
図57は、選択Jobのプレビュー処理手順を示すフローチャートである。有効なJobのリストから選択したJobに対して、プレビューを実行する際の処理の流れを表したものである。ステップS5701で、選択されたジョブのプレビューを実行する。図114は、ジョブのプレビューの画面表示例を示す図である。ステップS5702で、選択されたジョブに対する処理を選択する。
【0232】
ステップS5702で、印刷が選択された場合には、ステップS5704に進み、図60につき後述する選択Jobの印刷処理を行なう。送信が選択された場合には、ステップS5706に進み、図62につき後述する選択Jobの送信処理を行なう。削除が選択された場合には、ステップS5705に進み、図58につき後述する選択Jobの削除処理を行なう。スケジュールが選択された場合には、ステップS5707に進み、図59につき後述する選択Jobのスケジュール変更処理を行なう。キャンセルが選択された場合には、ステップS5708に進み、図56につき説明したJobのリスト表示に戻る。
【0233】
図58は、選択Jobの削除処理手順を示すフローチャートである。有効なJobのリストから選択したJobに対して削除を行う場合の処理の流れを示したものである。まず、ステップS58001で、削除されるジョブの識別情報とともにジョブのプレビューを行ない、ユーザに削除の確認を促す。図115は、削除の確認画面を示す図である。ここで、削除が選択されれば、ステップS5802で、ジョブの削除を実行する。この時、図97につき説明した処理が実行される。ここでは、選択されたジョブは、保留されているジョブのリストから選択されているので、アクションステータスは未実行であり、削除されたジョブはキャンセルというステータスとなってユーザの履歴として記録される。続いてステップS5803に進み、図56につき説明したJobのリスト表示に戻る。
【0234】
図59は、選択Jobのスケジュール変更処理手順を示すフローチャートである。有効なJobのリストから選択したJobに対してスケジュールの変更を行う場合の処理の流れを示したものである。ステップS5901で、変更対象となる現在のスケジュールを表示する。図116は、スケジュールの変更のための設定画面を示す図である。ステップS5902で、スケジュールの変更を行なう。続いてステップS5903に進み、図56につき説明したJobのリスト表示に戻る。
【0235】
図60は、選択Jobの印刷処理手順を示すフローチャートである。有効なJobのリストから選択したJobに対して印刷を行う場合の処理の流れを示したものである。ステップS6001で、選択ジョブの元々のアクションのタイプが判別される。元々のアクションが印刷である場合は、図61につき後述する印刷設定変更処理が実行される。元々のアクションが印刷でない場合は、ステップS6002で、印刷設定メニューが表示される。図117は、印刷設定メニューの例を示す図である。設定項目としては、どこで印刷するか(この装置か別の装置か)、別の装置の場合には、その装置名とアドレス、いつ印刷するかなどがある。
【0236】
別の装置で印刷する場合には、ジョブの履歴におけるアクションの種類として、送信が記録される。また、別の装置で印刷する際に、送信処理につき後述するセンド方式で送信してもよいし、トランスファ方式で送信するようにしてもよい。
【0237】
ステップS6003で、処理を選択する。印刷を選択した場合は、ステップS6005で、ユーザの設定内容を装置に設定し、すぐに印刷する場合は印刷を実行する。続いてステップS6006に進み、図56につき説明したJobのリスト表示に戻る。プレビューを選択した場合は、ステップS6007でプレビューを実行し、その後、印刷が必要であれば、ステップS6005に進む。通知を選択した場合は、ステップS6009で通知の設定を行い、印刷設定メニューに戻る。図118は、通知設定画面の例を示す図である。通知の設定項目としては、通知相手の人物名、通知媒体(ボイスメッセージ、ポップアップウィンドウ、電子メール、電話、FAX、ポケットベル)、通知先(アドレス、電話番号など)、通知の契機(成功時、失敗時、アクセス時)、通知の契機から実際に通知するまでの時間などがある。また、この画面では、各通知について設定内容を含んだ通知のリスト表示ができる。
【0238】
図61は、選択Jobの印刷設定の変更処理手順を示すフローチャートである。Jobに対する選択されたJobが元々のActionタイプが印刷である場合の状態遷移と処理の流れを示したものである。
【0239】
ステップS6101で、印刷設定変更メニューが表示される。図119は、印刷設定変更メニューの例を示す図である。ステップS6102で、ジョブに対する処理を選択する。「現時点でも印刷(Print Now Also)」を選択した場合、ステップS6104で、選択ジョブとは別に、選択ジョブの印刷時期を現時点としたジョブを追加する。「現時点で印刷(Print Now)」を選択した場合、選択ジョブの印刷時期を現時点に変更する。従って、これらの場合、現時点で印刷が行われる。「スケジュール」を選択した場合、ステップS6106で、図116のスケジュール変更メニューを表示する。ステップS6107で、メニューを使用して印刷スケジュールを変更する。いずれの場合も、続いてステップS6108に進み、図56につき説明したJobのリスト表示に戻る。
【0240】
図62は、選択Jobの送信処理手順を示すフローチャートである。有効なJobリストから選択したJobに対して送信を行う場合の状態遷移と処理の流れを示したものである。ステップS6201で、選択ジョブの元々のアクションのタイプが判別される。元々のアクションが送信である場合は、図63につき後述する送信設定変更処理が実行される。元々のアクションが印刷でない場合は、ステップS6202で、送信設定メニューが表示される。図70は、送信設定メニューの例を示す図である。
【0241】
ステップS6203で、設定を行ない、処理を選択する。送信先、送信時期について設定を行なう。これらの設定は、印刷の場合と同様である。処理として送信(Send)を選択した場合には、ステップS6205で、選択されたジョブがコピーされ、送信される。この場合、選択されたジョブはジョブのリストに残る。一方、処理として転送(Transfer)を選択した場合には、ステップS6206で、選択されたジョブが送信され、選択されたジョブはジョブのリストから削除される。送信、転送のいずれの場合も、続いてステップS6209に進み、図56につき説明したJobのリスト表示に戻る。また、通知を選択した場合には、ステップS6207で、通知の設定画面を表示して、設定を行なう。設定後に、送信、転送の選択のために送信設定メニューの表示に戻る。
【0242】
図63は、選択Jobの送信設定の変更処理手順を示すフローチャートである。これは、選択されたJobの元々のActionタイプが送信である場合の状態遷移と処理の流れを示したものである。
【0243】
ステップS6301で、送信設定変更メニューが表示される。図71は、送信設定変更メニューの例を示す図である。ステップS6302で、ジョブに対する処理を選択する。「現時点でも送信(Send Now Also)」を選択した場合、ステップS6304で、選択ジョブとは別に、選択ジョブの送信時期を現時点としたジョブを追加する。「現時点で送信(Send Now)」を選択した場合、選択ジョブの送信時期を現時点に変更する。従って、これらの場合、現時点で送信が行われる。「スケジュール」を選択した場合、ステップS6106で、図116のスケジュール変更メニューを表示する。ステップS6307で、メニューを使用して送信スケジュールを変更する。いずれの場合も、続いてステップS6308に進み、図56につき説明したJobのリスト表示に戻る。また、「修正(Modify)」が選択された場合、ステップS6309で、修正メニューを表示する。
【0244】
図120は、修正メニューの例を示す図である。このとき、送信先が一覧表示される。ステップS6310では、新たな送信先の追加・設定、一覧より選択した送信先の修正(削除、変更)、送信先で実行すべき処理の変更、パスワードの変更、送信時期の変更などを行なう。通知の設定を行なう場合は、ステップS6312で通知設定メニューを表示して設定を行ない、修正メニューに戻る。通知の設定を行なわない場合は、送信設定変更メニューに戻る。
【0245】
図64は、メインメニューからの処理手順を示すフローチャートである。これは、メインメニューでの画面遷移と処理の流れを示したものである。ステップS6401で、メインメニューを表示する。図121は、メインメニューの例を示す図である。ステップS6402で、処理(アクション)を選択する。
【0246】
ステップS6402で、ログアウトが選択された場合には、ステップS6404に進み、図52につき説明したログアウト処理を行なう。ヘルプが選択された場合には、ステップS6405に進み、図52につき説明したヘルプ処理を行なう。検索が選択された場合には、ステップS6406に進み、図65につき後述する検索処理を行なう。印刷が選択された場合には、ステップS5607に進み、図67につき後述する印刷処理を行なう。送信が選択された場合には、ステップS6408に進み、図69につき後述する送信処理を行なう。削除が選択された場合には、ステップS6409に進み、図75につき後述する削除処理を行なう。命令の設定が選択された場合には、ステップS6410に進み、図77につき後述する命令の設定処理を行なう。スケジュールが選択された場合には、ステップS6411に進み、図78につき後述するスケジュール変更処理を行なう。公開情報の追加が選択された場合には、ステップS6412に進み、図66につき後述する公開情報の追加処理を行なう。他のデバイスが選択された場合には、ステップS6413に進み、図80につき後述する他のデバイスへのアクセス処理を行なう。デスクトップが選択された場合には、ステップS6414に進み、図80につき後述するデスクトップへのアクセス処理を行なう。
【0247】
図65は、検索処理手順を示すフローチャートである。これは、メインメニューから「検索」が選択された場合の処理の流れを示したものである。
【0248】
ステップS6501で、ジョブを検索するための検索条件を設定する。検索条件は、ジョブの設定時期、実行時期、実行状態、送信者などが利用でき、検索は、保留中のジョブに加えて、実行済みの履歴中のジョブも対象になる。特に、実行状態が実行済み(必要であれば、キャンセルも)であることを条件として検索すれば、履歴を表示させることができる。ステップS6502で検索を実行し、検索結果のリストを表示させる。ステップS6503で、検索結果よりジョブを選択し、ステップS6504で、選択したジョブに対する処理を選択する。
【0249】
ステップS6504で、印刷が選択された場合には、ステップS6506に進み、図60につき説明した選択Jobの印刷処理を行なう。送信が選択された場合には、ステップS6509に進み、図62につき説明した選択Jobの送信処理を行なう。プレビューが選択された場合には、ステップS6507に進み、図57につき説明した選択Jobのプレビュー処理を行なう。削除が選択された場合には、ステップS6508に進み、図58につき説明した選択Jobの削除処理を行なう。スケジュールが選択された場合には、ステップS6510に進み、図59につき説明した選択Jobのスケジュール変更処理を行なう。メインメニューが選択された場合には、ステップS6511に進み、図64につき説明したメインメニューからの処理を行なう。
【0250】
図66は公開情報への追加処理手順を示すフローチャートである。これは、「公開情報への追加」を選択した際の処理の流れを示したものである。ステップS6601で、公開情報とするジョブをジョブのリストから選択する。ステップS6602で、公開情報への追加メニュー(図111)を表示して、追加先、公開期限の設定を行なう。この詳細は、公開情報の処理で説明したものと同様である。但し、ここでは、公開する対象は、ユーザのジョブリスト中のジョブである。設定後、ステップS6603で、追加を指示すると、ステップS6605で、選択したジョブが設定した公開情報のリストに追加される。処理の終了後、キャンセルを選択すると、メインメニューへ戻る。
【0251】
図67は、印刷処理手順を示すフローチャートである。これは、メインメニューから「印刷」を選択した際の処理の流れを示したものである。
【0252】
ステップS6701で、印刷対象のジョブのある場所を選択する。図122は、印刷対象のジョブのある場所を選択するためのメニュー画面の例を示す図である。現在のデバイスを選択した場合、ステップS6703で、現在のデバイスの印刷Jobのリストを表示する。図123は、印刷対象のジョブを選択するためのメニューの例を示す図である。ステップS6704で、印刷するジョブを選択する。ステップS6705で、選択ジョブの印刷の設定を行なう。これは、図60につき説明したものと同様である。
【0253】
ジョブのある場所として、他のデバイスまたはデスクトップを選択した場合、ステップS6706で、デバイスのアドレスを指定し、ステップS6707で、そのアドレスのデバイスからログイン画面をダウンロードする。ステップS6708で、この画面にしたがって、ログインを実行する。ログインができたなら、ログインverbが印刷であるので、図51につき説明したように、ステップS6710で、図122の印刷対象のジョブを選択するためのメニュー画面がダウンロードされ、ここで、印刷デバイスを選択する。現在のプリンタで印刷する場合、ステップS6711に進み、図68につき説明するプリンタによるリモートプリント処理を行なう。デスクトップで印刷する場合、ステップS6712に進み、デスクトップによるリモートプリント処理を行なう。その他のデバイスで印刷する場合、ステップS6713に進み、他のデバイスによるリモートプリント処理を行なう。
【0254】
図68は、プリンタによるリモートプリント処理手順を示すフローチャートである。メインメニューから他のデバイスでの印刷を指定して、そのデバイスが同種のプリンタであった場合の、ログイン後における処理の流れを示している。処理の手順は、現在のデバイス上のジョブの印刷と同様である。但し、メニューやリストは、アクセス先の装置からダウンロードされる。
【0255】
図69は、送信処理手順を示すフローチャートである。これは、メインメニューから「送信」を選択した際の画面遷移と処理の流れを示したものである。
【0256】
ステップS6901で、送信対象ジョブのある場所は、このデバイスか、他のデバイスまたはデスクトップかを選択する。図124は、送信対象のジョブのある場所を選択するためのメニュー画面の例を示す図である。このデバイスを選択した場合、ステップS6902で、デバイス上のジョブのリストを表示する。図125は、送信対象のジョブを選択するためのメニューの例を示す図である。ステップS6903で、送信対象とするジョブを選択する。以後は、図62につき説明した選択ジョブの送信処理を行なう。
【0257】
送信対象ジョブのある場所として、他のデバイスまたはデスクトップを選択した場合、ステップS6904で、デバイスのアドレスを指定し、ステップS6905で、そのアドレスのデバイスからログイン画面をダウンロードする。ステップS6906で、この画面にしたがって、ログインを実行する。ログインができたなら、ログインverbが送信であるので、図51につき説明したように、ステップS6908で、図124の送信対象のジョブを選択するためのメニュー画面がダウンロードされ、ここで、送信デバイスを選択する。プリンタから送信する場合、ステップS6909に進み、図72につき説明するプリンタによるリモートセンド処理を行なう。デスクトップから送信する場合、ステップS6910に進み、デスクトップによるリモートセンド処理を行なう。その他のデバイスから送信する場合、ステップS6911に進み、他のデバイスからのリモートセンド処理を行なう。
【0258】
図72は、プリンタによるリモートセンド処理手順を示すフローチャートである。メインメニューから他のデバイスからの送信を指定して、そのデバイスが同種のプリンタであった場合の、ログイン後における処理の流れを示している。
【0259】
そのデバイス上にジョブが存在する場合に、ステップS7202で、送信ジョブのリストを表示する。ステップS7203で、ジョブのリストから送信するジョブを選択する。ステップS7204で、処理を選択する。ここで、送信処理を選択した場合は、選択ジョブの送信処理が行われる。この処理の手順は、図69につき説明した現在のデバイス上の選択ジョブの送信と同様である。但し、メニューやリストは、アクセス先の装置からダウンロードされる。
【0260】
ステップS7204で、検索を選択した場合には、ステップS7206で、送信対象ジョブを新たに検索する。ログアウトが選択された場合には、ステップS7207に進み、図52につき説明したログアウト処理を行なう。メインメニューが選択された場合には、ステップS7208で、メインメニューの表示に戻る。
【0261】
図75は、削除処理手順を示すフローチャートである。これは、メインメニューから削除を選んだ際の処理の流れを示したものである。
【0262】
ステップS7501で、削除対象ジョブのある場所は、このデバイスか、他のデバイスまたはデスクトップかを選択する。図73は、削除したいJobの存在する装置を選択するためのメニューの例を示す図である。このデバイスを選択した場合、ステップS7502で、デバイス上のジョブのリストを表示する。図74は、削除Jobのリストの例を示す図である。ステップS7503で、送信対象とするジョブを選択する。以後は、図58につき説明した選択ジョブの削除処理を行なう。
【0263】
削除対象ジョブのある場所として、他のデバイスまたはデスクトップを選択した場合、ステップS7505で、デバイスのアドレスを指定し、ステップS7506で、そのアドレスのデバイスからログイン画面をダウンロードする。ステップS7507で、この画面にしたがって、ログインを実行する。ログインができたなら、ログインverbが削除であるので、図51につき説明したように、ステップS7509で、図74の削除対象のジョブを選択するためのメニュー画面がダウンロードされ、ここで、ジョブを選択する。プリンタから削除する場合、ステップS7510に進み、図76につき説明するプリンタによるリモートデリート処理を行なう。デスクトップから削除する場合、ステップS7511に進み、デスクトップによるリモートデリート処理を行なう。その他のデバイスから削除する場合、ステップS7512に進み、他のデバイスからのリモートデリート処理を行なう。
【0264】
図76は、プリンタによるリモートデリート処理手順を示すフローチャートである。メインメニューから他のデバイスからの送信を指定して、そのデバイスが同種のプリンタであった場合の、ログイン後における処理の流れを示している。
【0265】
そのデバイス上にジョブが存在する場合に、ステップS7601で、ジョブのリストを表示する。ステップS7602で、ジョブのリストから削除するジョブを選択する。ステップS7603で、処理を選択する。ここで、削除処理を選択した場合は、ステップS7605で、図115の削除確認メニューが表示され、ステップS7606で、選択ジョブの削除処理が行われる。この処理の手順は、図58につき説明した現在のデバイス上の選択ジョブの削除と同様である。但し、メニューやリストは、アクセス先の装置からダウンロードされる。
【0266】
ステップS7604で、検索を選択した場合には、ステップS7607で、削除対象ジョブを新たに検索する。ログアウトが選択された場合には、ステップS7608に進み、図52につき説明したログアウト処理を行なう。メインメニューが選択された場合には、ステップS7609で、メインメニューの表示に戻る。
【0267】
図77は、命令の設定処理手順を示すフローチャートである。これは、メインメニューから命令の設定を選択した際の、画面遷移と処理の流れを示したものである。ステップS7701で、命令設定画面を表示する。図126は、命令設定画面の例を示す図である。ここでは、命令の実行条件を設定する。条件としては、ジョブ名、デバイス名、ユーザ名、命令の実行の契機となる状況(ジョブの受信時、送信中、印刷時、ステータスの変更など)、命令の有効期限あるいは期間(無期限を含む)、プリンタの状態が設けられており、これらのANDかORかなども設定できる。図126に示す「On receiving jobs from others」のように、現在の設定内容が表示される。
【0268】
ステップS7702で、処理が選択される。ここで、「アクションの設定(Take Action)」を選択すると、ステップS7704へ進み、設定した条件が満たされたときに行なうべきアクションの設定を行なう。ここでは、ジョブの印刷、保留が設定できる。更に、ジョブの送信(転送)、キャンセルなどが設定できてもよい。通知を選択すると、ステップS7705で、通知の設定を行なう。命令の設定を選択すると、画面上で設定した命令が有効となる。命令の削除を選択すると、画面上の設定対象の命令が削除される。その後、ステップS7707で、メインメニューに戻る。有効期限を過ぎた命令は、実行済みのジョブと同様に履歴に残り、履歴の管理において、期限より更に一定期間が過ぎると削除される。
【0269】
図78は、スケジュール変更処理手順を示すフローチャートである。これは、メインメニューからスケジュールの変更を選択した際の処理の流れを示したものである。
【0270】
ステップS7801で、スケジュールの変更画面を表示して、変更対象ジョブのある場所は、このデバイスか、他のデバイスまたはデスクトップかを選択する。図127は、変更したいJobの存在する装置を選択するためのメニューの例を示す図である。現在のデバイスを選択した場合、ステップS7803で、デバイス上のジョブのリストを表示する。図128は、スケジュールの変更対象Jobの選択画面の例を示す図である。ステップS7804で、変更対象とするジョブを選択する。ステップS7805で、図59につき説明した選択ジョブのスケジュールの変更を行なう。
【0271】
変更対象ジョブのある場所として、他のデバイスまたはデスクトップを選択した場合、ステップS7806で、デバイスのアドレスを指定し、ステップS7807で、そのアドレスのデバイスからログイン画面をダウンロードする。ステップS7808で、この画面にしたがって、ログインを実行する。ログインができたなら、ログインverbがスケジュールの変更であるので、図51につき説明したように、ステップS7810で、図128のスケジュール変更対象のジョブを選択するためのメニュー画面がダウンロードされ、ここで、ジョブを選択する。プリンタのスケジュールを変更する場合、ステップS7811に進み、図79につき説明するプリンタによるリモートリスケジュール処理を行なう。デスクトップのスケジュールを変更する場合、ステップS7812に進み、デスクトップによるリモートリスケジュール処理を行なう。
【0272】
図79は、リモートリスケジュール処理処理手順を示すフローチャートである。メインメニューから他のデバイス(同種のプリンタ)のJobのスケジュール変更を選択した場合の処理の流れを示している。
【0273】
デバイス上にジョブが存在する場合に、ステップS7902で、ジョブの全リストを表示する。ステップS7903で、処理を選択する。ここで、ジョブを選択し、スケジュールの変更処理を選択した場合は、ステップS7905で、図116の選択ジョブのスケジュールの変更メニューが表示され、選択ジョブのスケジュールの変更処理が行われる。この処理の手順は、図59につき説明した現在のデバイス上の選択ジョブのスケジュールの変更と同様である。但し、メニューやリストは、アクセス先の装置からダウンロードされる。
【0274】
ステップS7904で、検索を選択した場合には、ステップS7906で、スケジュールの変更対象ジョブを新たに検索する。ログアウトが選択された場合には、ステップS7907に進み、図52につき説明したログアウト処理を行なう。メインメニューが選択された場合には、ステップS7908で、メインメニューの表示に戻る。
【0275】
図80は、他のデバイスへのアクセス処理手順を示すフローチャートである。これは、メインメニューから他のデバイスへのアクセス、またはデスクトップへのアクセスを選択した場合の処理の流れを示している。ステップS8001で、デバイスのアドレスを指定し、ステップS8002で、そのアドレスのデバイスからログイン画面をダウンロードする。ステップS8003で、この画面にしたがって、ログインを実行する。ログインができたなら、ログインverbがデバイスであるので、図51につき説明したように、ステップS8005で、図106の初期メニュー画面がダウンロードされ、操作対象デバイスを判別する。操作対象がプリンタである場合、ステップS8006に進み、自プリンタと同様に、他のプリンタの処理を行なう。操作対象がデスクトップである場合、ステップS8007に進み、図82につき後述するデスクトップの処理を行なう。操作対象が他のデバイスである場合、ステップS8008に進み、他のデバイスの処理を行なう。
【0276】
図82は、デスクトップの処理手順を示すフローチャートである。メインメニューからGoto My Desktopで自分のデスクを選んだ時の初期画面の画面遷移と処理の流れとを示している。まず、ステップS8201で、メインメニューを表示する。図129は、デスクトップメインメニューの例を示す図である。ステップS8202で、処理(アクション)を選択する。
【0277】
ステップS8202で、ファイル印刷が選択された場合には、ステップS8204に進み、図88につき後述するファイル印刷処理を行なう。未読メール取得が選択された場合には、ステップS8205に進み、図83につき後述する未読メール取得処理を行なう。既読メール取得が選択された場合には、ステップS8206に進み、図84につき後述する既読メール取得処理を行なう。スケジュール印刷が選択された場合には、ステップS8207に進み、スケジュール印刷処理を行なう。スケジュール参照が選択された場合には、ステップS8208に進み、スケジュール参照処理を行なう。アドレス帳参照が選択された場合には、ステップS8209に進み、アドレス帳参照処理を行なう。ログアウトが選択された場合には、ステップS8210に進み、図52につき説明したログアウト処理を行なう。
【0278】
図83は、未読メール処理手順を示すフローチャートである。これは、自分のデスクにアクセスして、未読メールを読もうとした際の処理の流れを示している。ステップS8300で、未読メールのリストを表示する。図85は、未読メールのリストの例を示す図である。ステップS8301で、処理対象のメールを選択する。ステップS8302で、この選択されたメールに対する処理を選択する。
【0279】
ステップS8302で、メインメニューが選択された場合には、ステップS8304で、デスクトップのメインメニューに戻る。「開く」が選択された場合には、ステップS8305で、選択されたメールを開いて内容を表示する。図86は、メールの内容の表示例を示す図である。ステップS8306で、前の表示や後の表示が選択された場合には、ステップS8305に戻り、対応するメールの内容を表示する。印刷や削除が選択された場合には、それぞれ、ステップS8308のメールの削除、ステップS8309のメールの印刷が実行される。ステップS8302で、印刷や削除が選択された場合にも、それぞれ、ステップS8308のメールの削除、ステップS8309のメールの印刷が実行される。全て印刷が選択された場合には、ステップS8310で、全てのメールが印刷される。「既読メール(Old)」が選択された場合には、図84につき後述する既読メールの処理を行なう。
【0280】
メール印刷は自分のデスクにアクセスして、メールを取得して、印刷する。印刷に関しては、前述のジョブの印刷と同様に印刷先などを指定できる。全メール印刷は自分のデスクにアクセスして、全てのメールを取得して、印刷する。メール削除は、自分のデスクにアクセスして、メールを削除する。その際、ジョブの削除と同様に削除の確認が行なわれるようにしてもよい。
【0281】
図84は、既読メール処理手順を示すフローチャートである。これは、自分のデスクにアクセスして、既読メールを読もうとした際の処理の流れを示している。ステップS8401で、未読メールのリストを表示する。図87は、既読メールのリストの例を示す図である。ステップS8402で、処理対象のメールを選択する。ステップS8403で、この選択されたメールに対する処理を選択する。
【0282】
ステップS8404で、メインメニューが選択された場合には、ステップS8405で、デスクトップのメインメニューに戻る。「開く」が選択された場合には、ステップS8406で、選択されたメールを開いて内容を表示する。図86は、メールの内容の表示例を示す図である。ステップS8407で、前の表示や後の表示が選択された場合には、ステップS8406に戻り、対応するメールの内容を表示する。印刷や削除が選択された場合には、それぞれ、ステップS8409のメールの削除、ステップS8410のメールの印刷が実行される。ステップS8302で、印刷や削除が選択された場合にも、それぞれ、ステップS8409のメールの削除、ステップS8410のメールの印刷が実行される。「未読メール(Unread)」が選択された場合には、図83につき説明した未読メールの処理を行なう。
【0283】
図88は、ファイル処理の処理手順を示すフローチャートである。これは、自分のデスクにアクセスして、デスクトップ上のファイルに対して操作しようとした際の処理の流れを示している。ステップS8801で、ファイル取得のための設定を行なう。図130は、ファイル取得のための設定画面の例を示す図である。ここでは、ファイルネームが設定できる。ステップS8802で、取得のために実行すべき処理を選択する。
【0284】
ステップS8802で検索を選択した場合、ステップS8803で、検索条件を設定し、ステップS8804で、デスクトップのファイルの検索を実行し、ステップS8805で、設定条件に該当するファイルのリストが表示される。ステップS8802で、ファイル一覧(Show All)を選択した場合、デスクトップのファイルの一覧が表示される。図131は、デスクトップのファイルの一覧表示の例を示す図である。ステップS8807では、検索結果あるいは一覧表示から、ファイルを選択する。このようにして選択した場合、あるいはステップS8802で、ファイルネームを入力して取得を指示した場合、ステップS8808で、該当ファイルがデスクトップから取得される。ステップS8809で、このファイルに対する処理を選択する。図132は、取得ファイルに対する処理の選択画面の例を示す図である。ここで、印刷が選択された場合、ステップS8811で取得したファイルを印刷する。送信が選択された場合、ステップS8812で、取得したファイルを送信する。
【0285】
尚、本発明は、単一の機器からなる装置に適用しても、複数の機器から構成されるシステムに適用してもよい。また、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、装置あるいはシステムに供給し、装置あるいはシステム内のコンピュータが記憶媒体に格納されたプログラムコードを読み出して実行することによって達成してもよい。
【0286】
更に、装置あるいはシステム内のコンピュータが記憶媒体に格納されたプログラムコードを読み出して実行することによって、上述した実施形態の機能を直接実現するばかりでなく、そのプログラムコードの指示に基づいて、コンピュータ上で稼動しているOSなどの処理により、上述の機能を実現される場合も含まれる。
【0287】
これらの場合、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0288】
【発明の効果】
以上説明したように、本発明によれば、送信待機中の情報の送信時期を変更できるという効果がある。また、ある送信時期の設定された送信対象情報を、違う送信時期にも簡単に送信できるという効果がある。更に、送信待機中の情報の送信先を変更できるという効果がある。
【図面の簡単な説明】
【図1】実施形態の機能構成を示した図である。
【図2】本実施形態の機能構成の詳細を表した図である。
【図3】ユーザの操作に対応した情報の流れを説明した図である。
【図4】ユーザの入力をコマンドとして処理する流れを示した図である。
【図5】処理結果やステータス変化をユーザに表示する処理の流れを示した図である。
【図6】複数のデバイス間における、機能の関係を表した図である。
【図7】本実施形態に係るシステム構成図である。
【図8】本実施形態に係るプリンタの機能ブロック図である。
【図9】電源投入時の起動順序を示すフローチャートである。
【図10】クライアントコンポーネントの動作を表すフローチャートである。
【図11】クライアントの要求に対するサーバコンポーネントの処理手順を示すフローチャートである。
【図12】 CancelAllPrinterjobsの処理手順を示すフローチャートである。
【図13】 GetAllPrinterjobsの処理手順を示すフローチャートである。
【図14】 SetPrinterJobStatusの処理手順を示すフローチャートである。
【図15】要求「login」「logout」の処理手順を示すフローチャートである。
【図16】要求「Goto Other Device」「Goto Desktop」の処理手順を示すフローチャートである。
【図17】要求「Search」「Help」「Receive Job / Receive Notification」の処理手順を示すフローチャートである。
【図18】 IdAnalyzeの処理手順を示すフローチャートである。
【図19】 DUMMYの処理手順を示すフローチャートである。
【図20】 IdAnalyzeNotifyの処理手順を示すフローチャートである。
【図21】 RecieveHttpNotificationの処理手順を示すフローチャートである。
【図22】要求「Print」「Send」「Delete」「Reschedule」「Preview」の処理手順を示すフローチャートである。
【図23】 PrintJobの処理手順を示すフローチャートである。
【図24】 SendJobの処理手順を示すフローチャートである。
【図25】 SendJobによる送信の実行手順を示すフローチャートである。
【図26】 CancelJobの処理手順を示すフローチャートである。
【図27】 SendNotificationの処理手順を示すフローチャートである。
【図28】サーバに対する入力情報と処理との対応関係を示す図である。
【図29】デーモンの起動からの処理手順を示すフローチャートである。
【図30】デーモンモジュールのNotification処理手順を示すフローチャートである。
【図31】デーモンが扱うjobの種類と対応する処理との関係を表した図である。
【図32】 PrintPrinterJobの処理手順を示すフローチャートである。
【図33】 Sendjobの処理手順を示すフローチャートである。
【図34】 ReceivejobDataの処理手順を示すフローチャートである。
【図35】 GetListOfJobAttributeの処理手順を示すフローチャートである。
【図36】 PollJobの処理手順を示すフローチャートである。
【図37】 PollNotifyの処理手順を示すフローチャートである。
【図38】 CancelActionの処理手順を示すフローチャートである。
【図39】 EditActionの処理手順を示すフローチャートである。
【図40】 EditActionの処理手順を示すフローチャートである。
【図41】 RescheduleActionの処理手順を示すフローチャートである。
【図42】 RescheduleActionの処理手順を示すフローチャートである。
【図43】 RescheduleActionの処理手順を示すフローチャートである。
【図44】 AddNotificationの処理手順を示すフローチャートである。
【図45】 AddInstructionの処理手順を示すフローチャートである。
【図46】 GetInstructionの処理手順を示すフローチャートである。
【図47】 ExecutionInstructionの処理手順を示すフローチャートである。
【図48】デスクトップのサーバコンポーネントの処理手順を示すフローチャートである。
【図49】メールに関する要求の処理手順を示すフローチャートである。
【図50】スケジュールに関する要求の処理手順を示すフローチャートである。
【図51】他のデバイスに関する要求の処理手順を示すフローチャートである。
【図52】ログアウト及びヘルプに関する要求の処理手順を示すフローチャートである。
【図53】初期メニュー画面からの処理手順を示すフローチャートである。
【図54】公開情報の処理手順を示すフローチャートである。
【図55】ログイン処理手順を示すフローチャートである。
【図56】ジョブを選択してアクションを行なう処理手順を示すフローチャートである。
【図57】選択Jobのプレビュー処理手順を示すフローチャートである。
【図58】選択Jobの削除処理手順を示すフローチャートである。
【図59】選択Jobのスケジュール変更処理手順を示すフローチャートである。
【図60】選択Jobの印刷処理手順を示すフローチャートである。
【図61】選択Jobの印刷設定の変更処理手順を示すフローチャートである。
【図62】選択Jobの送信処理手順を示すフローチャートである。
【図63】選択Jobの送信設定の変更処理手順を示すフローチャートである。
【図64】メインメニューからの処理手順を示すフローチャートである。
【図65】検索処理手順を示すフローチャートである。
【図66】公開情報への追加処理手順を示すフローチャートである。
【図67】印刷処理手順を示すフローチャートである。
【図68】プリンタによるリモートプリント処理手順を示すフローチャートである。
【図69】送信処理手順を示すフローチャートである。
【図70】送信設定メニューの例を示す図である。
【図71】送信設定変更メニューの例を示す図である。
【図72】プリンタによるリモートセンド処理手順を示すフローチャートである。
【図73】削除したいJobの存在する装置を選択するためのメニューの例を示す図である。
【図74】削除Jobのリストの例を示す図である。
【図75】削除処理手順を示すフローチャートである。
【図76】プリンタによるリモートデリート処理手順を示すフローチャートである。
【図77】命令の設定処理手順を示すフローチャートである。
【図78】スケジュール変更処理手順を示すフローチャートである。
【図79】リモートリスケジュール処理処理手順を示すフローチャートである。
【図80】他のデバイスへのアクセス処理手順を示すフローチャートである。
【図81】他のデバイスにアクセスするための設定画面を示す図である。
【図82】デスクトップの処理手順を示すフローチャートである。
【図83】未読メール処理手順を示すフローチャートである。
【図84】既読メール処理手順を示すフローチャートである。
【図85】未読メールのリストの例を示す図である。
【図86】メールの内容の表示例を示す図である。
【図87】既読メールのリストの例を示す図である。
【図88】ファイル処理の処理手順を示すフローチャートである。
【図89】 ResetInstructionsの処理手順を示すフローチャートである。
【図90】 DeleteAllInstructionsの処理手順を示すフローチャートである。
【図91】 DeleteInstructionsの処理手順を示すフローチャートである。
【図92】 GetInstructionDetailsの処理手順を示すフローチャートである。
【図93】 Checkの処理手順を示すフローチャートである。
【図94】 GetJobDataの処理手順を示すフローチャートである。
【図95】 GetJobAttributesの処理手順を示すフローチャートである。
【図96】 GetActionAttributesの処理手順を示すフローチャートである。
【図97】 DeleteJobの処理手順を示すフローチャートである。
【図98】 GetNotificationListの処理手順を示すフローチャートである。
【図99】 SetNotificationConditionの処理手順を示すフローチャートである。
【図100】 SetNotificationConditionの処理手順を示すフローチャートである。
【図101】 SetNotificationStatusの処理手順を示すフローチャートである。
【図102】 ClearHistoryの処理手順を示すフローチャートである。
【図103】 DeleteAllPublicInfoJobsの処理手順を示すフローチャートである。
【図104】 PrintPublicInfoの処理手順を示すフローチャートである。
【図105】 SearchDataの処理手順を示すフローチャートである。
【図106】初期メニューの画面例を示す図である。
【図107】 URLの印刷設定画面を示す図である。
【図108】パスワード入力画面を示す図である。
【図109】プリントキュー内で選択されたジョブに対する処理の設定画面を示す図である。
【図110】公開情報の処理設定画面を示す図である。
【図111】情報を他のデバイス上で公開するための設定画面の例を示す図である。
【図112】ログイン画面を示す図である。
【図113】保留されたジョブのリストの例を示す図である。
【図114】ジョブのプレビューの画面表示例を示す図である。
【図115】削除の確認画面を示す図である。
【図116】スケジュールの変更のための設定画面を示す図である。
【図117】印刷設定メニューの例を示す図である。
【図118】通知設定画面の例を示す図である。
【図119】印刷設定変更メニューの例を示す図である。
【図120】修正メニューの例を示す図である。
【図121】メインメニューの例を示す図である。
【図122】印刷対象のジョブのある場所を選択するためのメニューの例を示す図である。
【図123】印刷対象のジョブを選択するためのメニューの例を示す図である。
【図124】送信対象のジョブのある場所を選択するためのメニューの例を示す図である。
【図125】送信対象のジョブを選択するためのメニューの例を示す図である。
【図126】命令設定画面の例を示す図である。
【図127】変更したいJobの存在する装置を選択するためのメニューの例を示す図である。
【図128】スケジュールの変更対象Jobの選択画面の例を示す図である。
【図129】デスクトップメインメニューの例を示す図である。
【図130】ファイル取得のための設定画面の例を示す図である。
【図131】デスクトップのファイルの一覧表示の例を示す図である。
【図132】取得ファイルに対する処理の選択画面の例を示す図である。
【図133】ジョブに対する制限の設定のための設定画面を示す図である。
【図134】ジョブの拒絶の設定のための設定画面を示す図である。
【符号の説明】
101 ユーザ
102 クライアントコンポーネント
103 サーバコンポーネント
104 データベース
105 デーモン
201 操作部
202、203 ウェブブラウザ
204 ウェブサーバ
205 デバイスマネージャ
206 プリンタ
207 リクエストマネージャ
208 コマンド解析部
209 データベースマネージャ
601 印刷制御部
602 制御部
603 変換制御部
604 表示制御部
605 通知制御部
606 外部アプリ制御部
607 印刷部
608 メール制御部
701 ネットワーク
702 プリンタ
703 入出力操作部
704 スキャナ
705 マルチファンクション機器
706 パーソナルコンピュータ
801 タッチパネル
802 CPU
803 印刷部
804 通信部
805 ROM
806 RAM
807 HDD
808 システムバス
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an information processing apparatus and method, and a storage medium storing the program.
[0002]
[Prior art]
In a conventional information processing apparatus, information is transmitted by a user instructing transmission at a time when transmission is desired. In addition, a transmission time is designated and transmission is performed at the designated time.
[0003]
[Problems to be solved by the invention]
However, the transmission setting once made cannot be changed. Further, another transmission process cannot be set for the information for which transmission is set.
[0004]
[Means for Solving the Problems]
In order to solve the above-described problem, according to the present invention, an information processing apparatus corresponds to execution means for executing processing object information transmission processing and printing processing, and processing object information is associated with the type of process, execution time, and execution destination. Processing target information storage means for storing information, display means for displaying a list of processing target information stored in the processing target information storage means, and processing target information selection for selecting processing target information from the processing target information list Means, processing selection means for selecting a type of processing to be performed on the selected processing target information, and a processing type in which the selected processing type is stored in association with the processing target information. It is determined whether or not they match. If they match, the setting stored in the processing target information storage means is changed in association with the processing target information. If they do not match, the processing target information is associated with the processing target information. Storage control means for adding the type, execution timing, and execution destination of the selected process, and the process target information stored in the process target information storage means in association with the process target information. Execution control means for controlling the execution means so as to execute the types of processing stored in the information storage means based on the stored execution time and execution destination.
[0005]
According to another aspect, processing target information storage means for storing processing target information in association with the type of processing, execution time and execution destination, display means, processing target information selection means, and processing selection means And the storage control means and the execution means, and the display means is stored in the processing target information storage means. A display step for displaying a list of processing target information; a processing target information selecting step for selecting processing target information from the processing target information list; and a processing selecting unit for selecting the processing target information. A process selection step for selecting a type of process to be performed on the processing target information, and a process in which the storage control unit stores the selected type of the process in association with the processing target information. It is determined whether or not the type matches, and if they match, the setting stored in the processing target information storage means in association with the processing target information is changed. A storage control step of adding the type, execution timing and execution destination of the selected process, and the execution means corresponds to the process target information stored in the process target information storage means. In addition, the method includes an execution step of executing the type of processing stored in the processing target information storage unit based on the stored execution time and execution destination.
[0006]
According to another aspect, the processing target information storage means for storing the processing target information in association with the type of processing, the execution timing, and the execution destination is stored in a storage medium storing a computer-readable program. A display step of displaying a list of processing target information stored in the processing target information storage unit on a computer capable of executing processing for transmitting and printing target information, and selecting processing target information from the list of processing target information A processing target information selection step, a processing selection step for selecting the type of processing to be executed on the selected processing target information, and the selected type of processing stored in association with the processing target information It is determined whether or not it matches the type of processing, and if it matches, the setting stored in the processing target information storage means in association with the processing target information is changed, and If not, the storage control step of adding the selected process type, execution time and execution destination in association with the process target information, and the process target information stored in the process target information storage means, A program for executing an execution step of executing the type of processing stored in the processing target information storage unit in association with the processing target information based on the stored execution time and execution destination is stored.
[0007]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
[0008]
FIG. 1 is a diagram showing a functional configuration of the present embodiment, and shows a relationship among the user 101, the client 102, the server 103, the database 104, and the daemon 105. The client 102 and the server 103 may be on the same device, or may be on different devices connected via a network or the like.
[0009]
When the user 101 performs an operation on the client 102, the client 102 generates a request corresponding to the operation and transmits the request to the server 103. The server 103 interprets the received request, exchanges with the database 104, and performs processing such as adding / deleting a job and acquiring data. As a result, if necessary, a corresponding HTML page is created and transmitted to the client 102. The client 102 displays the received HTML page and prompts the user 101 for a new operation.
[0010]
The job stored in the database 104 is monitored by the daemon 105, and the daemon 105 executes processing such as printing, transmission, and notification corresponding to the job that satisfies the execution condition.
[0011]
FIG. 2 is a diagram showing details of the functional configuration of the present embodiment.
[0012]
The client component 102 includes an operation unit 201 and two Web browsers 202 and 203. User operations performed via the operation unit 201 are converted into requests by the Web browsers 202 and 203 and transmitted to the server component 103.
[0013]
The server component 103 includes a Web server 204, a device manager 205, a request manager 207, and a command analysis / processing unit 208. The request transmitted from the client component 102 is received by the Web server 204 and passed to the device manager 205 or the request manager 207.
[0014]
The device manager 205 acquires the status of the printer 206 and controls it. The Request manager 207 converts the request into a processing command and passes it to the Command analysis / processing unit 208.
[0015]
The command analysis / processing unit 208 executes processing corresponding to the instructed processing command, accesses the database 104 via the database manager 209, and adds / updates the job.
[0016]
On the other hand, the daemon 105 accesses the database 104 via the database manager 209 at regular intervals, checks whether there is a job that satisfies the execution condition, and executes the corresponding processing if it exists.
[0017]
FIG. 3 is a diagram illustrating a flow of information corresponding to a user operation.
[0018]
The client component 102 receives a user operation as input information, generates a request, and transmits the request to the server component 103.
[0019]
The server component 103 interprets the received request, exchanges with the database 104 via the database manager 209, and performs processing such as job addition / deletion and data acquisition. Also, processing such as acquiring the printer status by exchanging with the printer 206 via the device manager 205 is performed. As a result, if necessary, a corresponding display command (HTML page) is created and transmitted to the client 102.
[0020]
The client 102 displays the received display command (HTML page) to the user and prompts a new operation.
[0021]
The job stored in the database 104 is monitored by the daemon 105 via the database manager 209, and executes processing such as printing, transmission, and notification corresponding to the job that satisfies the execution condition.
[0022]
FIG. 4 is a diagram showing the flow of processing from when a user input is received until the processing of the corresponding command is executed.
[0023]
When the user performs an operation, the operation unit 201 converts it to corresponding operation instruction data. For example, an operation performed by a user using a keyboard or a mouse is converted into information that can be handled by an information processing device such as a corresponding key code or mouse movement information.
[0024]
After that, the Web Browser 202 that has received the operation instruction data converted as described above converts it into a corresponding request to the Web Server 204 and transmits it. For example, when one of the buttons displayed on the screen is selected, a request “select a specific button” is created.
[0025]
Upon receiving the request, the Web Server 204 passes the received data to the Request manager 207, which converts it into a processing command corresponding to the request and passes it to the Command analysis / processing unit 208. For example, when the user selects a button for instructing printing, the request “select button for instructing printing” is converted into a processing command “execution of processing corresponding to selection of button for instructing printing” and executed. The
[0026]
FIG. 5 is a diagram showing the flow of processing until information is displayed to the user in accordance with the result of the processing actually performed and the change in the printer status.
[0027]
Upon receiving the processing result, the Request manager 207 passes the corresponding operation instruction data to the Web Server 204. Similarly, the device manager 205 that has detected a change in the printer status passes the corresponding operation instruction data to the Web Server 204. For example, when a new operation screen is displayed to the user as a processing result, it is realized by converting information to be displayed on the screen into data such as HTML. Similarly, the printer status is realized by converting information to be displayed on the screen into data such as HTML.
[0028]
Receiving the operation instruction data, the Web Server 204 transmits the data to the Web Browser 202, and the Web Browser 202 actually displays the data on a display operation unit such as a touch panel to indicate to the user.
[0029]
FIG. 5 is a diagram showing a flow of processing and data until information is displayed to the user in response to a result of processing actually performed and a change in printer status.
[0030]
Upon receiving the processing result, the Request manager 207 passes the corresponding operation instruction data to the Web Server 204. Similarly, the device manager 205 that has detected a change in the printer status passes the corresponding operation instruction data to the Web Server 204. For example, when a new operation screen is displayed to the user as a processing result, it is realized by converting information to be displayed on the screen into data such as HTML. Similarly, the printer status is realized by converting information to be displayed on the screen into data such as HTML.
[0031]
Receiving the operation instruction data, the Web Server 204 transmits the data to the Web Browsers 202 and 203, and the Web Browser 202 actually displays an operation screen on a display operation unit such as a touch panel and presents it to the user. The Web Browser 203 displays the printer status.
[0032]
FIG. 6 is a diagram showing a functional relationship among a plurality of devices (device A and device B). Here, the device A is a printing apparatus, and the device B is a desktop personal computer that manages a user's mail and schedule. Device A and device B each have a client component 102, a server component 103, and a daemon 105. However, the client component 102 of the device B is omitted here assuming that the user is on the device A side.
[0033]
Here, if the user performs an operation on the device A, the operation information of the user is acquired as input information by the operation unit 201 and passed as a request to the device manager 205 and the request manager 207 of the server component 103.
[0034]
The device manager 205 answers the request from the user by acquiring the status of the printer 206 or the like. Further, the request manager 207 controls the printer by the print control unit 601 depending on the type of request, and further analyzes more detailed information by the command analysis processing unit 208 and executes corresponding processing.
[0035]
As a result, the information format is converted using the conversion control unit 603 as necessary, and various processes are executed via the control unit 602. If it is determined that job management is necessary, the database 104 is added or updated via the database manager 209. If it is determined that display is necessary, the display control unit 604 performs display. In addition, if it is determined that notification is necessary, the notification control unit 605 performs notification.
[0036]
On the other hand, the daemon 105 periodically monitors the database 104, and if there is a job that satisfies the execution condition, the corresponding process is executed.
[0037]
Here, when it is determined that the process is not completed in the device A, a request is transmitted to the device B, and the request manager 207 of the device B causes the corresponding process to be executed. For example, in the case of printing the file of the device B, the printing process is executed by the printing unit 607 using the corresponding application. In the case of mail access, access is performed by the mail control unit 608 using a corresponding application. In addition to this, it is realized by using a corresponding application such as reference to schedule information.
[0038]
Furthermore, it is possible to access a job stored in the database 104 of the device B.
[0039]
FIG. 7 is a system configuration diagram according to the present embodiment.
[0040]
In the figure, various devices are connected to a network 701, and data is transmitted and received via the network 701. The printer 702 prints data received via the network and has an input / output operation unit 703. The input / output operation unit 703 performs various displays for the user and receives instructions from the user. The scanner 704 and the multifunction device 705 also have similar input / output operation units. The scanner 704 optically reads data printed on paper or the like, and the multi-function device 705 has both functions of the printer 702 and the scanner 704. The personal computer 706 creates documents and images, and manages personal data such as user mails and schedules.
[0041]
FIG. 8 is a functional block diagram of the printer according to the present embodiment.
[0042]
In the figure, a touch panel 801 displays a printer status and a menu screen to the user, and allows the user to select a menu item and input characters using a displayed keyboard by touching the display surface. it can. Instead of the touch panel 801, a normal display and keyboard may be prepared.
[0043]
The CPU 802 executes various programs including processing procedures to be described later with reference to the flowchart, and controls each unit connected by the system bus 808. A printing unit 803 prints data on paper or the like. The communication unit 804 transmits / receives data including commands and status to / from a desktop, a scanner, another printer, and the like via a network.
[0044]
The ROM 805 stores fixed data and programs. The RAM 806 temporarily stores data and programs. A hard disk drive (HDD) 807 can permanently store programs and data and is used as the database described above. A system bus 808 connects the above-described units of the device, and is used as a medium for transmitting and receiving data, addresses, and control signals between the devices. Various programs including processing procedures to be described later with respect to the flowchart may be stored in the ROM 805, or may be loaded from the HDD 807 to the RAM 806 as needed prior to processing or during execution of processing.
[0045]
FIG. 9 is a flowchart showing the startup sequence when the power is turned on, and shows the startup sequence when the user turns on the machine. When the user turns on the power in step S901, the OS starts in step S902, and then the web server starts in step S903. Next, the client is activated in step S904, and finally the daemon is activated in step S905.
[0046]
FIG. 10 is a flowchart showing the operation of the client component. When the client is activated, a web browser object is created in step S1001, a request is issued to the server component in step S1002, and an HTML page creation is instructed (the page at this time is an Opening Screen). The HTML page sent from the server in response to the request is displayed in step S1003, and the user input is waited for in step S1004. Then, a corresponding process is performed by a user input. If the user's request is “exit”, the system is shut down and terminated in step S1006. If the user's request is to be processed on the client side, it is processed in step S1009 and again waits for user input. If processing is to be performed on the server side, a processing request is issued to the server component in step S1008, and an HTML page created in response to the request is received and displayed. Thereafter, it again waits for user input.
[0047]
FIG. 11 is a flowchart illustrating a processing procedure of the server component in response to a client request.
[0048]
The server component acquires the client request in step S1101, analyzes the request in step S1102, and performs processing corresponding to the request. In response to the request to display the Opening Screen, the printer status is acquired in step S1104. For Cancel All Jobs, in step S1105, a function CancelAllPrinterJobs () function described later with reference to FIG. 12 is called to cancel all jobs. In response to a Cancel / Pause / Restart request, the SetPrinterJobsStatus () function is called in step S1106 to set Job to the specified Status.
[0049]
For any of the above requests, finally, an HTML page corresponding to the request is created in step S1107, and the HTML page is transmitted to the client component in step S1108 to finish the process.
[0050]
If the request is “login” or “logout”, it will be described later with reference to FIG. If the request is “Goto Other Device” or “Goto Desktop”, it will be described later with reference to FIG. When the request is “Search”, “Help”, or “Receive Job / Receive Notification”, it will be described later with reference to FIG. When the request is “Print”, “Send”, “Delete”, “Reschedule”, or “Preview”, it will be described later with reference to FIG.
[0051]
FIG. 12 is a flowchart showing the processing procedure of CancelAllPrinterjobs. The prototype is DWORD CancelAllPrinterjobs ().
[0052]
First, in step S1201, a function GetAllPrinterJobs, which will be described later with reference to FIG. 13, is called to acquire a job from the spool. In step S1202, a specific printer is opened, and in step S1203, the status of each job is set to cancel. Thereafter, in step S1204, the printer is closed. Do this until all Jobs are set to cancel.
[0053]
FIG. 13 is a flowchart illustrating the processing procedure of GetAllPrinterjobs. The prototype is Int GetAllPrinterjobs (pInfo).
[0054]
First, in step S1301, the valid printer, print server, domain, print, and provider are enumerated using the EnumPrinter () function. One of the objects listed in step S1302 is opened, valid jobs in the spool are listed using the EnumJob () function in step S1303, and the printer is closed in step S1304. This operation is performed for all objects.
[0055]
FIG. 14 is a flowchart showing the SetPrinterJobStatus processing procedure. The prototype is Int SetPrinterJobStatus (pPrinterName, JobId, Status).
[0056]
First, in step S1401, the specified job is acquired from the spool using the GetJob function. In step S1402, a specific printer in which the job exists is opened, and in step S1403, the job status is set to a designated value. In step S1404, the printer is finally closed.
[0057]
FIG. 15 is a flowchart showing the processing procedure of the server when the client request is “login” and “logout”.
[0058]
If the request is login, first, a login verb and a remote device list are acquired in step S1502, and a user name is acquired in step S1503. In step S1504, GetUserId () is called to obtain a valid Job list for the user. In step S1505, a corresponding HTML page is created. At the same time, details of the user and the job are stored in the hidden area in step S1506.
[0059]
On the other hand, in the case of a Logout request, it is checked in step S1507 whether the remote device list is empty. If it is empty, an OpeningScreen page is created according to the status in step S1510. If it is not empty, until the list becomes empty, the next device is logged in with login verb = Disconnect in step S1508, and the device is repeatedly deleted from the remote device list in step S1509. In other words, all devices in the remote device list are logged out. When the list is empty, create an OpeningScreen page.
[0060]
In both cases of Login and logout, the created page is finally transmitted to the client component in step S1511.
[0061]
FIG. 16 is a flowchart showing the server processing procedure when the client request is “Goto Other Device” or “Goto Desktop”.
[0062]
If the request is Goto Other Device, the device name and device address are acquired in step S1602. In the case of Goto Desktop, a desktop address is acquired in step S1603. Thereafter, the device is added to the remote device list in step S1604, and a login verb is created in step S1605. If the login verb is Device or Desktop, Print, Send, Delete, Reschedule, log in to the device with the Login verb in step S1607. If the login verb is Device or Desktop, create the opening screen HTML page in step S1608. In the case of Send, Delete, and Reschedule, HTML pages of the PrintJob, Send Job, Delete Job, and Reschedule Job screens are created in steps S1609, 1610, 1611, and 1612, respectively. If the login verb is Disconnect, the device logs out from the device in step S1613, deletes the device from the remote device list in step S1614, and creates an opening screen HTML page in step S1615. Finally, in step S1616, the page is transmitted to the client step component, and the process ends.
[0063]
FIG. 17 is a flowchart showing the processing procedure of the server when the client request is “Search” “Help” “Receive Job / Receive Notification”.
[0064]
In the case of a search request, the search parameter is acquired in step S1702, and the search is executed in step S1703. In step S1704, a search result HTML page is created from the execution result. In the case of a Help request, a help context parameter is acquired in step S1705, and a corresponding help screen HTML page is created in step S1706. In either case, finally, in step S1707, the created HTML page is transmitted to the client component, and the process ends.
[0065]
If the request type is Receive Job / Notification, the data buffer is read in step S1708, and if the buffer is Receive Job in step S1709, to the IdAnalyze () function described in FIG. Then, the process is passed to IdAnalyzeNotify described with reference to FIG.
[0066]
FIG. 18 is a flowchart showing the processing procedure of IdAnalyze. Here, Job passed as line data from other devices is interpreted. This Job is executed by the daemon module in addition to the DB.
[0067]
First, in step S1801, the Demarshal function is called, demarshal is performed, and the buffer object is enabled. Next, in step S1802, the compressed data is decrypted and expanded using the UnformatData function, so that the data becomes valid in units of rows. In step S1803, the Demarshal function is called again to enable the message object. Finally, in step S1804, a ReceiveJob function (DUMMY) described later with reference to FIG. 19 is called to add the Job to the DB.
[0068]
FIG. 19 is a flowchart showing a DUMMY processing procedure. This module is a dummy of the ISAPI Extended Receive module that receives the line buffer sent by SendJob. Passed to CGI application.
[0069]
Actually, these functions in the line buffer sent by SendJob in step S1901 are read, and the temporary file is dumped in step S1902. This file name is passed to IDExtn.Exe of the CGI module in step S1903. In step S1904, the file name is read and data is acquired. To send data to the CGI application in step S1905, this module uses an internet client call.
[0070]
FIG. 20 is a flowchart showing the processing procedure of IdAnalyzeNotify. Interpret Notification passed as row data from other similar devices. In addition to processing this notification, the notification is executed by the daemon module.
[0071]
Actually, in step S2001, the Demarshal function is called, demarshal is performed, and the buffer object is enabled. Next, in step S2002, the compressed data is decoded and expanded using the UnformatData function, so that the data becomes valid in units of rows. In step S2003, the Demarshal function is called again to enable the message object. Finally, in step S2004, a ReceiveHttpNotification function described later with reference to FIG. 21 is called to add the Job to the DB.
[0072]
FIG. 21 is a flowchart showing the processing procedure of ReceiveHttpNotification. The prototype is Void CIDAction :: RecieveHttpNotification (poNotify).
[0073]
This function is a function that receives a notification sent by the HTTP protocol. Even if the device does not support the requested notification method, the intermediate device can be used to finally notify the target device.
[0074]
In step S2101, the receiver name and address of notification and the notification method are checked, and in step S2102, it is checked whether this device is a target device for receiving notification or only functions as an intermediate point for passing notification to other devices.
[0075]
If this device is the final target value, a temporary file is created in step S2103, and a notification message is written therein in step S2104. In step S2105, a fixed file “pollfile” (a file polled by the daemon) in the Windows directory is created and overwritten. In step S2107, the command line parameter of the notification module (module for displaying or creating a message) is specified in this file, and notification is performed using the notification method specified in step S2107.
[0076]
If this device is an intermediate device, it is confirmed in step S2108 whether or not this device has the capability of issuing notification. If there is, the notification is transmitted to the designated device by the designated method in step S2110. If this device does not have the capability to issue a notification, in step S2112 the notification is transmitted to another intermediate point via the HTTP protocol.
[0077]
FIG. 22 is a flowchart showing the processing procedure of the server when the client request is “Print”, “Send”, “Delete”, “Reschedule”, or “Preview”.
[0078]
In the case of these five requests, first, in step S2201, a user ID, JobID, and ActionID are acquired.
[0079]
In the case of a print request, the printing time and location are acquired in step S2203, and the notification list is acquired in step S2204. In step S2205, the function PrintJob () is called to execute printing.
[0080]
In the case of a Send request, the transmission time and location are acquired in step S2206, and the notification list is acquired in step S2207. In step S2208, the function SendJob () is called and transmitted.
[0081]
In the case of a Delete request, the CancelAction () function is called in step S2209 to delete the Job.
[0082]
In the case of a Reschedule request, the RescheduleAction function is called in step S2210 to change the schedule.
[0083]
In the case of a Preview request, the job is converted into JPG or GIF format using format conversion library in step S2211.
[0084]
In all the above requests, a corresponding HTML page is created in step S2212, and the HTML page is transmitted to the client component in step S2213, and the process ends.
[0085]
FIG. 23 is a flowchart illustrating the PrintJob processing. The prototype is void CIDAction :: PrintJob (ActionId, NotifyList). The input parameters are the specified action ID and user notification setting list, and the job is immediately printed on this device.
[0086]
When the ActionID is Print / Hold, the Action attributes (Print time, Notification, etc.) are corrected to the current time and the new Notification. When ActionID is Send, a new Action is created in the DB. This depends on whether there are other PrintActions related to this Job that this user is holding. After the Job is printed, the ActionStatus becomes “done”, and this Action becomes part of the user's history.
[0087]
First, in step S2301, a record is pulled out and the details of the action are checked. In step S2302, it is checked whether the old action is held, and this information is stored in step S2303. In step S2304, JobData necessary for this action is acquired. In step S2305, the entry in the database is corrected to be “printing”. This is to prevent the daemon module from executing this record.
[0088]
In steps S2307 and 2308, a new record is created or an existing record is corrected. For example, if the previous Action was Print / Hold, the record is modified, and if the previous Action was Send, a new record is created for that Job when the user has no Hold PrintAction. . new / old ActionID is returned (subject to conditions).
[0089]
In step S2309, Notification Status becomes False unconditionally. In step S2310, notification is added to this newActionID to set the user type to “Don't care” (that is, there is no sender or receiver).
[0090]
In step S2311, Job is sent to the print queue for printing using Spooler API Calls. In step S2312, the entry is corrected as “printing succeeded” or “finished”. In step S2313, NotificationStatus is set in accordance with the action status of printing.
[0091]
FIG. 24 is a flowchart showing the SendJob processing. The prototype is Void CIDAction :: SendJob (bsendjobToDatabase, ActionId, roJobMessage).
[0092]
Send a new Job to the specified “existing” Job or to the specified receiver / device list. By sending, one copy is sent to one device. In this case, if there are multiple receivers, the Job copy is shared. All other receiver information is also sent, so it is possible to access the Job from other devices. Job is sent using HTTP protocol.
[0093]
Actually, in step S2401, it is checked whether the job has an ActionId or a new job. If ActionId exists, the attribute of Action is acquired in Step S2402, and it is checked in Step S2403 whether the Action type is Hold. If it is a Hold Job, information that the Hold Job has been accessed is stored in step S2404.
[0094]
Next, when this information is designated to go to the DB, in step S2406, SendJob () is called, and all information related to the job (sender, receiver, etc.) is stored in the DB. After that, in step S2407, it is checked whether or not to send “now”, and if it is not sent now, the process ends and waits for the daemon module to execute transmission. When sending now, in step S2408, the transmission is executed and the process ends.
[0095]
FIG. 25 is a flowchart showing a transmission execution procedure by SendJob ().
[0096]
First, call EditAction () and set ActionStatus to active. Next, the receiver list is processed to obtain the user name, device name, and device URL address. Format conversion is performed so as to correspond to the receiver device. This is done using a suitable image conversion library. The message data is converted into a byte string, and further compressed and encoded. Send this data using the HTTP protocol and set ActionStatus to done. Furthermore, Action is added as a part of the user history, and notification status is set to success / fail depending on the transmission status. Status indicating that the job is a job accessed from the Held List is set (steps S2501 to 2511).
[0097]
FIG. 26 is a flowchart showing the CancelJob processing procedure. The prototype is Void CIDAction :: CancelJob (dwActionId).
[0098]
This function cancels the specified action. Specifically, in Step S2601, the Action attribute is acquired, the CancelAction () function is read, and the Action is marked as cancelled. If the Action is in the Hold list, it is added to a part of the user history in Step S2603, and if it is a part of the user history, the entry is deleted in Step S2604. If Action is Hold, in step S2606, the notification condition is set to “Accessing Hold Job”. If the user is a receiver on this device, the process is terminated. If the user is on another device, the user logs in to the device in step S2608, and details on the cancel action are set in step S2609. In step S2610, the SendJob () function is called to send this information to the actual device, and transmission is executed. This cancels the action.
[0099]
FIG. 27 is a flowchart showing the SendNotification processing. The prototype is Void CIDAction :: SendNotification (dwActionId).
[0100]
This function is a function that performs actual notification. Notification types such as Popup are notified by sending http. In the case of telephone or e-mail, notification is made by calling an appropriate module. If an unsupported method is specified, a notification is sent to the specified intermediate device and retransmitted. This function is only performed when a “now” nitification must be sent. In this case, NotificationStatus is set to Done so that the daemon module does not poll.
[0101]
Actually, first, a notification method is checked in step S2701, and when the method is a popup window or a voice message, data is transmitted by the http protocol in step S2703. When the method is a telephone or the like, it is checked in step S2705 whether the device has a notification capability. If the device has the capability, notification is performed in the designated method in step S2704. If the device is not capable, the intermediate point is checked in step S2706. This midpoint supports the specified issuing mechanism. In step S2707, the notification message and its details are transmitted to the intermediate device using the HTTP protocol. This method can also be used for email, fax, and pagers.
[0102]
FIG. 28 is a diagram illustrating a correspondence relationship between input information for the server and processing. The processing corresponding to it is summarized.
[0103]
Here, the control unit 602 governs Print Job, Send Job, Cancel Job, Send Notification, and Receive HTTP Notification. This module is the main module of the back end of the printer, and “Print Job Now Now.” “Print Job Here Now.” “Job Job Now in a Different Place” "Print the job later in a different location.""Send the job to another device now or later.""Change the schedule.""Cancel the job action." ”“ Set notification type (voice, pop-up window, phone, e-mail, fax). ”“ Receive notification. ”“ Get or set device status. ”
[0104]
This module covers the DB module in a form that is transparent to the DB and the module that uses it (GUI module, Daemon module, etc.).
[0105]
FIG. 29 is a flowchart showing a processing procedure after the daemon 105 is started.
[0106]
The daemon module 105 continually polls the DB and files to execute actions and operations registered to be executed later. In all these cases, entries are created in the DB.
[0107]
First, in step S2901, a thread that performs polling in an infinite loop is created, and a Job that must be executed “now” is polled. When a Job (Action) is found in the DB, its Action type is checked (steps S2902 to 2905).
[0108]
If Action is Print, in step S2906, the PrintJob () function is called and printing is executed. If the Action is Send, in step S2908, ConstructSendMessage () is called to create a message, and then in step S2909, the SendJob () function is called to execute transmission.
[0109]
If Action is Hold, the CancelJob () function is called in step S2907 to cancel the Job.
[0110]
After these processes, notification is checked in step S2910.
[0111]
FIG. 30 is a flowchart showing the Notification processing procedure of the daemon module.
[0112]
First, in step S3001, it is checked by calling the function PollNotify () whether there is a notification to be issued from this device. If there is a notification to be issued, in step S3002, the notification is issued by reading the SendNotification () function. If there is no notification, the presence of the application file is checked in step S3003.
[0113]
If the file exists, in step S3005, the command line parameters are read from the file, and then the file is deleted. Start the ShowNotify.Exe module and pass the command line parameters.
[0114]
Finally, in the case of PullPrint, the PrintOcx.EXE file is activated in step S3007, and in the case of Schedule, the DataDumo.Exe file is activated in step S3008.
[0115]
FIG. 31 shows the relationship between the types of jobs handled by the daemon and the corresponding processing.
[0116]
FIG. 32 is a flowchart showing the PrintPrinterJob processing procedure. The prototype is Int PrintPrinterJob (pPrinterName, pDocumentName, pVoid, Bufsize).
[0117]
This function prints that Job is spooled in the printer. Actually, the specified printer is opened, the printer is notified that the job is spooled, data is written to the printer, and the printer is closed (steps S3201 to 3204).
[0118]
FIG. 33 is a flowchart illustrating the Sendjob processing.
[0119]
In step S3301, it is checked whether the job to be sent is new or existing in the database. If it is a new job, the details are added to the database in step S3303. In step S3311, the Sender / Receiver of the job is similarly checked. If they exist in the database, the new Action is added to the user ID in step S3312, and for those that do not exist in the database, a new entry is added in step S3313.
[0120]
If an existing job is sent, check the action to Sender. If Action is Send and the status is Todo or Active, change When todo time of Action to the new time when JobMessage was created. In step S3313, if Action is Send and is already executed, a new Action is added to the database. If Action is not Send, the Action entered for this job is created in the database.
[0121]
In all cases, the existence of the receiver of the job is checked, and if the receiver does not exist in the database, a new entry is created. When Action is Hold and ActionStatus is Todo, change Action to Send and change WhenTodo time to the new time when JobMessage was created. If ActionStatus is not Todo, create a new record with Action Send, and set WhenTodoTime to the new time specified in JobMessage.
[0122]
FIG. 34 is a flowchart showing the processing procedure of ReceivejobData.
[0123]
First, in step S3400, the check item “Deny Jobs From Person / Device” is checked, and in the case of a job from the transmission source set here, the reception of the job is rejected in step S3417. This item is set by the administrator.
[0124]
FIG. 134 is a diagram showing a setting screen for setting job rejection. In the figure, an identifier of a user to be rejected is set in “Deny Jobs From Person”. In “Deny Jobs From Device”, a device to be rejected is set. Further, as will be described later with reference to FIG.
[0125]
The expiration date and the type of processing to be rejected may be set. By looking at the check items set as described above, it is determined whether or not to accept the job from the transmission source user or device, and if it is permitted, the receiving process is performed.
[0126]
There are two cases where the received job is a new job and an existing job.
[0127]
If a new job is received, a new entry is added to the job details at step S3402. If no Sender exists, an entry for Sender is added in step S3404. In step S3405, Action and Notifications are added in the same manner. If Sender exists, Notifications is added in Step S3406. If no Receiver exists, it is added in step S3408. In step S3409, Receiver Action is also added.
[0128]
If an existing job is received, check the receiver of the job. If Receiver is present and has the same Action as received, the previous Action status is canceled and a new record is created. A new entry is added for the Receiver when it has a different Action than the one for the Receiver. Notifications are also added in some cases. The Action status is set to Todo unless the Usertype is different.
[0129]
FIG. 35 is a flowchart showing the processing procedure of GetListOfJobAttribute.
[0130]
Check all jobs for a user at a specified location and return all details for that user's job. There are two jobs, Heldjobs or Historyjobs. The database searches for jobs by UserID and all jobs are picked up and added to the list. This list is returned (steps S3501 to 3507).
[0131]
FIG. 36 is a flowchart showing the processing procedure of PollJob.
[0132]
A search is made for a user type Receiver, ActionStatus Todo, and WhenTodo shorter than the current system time (steps S3601 to 3605). If the job exists, the details of the job are acquired, data is set in the ActionSet, and TRUE is returned (steps S3606 to 3608). If Job does not exist, FALSE is returned (step S3609).
[0133]
FIG. 37 is a flowchart showing a PollNotify processing procedure.
[0134]
The first record in which CanNotify is TRUE, WhileToNotify is TRUE, and WhenToNotify is shorter than the current system time is searched (steps S3701 to 3705). If a record exists, the details of notification are acquired, data is set in NotificationSet, and TRUE is returned (steps S3706 to 3708). If no record exists, FALSE is returned (step S3709).
[0135]
FIG. 38 is a flowchart showing the CancelAction processing.
[0136]
First, a record having the specified ActionID is searched. If the corresponding record exists, a job having the same ActionId is searched and its size is checked (steps S3801 to 3804). If the size is smaller than the JobSizeLimit set by the administrator, the ActionStatus is checked in step S3805. If this ActionStatus is Done or the job size is equal to or larger than JobSizeLimit, the ActionStatus is changed to Deleted and the record is deleted (steps S3807 to 3808). In other cases, ActionStatus is canceled in step S3806. In step S3809, all notifications corresponding to ActionID are deleted.
[0137]
FIG. 39 is a flowchart showing the EditAction processing.
[0138]
The record having the specified ActionID is searched, and when the corresponding record is found, the Action status is converted into the received parameter (steps S3901 to 3903).
[0139]
FIG. 40 is a flowchart showing the EditAction processing. The prototype is different from that described with reference to FIG.
[0140]
A record having the specified ActionID is searched, and if the Action of the corresponding record matches the ActionID Action and the Action status is pending, the Action status is converted to the received parameter (steps S4001 to 4006). If there is no corresponding record, a new action is added in step S4004.
[0141]
FIG. 41 is a flowchart showing the RescheduleAction processing.
[0142]
Search for records with the specified ActionID. If the corresponding record is found and the Action Status is not done, WhenTodo is converted to the received NewTime (steps S4101 to 4104).
[0143]
FIG. 42 is a flowchart illustrating the RescheduleAction processing. The prototype is different from that described with reference to FIG.
[0144]
In step S4201, a record having the specified ActionID is searched. If the corresponding record is found and the UserType matches, the action status is changed to cancel, and a new record with the action status Todo is added (steps S4201 to 4204). If the corresponding record is not found, check the existence of the user. If the user is found, pick the UserID. If not found, add a new user and pick the UserID. A new Action that matches this UserID is added (steps S4206 to 4209).
[0145]
FIG. 43 is a diagram showing a RescheduleAction processing procedure. The prototype is different from that described with reference to FIGS.
[0146]
Search for records with the specified ActionID. If the record is found, check the Action status and Action. If the Action matches the ActionID and the Action status is pending and not completed, the WhenTodo time is changed to a new time. All Notifications of ActionID are deleted and new Notifications are added (Steps S4301 to 4302, 4304 to 4308). If the corresponding record is not found, a new Action whose Action status is Todo is added in Step S4303, and the WhenTodo time is changed to a new time.
[0147]
FIG. 44 is a flowchart showing the AddNotification processing.
[0148]
Add a new record to Notification. Check the parameter's general information (GeneratedFrom parameter) and create a new entry for this.
[0149]
FIG. 45 is a flowchart showing the processing procedure of AddInstruction.
[0150]
When ReceieveJob or SendJob is generated, Instruction setting is invoked. First, in step S4501, the existence of the specified UserId on the database is confirmed. If it does not exist, the process is terminated. If it exists, a record is acquired from the Instruction list in Step S4502, and a new instruction is added to this User in Step S4503.
[0151]
Instruction adds Instruction to the Instruction table of the database. The associated Action and the Notification given with the Instruction are reflected in the Action table and the Notification table (steps S4504 to 4506).
[0152]
In both the Receive job and the Send job, when an instruction for generating these is satisfied, a record that acts as a template for generating a new action and a new notification is added to the action table and the notification table.
[0153]
FIG. 46 is a flowchart showing the GetInstruction processing.
[0154]
This function is called by ReceiveieveJobData and SendJobData. First, in step 4601, it is checked whether the Action type is Receive or Send for all records in the Instruction table, and all commands of the specified Action type are acquired. In step S4602, details (values set as commands) in the JobMessage are checked, and using these values, it is checked whether or not the instruction can be executed. The check function (described later) is used to check the validity of the instruction. If Instruction is valid, its Id is added to the list in step S4603. If processing is completed for all instructions in step S4603, a list of valid InstructionIds is finally returned.
[0155]
FIG. 47 is a flowchart showing the processing procedure of Execution Instruction. This function is called by ReceiveieveJobData and SendJobData. Search for records in Action and Notification tables. These records are executed according to each instruction in the instruction list, and a copy thereof is created in each table with a todo flag (set to TRUE) (steps S4701 to 4708).
[0156]
Search Action table for dummy action set by instruction. Based on these dummy actions, a new appropriate record is added and the action is executed.
[0157]
Search for dummy notification set by Instruction. A new appropriate record is added based on these dummy notifications, and notification is executed.
[0158]
FIG. 89 is a flowchart showing the ResetInstructions processing. The prototype is Void ResetInstructions (dwUserId, pInstructionList).
[0159]
First, all the instructions of the specified UserId are searched, and the obtained instruction and all Actions and Notifications corresponding to the instruction are deleted (steps S8901 to 8905). Thereafter, a new instruction passed in the instruction list is added (step S8906).
[0160]
FIG. 90 is a flowchart showing the DeleteAllInstructions processing. The prototype is Void DeleteAllInstructions (dwUserId).
[0161]
All the instructions of the specified UserId are searched, and the searched instruction and all Actions and Notifications corresponding to the instruction are deleted (steps S9001 to 9005).
[0162]
FIG. 91 is a flowchart showing the DeleteInstructions processing. The prototype is Void DeleteInstructions (dwInstructionId).
[0163]
The instruction with the specified InstrucationId is searched, and the searched instruction and the Action and Notification corresponding to the instruction are deleted (steps S9101 to 9104).
[0164]
FIG. 92 is a flowchart showing the GetInstructionDetails processing procedure. The prototype is Void GetInstructionDetails (dwUserId).
[0165]
The instruction of the specified UserId is searched, and the searched instruction and the details of Action and Notificatioin corresponding to the instruction are returned as a list (steps S9201 to 9208).
[0166]
FIG. 93 is a flowchart showing the Check processing procedure. The prototype is Bool Check (nJobChk, JobNameConnector, nDeviceChk, DeviceConnector, nPersonChk, PerconConnector, nTimeChk, TimeConnector, nStatusChk, nStatusCode).
[0167]
This function is called in GetInstrucsionIds (). It is checked whether the instruction is executable and valid. If valid, TRUE is returned, otherwise FALSE is returned (steps S9301 to 9303).
[0168]
FIG. 94 is a flowchart showing the GetJobData processing. The prototype is Void GetJobData (dwJobId, poJobMessage).
[0169]
A job with the specified JobId is searched, and the details of the job are set in JobMessage (steps S9401 to 9403).
[0170]
FIG. 95 is a flowchart showing the GetJobAttributes processing. The prototype is Void GetJobAttributes (dwJobId, poJobMessage).
[0171]
Search Job of specified JobId and set Job details in JobMessage. Further, the details of the Sender and Receiver of the Job and the details of the related Action are searched, and the details are set in JobMessage (Steps S9501 to 9505).
[0172]
FIG. 96 is a flowchart showing the GetActionAttributes processing procedure. The prototype is Void GetActionAttributes (dwActionId, poActionMessage).
[0173]
Search for the Action with the specified ActionId and set the Action details in ActionMessage. Also, the user name and address of the Sender and Receiver of the Job are set in the ActionMessage of the Sender and Receiver (Steps S9601 to 9605).
[0174]
FIG. 97 is a flowchart showing the DeleteJob processing. The prototype is Void DeleteJob (dwUsrLd, dwJobId).
[0175]
In step S9701, the Action of the specified UserId having the specified JobId is searched. If there is an action, the type of ActionStatus is checked in step S9703. If ActionStatus is Not Done, in Step S9704, ActionStatus is changed to ActionCancel, and the execution time is set to the current time.
[0176]
If the ActionStatus is already Done or Cancel, in Step S9705, the Action and all related notifications are deleted. In step S9706, it is checked whether there is an action of UserId other than the specified UserId having the specified JobId. If not, in Step S9707, all the actions of the specified UserId having the specified JobId are already Done or It is checked whether or not it is Canceled. If there is no other user's Action and all the actions are already Done or Canceled, in step S9708, the record of this Job is deleted from the Job table.
[0177]
FIG. 98 is a flowchart showing the GetNotificationList processing. The prototype is Void GetNotificationList (nGeneratedFrom, dwId).
[0178]
All notifications that are generated from the specified generation location (either Action / Instruction) and have the specified Id are searched, the details are added to the list, and the list is returned (steps S9801 to 9804).
[0179]
FIG. 99 is a flowchart showing the SetNotificationCondition processing. The prototype is Void SetNotificationCondition (nGenetaredFrom, dwId, nResult).
[0180]
Searches for Notification with the specified Id that is generated from the specified location (nGenerateFrom), and if created with the specified value (nResult), IfToToify is set to TRUE, and if not created with the specified value, FALSE (Steps S9901 to 9905).
[0181]
FIG. 100 is a flowchart illustrating the processing procedure of SetNotificationCondition. The prototype is Void SetNotificationCondition (nGenetaredFrom, dwId, bCanNotifyFlag, nDummy).
[0182]
The notification having the specified NotificationId generated from the specified location is searched, and CanNotifyFlag is set to the specified value (bCanNotifyFlag) (steps S10001 to 10003).
[0183]
FIG. 101 is a flowchart showing the SetNotificationStatus processing. The prototype is Void SetNotificationStatus (dwNotificationId, bNotificationStatus).
[0184]
Search for Notification having the specified NotificationId, and set Notification Status to the specified value. (Steps S10101 to 10103).
[0185]
FIG. 102 is a flowchart showing the ClearHistory processing procedure. The prototype is Void ClearHistory ().
[0186]
First, in step S10201, Action Status is checked to search for Done, Canceled, Ignored, and Deleted Actions. For each of the obtained Actions, if the Action Status is Done Job, the execution time is checked in Step S10204. Otherwise, in Step S10205, the WhenTodo time is checked. In step S10206, these times are compared with the history (Hostory) retention time limit. Such restrictions on jobs are set by the administrator. FIG. 133 shows an example of a setting screen for this purpose. Here, it is set to 1 month. As a result of the comparison, if the retention time limit has elapsed from the execution time or the scheduled execution time, Action and Job are deleted in step S10207.
[0187]
FIG. 103 is a flowchart showing the DeleteAllPublicInfoJobs processing procedure. The prototype is Void DeleteAllPublicInfoJobs ().
[0188]
All PublicInfo Jobs are searched and ActionStatus is set to ActionCancel (steps S10304 to 10304).
[0189]
FIG. 104 is a flowchart showing the PrintPublicInfo processing procedure. The prototype is Void PrintPublicInfo (dwActionId).
[0190]
Search for the Action with the specified ActionId and check if there is a PublicInfoJob. Add a new Action if it exists. This Action is set to PublicInfo, Action is Print, WhenTodo is the current time, and ActionStatus is Todo (Steps S10401 to 10407).
[0191]
FIG. 105 is a flowchart showing the SearchData processing procedure. The prototype is Void SearchData (dwUserId, poSearchData).
[0192]
Get all Job list of specified user and compare the details with the details in Search Data object. If the details match, add a node to the new list and finally return the new list (steps S10501 to 10507).
[0193]
FIG. 48 is a flowchart showing a processing procedure for a client request of the desktop server component.
[0194]
In step S4801, the server component acquires a client request and performs corresponding processing. When the request is login, first, a login verb and a remote device list are acquired, and a user password is acquired (steps S4803 to 4804). After that, an HTML page corresponding to the user is created, the user password is saved, and sent to the client component to finish the processing (steps S4805 to 4806, 4814).
[0195]
In the case of a Print a File request, the user password and the file name to be printed are acquired. Calls an external application and prints the file with the specified file name to the print file used by this application. Convert this output print file into a message object, and send the Job to the first device of the remote device. Finally, a corresponding HTML page is created and transmitted to the client component to finish the processing (steps S4807 to 4813, 4814). If the client request is “Read a Mail” or “Print a Mail”, it will be described later with reference to FIG. When the client request is “View Schedule” or “Print Schedule”, it will be described later with reference to FIG. When the request of the client is “Goto Other Device”, it will be described later with reference to FIG. The case where the client request is “logout” and “help” will be described later with reference to FIG.
[0196]
FIG. 49 is a flowchart showing a processing procedure for a request related to mail. This is a procedure when the client request is “Read a Mail” or “Print a Mail”.
[0197]
If the request is Read a Mail, first get the mail server user password and open a mail session. After reading the designated mail, the session is closed (steps S4902 to 4905).
[0198]
In the case of a Print a Mail request, the same processing as the Read a Mail request is performed, the mail is written to a file, a Job message is created, and then the Job is sent to the first device in the remote device list (step S4906). ~ 4912).
[0199]
In either case, an HTML page corresponding to the end is created, and the created page is transmitted to the client component, and the process ends (steps S4913 to 4914).
[0200]
FIG. 50 is a flowchart illustrating a processing procedure for a request related to a schedule. This represents the processing procedure of the desk server when the client request is “View Schedule” or “Print Schedule”.
[0201]
If the request is View Schedule, it is checked whether the schedule type is Daily or Monthly, and schedule data is acquired (steps S5002 to 5003). If the request is Print Schedule, perform the same process as above, write the data to a print file, create a Job message, and send the Job to the first device in the remote device list (steps S5004 to 5009) .
[0202]
In either case, a corresponding HTML page is created, the page is transmitted to the client component, and the process is terminated (steps S5010 to 5011).
[0203]
FIG. 51 is a flowchart showing a request processing procedure regarding another device. This represents a processing procedure of the desk server when the client request is “Goto Other Device”.
[0204]
If the request is Goto Other Device, get the device name and device address. Thereafter, the device is added to the remote device list, and a login verb is created (steps S5102 to 5104). Log in to the device with the Login verb, create the corresponding HTML page, and finally send the page to the client component. This process is the same as that described with reference to FIG.
[0205]
FIG. 52 is a flowchart showing a request processing procedure regarding logout and help. This represents the processing procedure of the desk server when the client request is “logout” or “help”.
[0206]
If it is a logout request, it is checked in step S5202 if the remote device list is empty. If it is empty, an opening screen page is created in accordance with the status in step S5205. If it is not empty, until the list becomes empty, the next device is logged in with login verb = Disconnect in step S5203, and the device is repeatedly deleted from the remote device list in step S5204. In other words, all devices in the remote device list are logged out. If the list becomes empty, an OpeningScreen page is created in step S5205.
[0207]
In the case of a Help request, a help context parameter is acquired and a corresponding help screen HTML page is created (steps S5206 to 5207).
[0208]
In either case, the created HTML page is sent to the client component to finish the process.
[0209]
FIG. 53 is a flowchart showing a processing procedure from the initial menu screen. FIG. 106 shows a screen example of the initial menu. If there are jobs in the print queue, they are displayed in a list on the status screen. As job information, a job name and a sender are displayed.
[0210]
In the initial menu, in step S5301, the user selects an item desired by the user. In step S5302, a selection item is determined, and a new screen is displayed according to the item.
[0211]
First, when the “new interaction” item is selected, in step S5303, the process proceeds to a new process (login process) described later with reference to FIG. 55, and the screen changes to the “login” screen (FIG. 112).
[0212]
When the “Print URL” item is selected, the screen changes to the “URL printing” screen (FIG. 107). In step S5311, if “Go” is selected by directly entering or referring to the URL, information is acquired and previewed in step S5312. In step S5313, the confirmed content is printed. Then return to the “Initial Menu” screen.
[0213]
If the “Public Info (public information)” item is selected, in step S5314, the process proceeds to the public information processing described later with reference to FIG. 54, and the screen changes to the “public information processing” screen (FIG. 110).
[0214]
When the “Goto Device (other device)” item is selected, a setting screen (FIG. 81) for accessing another device is displayed in step S5315. Thereafter, the processing in the case of “Device” for processing to access another device described with reference to FIG. 51 is performed.
[0215]
In this initial screen, a job in the print queue can be selected. To select a job, touch the button displayed in front of the desired job name. When “specific job” is selected in this way, a password input screen (FIG. 108) is displayed in step S5304. Here, when a password is input and matches the password assigned to the selected job, a processing setting screen (FIG. 109) for the job selected in the print queue is displayed.
[0216]
Subsequently, an action is selected for the job in step S5305. In step S5306, a time related to the action is set. When “Print later” is selected as the action, the printing time can be set. Here, the print time can be set by a specific date and time (absolute date and time), and can also be set by a relative date and time based on the elapsed time from the set time, such as “After 1 Hour”. For this setting, select items such as “1 hour later”, “2 hours later”, “6 hours later”, “Tomorrow”, “Tomorrow day”, “1 week later”, “2 weeks later”. Prepare it so that you can select from it. When setting an absolute date and time, the current date defaults to the current date, and when another date is selected, a calendar is popped up and the relevant date is touched and input. If necessary, the time is changed from the current time.
[0217]
When “Hold Here” is selected, a hold period is set. In this case, as in the case of printing later, the hold deadline can be specified by an absolute date and time, and a setting such as a hold period, for example, 1 hour (For 1 Hour) can be selected from the menu. In addition, when specifying the above absolute date and relative date and time, the touch keyboard may be displayed and a numerical value may be directly input, or the display value is counted up or down according to the number of times of a specific button. You may do it.
[0218]
Action is set and executed in accordance with the action and date / time item selected and set as described above. First, when “print later” is selected, in step S5308, the print job is deleted from the queue, registered in the list of pending jobs together with the print time, and the screen returns to the “initial menu” screen. Thereafter, printing is performed at the set time.
[0219]
If “hold” is selected, the print job is deleted from the queue in step S5309, the hold is set as an action together with the hold deadline, registered in the list of hold jobs, and the screen returns to the “initial menu” screen. After that, the job is held for the hold period, and canceled if nothing is done by the deadline.
[0220]
If “Pause / Restart Printing” is selected, printing is paused in step S5310, the screen returns to the “Initial Menu” screen, and “Restart (Pause / Restart Printing)” is selected later. Wait until the same button is pressed again. When “Cancel Printing” is selected, the print job is deleted from the queue, “Cancel” is recorded as an action of this job in the history, and the screen returns to the “Initial Menu” screen.
[0221]
FIG. 54 is a flowchart showing a public information processing procedure. The screen transition and the flow of processing when the “public information processing” item is selected in the initial menu are shown. First, in step S5401, a list of public information on the printer is displayed. FIG. 110 is a diagram showing an example in which a public information processing setting screen is displayed together with such a list of public information. What is displayed in this list is information having an attribute of public information (job having a public action) and can be printed without a password.
[0222]
If a specific job is selected from the list in step S5402, the process advances to step S5405 to perform processing for the selected job. If “From Other Device” is selected, the process advances to step S5415 to process the public information in the other device.
[0223]
In step S5405, a process for the selected job is selected. If “print” is selected, in step S5407, a print location, which will be described in detail later, is set for the normal job print processing, and if necessary, the print time is set, and the public information selected in step S5408 is printed. Execute. If “Preview” is selected, a preview is executed in step S5409, and the next process is selected in step S5410.
[0224]
When “Add (Make Job As Public Info. On Other Device)” is selected in step S5406 or S5410, a device for publishing is specified in order to publish the selected information on another device. Set to add the selected public information to the public list of the device. FIG. 111 is a diagram showing an example of a setting screen for publishing information on another device.
[0225]
In step S5412, a device address and a device name are set as addition destinations, and further, until when the information is disclosed, that is, a publication time limit is set. Also in this case, as described above, the publication deadline may be set as an absolute date or the publication period from the current time may be set. Also, if you do not want to publish immediately, you may set the date and time to start publishing. Also in this case, a relative setting such as “after one week” is possible. In order to limit the publication period, when displaying a list of public information, the set period may be checked and those outside the period may be excluded. Also, the list may be checked periodically, and items that have expired may be deleted from the list.
[0226]
On the other hand, in step S5415, in order to access another device, as described above, the setting screen (FIG. 81) for accessing the other device is displayed, and the device address and name are designated and accessed. . In step S5416, a public information list is acquired from the accessed device and displayed. Thereafter, processing is executed in the same manner as the device in the own device.
[0227]
FIG. 55 is a flowchart showing a login processing procedure. This is a process when a new process is selected in the initial menu. First, in step S5501, the “login” screen (FIG. 112) is displayed, the entered user identifier is checked, and if login is permitted, in step S5502, a job valid for the currently logged in user (processing is performed). Check if there are any pending jobs that have not been executed. If there is a job, in step S5504, a list of the jobs (FIG. 113) is displayed, and the process proceeds to processing for selecting a job to be described later with reference to FIG. 56 and performing an action. If there is no job, the main menu (FIG. 121) is displayed in step S5503, and the process proceeds from the main menu described later with reference to FIG.
[0228]
FIG. 56 is a flowchart showing a processing procedure for selecting a job and performing an action. This is the process when there is a valid Job for the user when the user logs in. In step S5601, a list of jobs held by the user is displayed. FIG. 113 is a diagram illustrating an example of a list of held jobs.
[0229]
Here, the held job includes a job scheduled to be printed at the set date and time, a job scheduled to be sent at the set date and time, and simply holds up to the set date and time (the time is There is a job that is canceled if nothing happens before it comes. The list displays the job name, sender or receiver, action type (print, send, hold), scheduled execution date and time of the action, and the like. These jobs are displayed in a display mode in which the type can be identified, such as changing the color or adding a different mark according to the type of action. In addition, jobs that have already been executed or jobs that have been canceled are recorded as a history by changing the status to “Executed” or “Cancel”, and these are also executed as necessary. Can be displayed in a list with the previous job. In this case, the display mode is changed depending on the status.
[0230]
Next, a target job is selected in step S5602, and a process (action) for the selected job is selected in step S5603. If the main menu is selected in step S5603, the process advances to step S5605 to perform processing from the main menu described later with reference to FIG. If search is selected, the process proceeds to step S5606, and a search process described later with reference to FIG. 65 is performed. If printing is selected, the process advances to step S5607 to perform print processing for the selected job, which will be described later with reference to FIG. If transmission is selected, the process advances to step S5610 to perform transmission processing of the selected job described later with reference to FIG. If preview is selected, the process advances to step S5608 to perform preview processing for the selected job, which will be described later with reference to FIG. If deletion is selected, the process advances to step S5609 to perform a deletion process for the selected job, which will be described later with reference to FIG. If a schedule is selected, the process advances to step S5611 to perform a schedule change process for the selected job, which will be described later with reference to FIG. If logout is selected, the process advances to step S5612 to perform the logout process described with reference to FIG.
[0231]
FIG. 57 is a flowchart showing the preview processing procedure of the selected job. This shows the flow of processing when previewing a job selected from the list of valid jobs. In step S5701, a preview of the selected job is executed. FIG. 114 is a diagram illustrating a screen display example of a job preview. In step S5702, processing for the selected job is selected.
[0232]
If printing is selected in step S5702, the process proceeds to step S5704, and print processing of the selected job described later with reference to FIG. 60 is performed. If transmission is selected, the process advances to step S5706 to perform transmission processing of the selected job, which will be described later with reference to FIG. If deletion is selected, the process proceeds to step S5705, and the selected job deletion process described later with reference to FIG. 58 is performed. If a schedule is selected, the process advances to step S5707 to perform a schedule change process for the selected job, which will be described later with reference to FIG. If cancel is selected, the process advances to step S5708 to return to the job list display described with reference to FIG.
[0233]
FIG. 58 is a flowchart showing the deletion processing procedure of the selected job. The flow of processing when deleting a job selected from the list of valid jobs is shown. First, in step S58001, the job is previewed together with the identification information of the job to be deleted, and the user is prompted to confirm the deletion. FIG. 115 is a diagram showing a deletion confirmation screen. If deletion is selected, job deletion is executed in step S5802. At this time, the processing described with reference to FIG. 97 is executed. In this case, since the selected job is selected from the list of held jobs, the action status is not executed, and the deleted job is recorded in the user history with a status of cancellation. Subsequently, the process proceeds to step S5803 to return to the job list display described with reference to FIG.
[0234]
FIG. 59 is a flowchart showing the procedure for changing the schedule of the selected job. The flow of processing when changing the schedule for a job selected from the list of valid jobs is shown. In step S5901, the current schedule to be changed is displayed. FIG. 116 is a diagram showing a setting screen for changing the schedule. In step S5902, the schedule is changed. Subsequently, the process proceeds to step S5903 to return to the job list display described with reference to FIG.
[0235]
FIG. 60 is a flowchart showing the print processing procedure of the selected job. It shows the flow of processing when printing for a job selected from the list of valid jobs. In step S6001, the original action type of the selected job is determined. If the original action is printing, print setting change processing described later with reference to FIG. 61 is executed. If the original action is not printing, a print setting menu is displayed in step S6002. FIG. 117 is a diagram showing an example of a print setting menu. Setting items include where to print (whether this device or another device), in the case of another device, the device name and address, and when to print.
[0236]
When printing with another apparatus, transmission is recorded as the type of action in the job history. Further, when printing with another apparatus, transmission processing may be transmitted by a send method described later, or may be transmitted by a transfer method.
[0237]
In step S6003, a process is selected. If printing is selected, the setting contents of the user are set in the apparatus in step S6005. If printing is to be performed immediately, printing is executed. Subsequently, the process proceeds to step S6006, and the display returns to the job list described with reference to FIG. If the preview is selected, the preview is executed in step S6007. After that, if printing is necessary, the process proceeds to step S6005. If notification is selected, the notification is set in step S6009, and the print setting menu is displayed again. FIG. 118 is a diagram showing an example of a notification setting screen. Notification setting items include the name of the person to be notified, notification medium (voice message, pop-up window, e-mail, telephone, fax, pager), notification destination (address, telephone number, etc.), notification opportunity (success, (When failure occurs, when accessing), and the time from notification trigger until actual notification. In addition, on this screen, it is possible to display a list of notifications including setting contents for each notification.
[0238]
FIG. 61 is a flowchart showing the procedure for changing the print setting of the selected job. The state transition and processing flow in the case where the selected job for the job is the original action type is shown.
[0239]
In step S6101, a print setting change menu is displayed. FIG. 119 is a diagram illustrating an example of a print setting change menu. In step S6102, processing for the job is selected. If “print now Also” is selected, in step S6104, a job having the print time of the selected job as the current time is added in addition to the selected job. When “Print Now” is selected, the printing time of the selected job is changed to the current time. Therefore, in these cases, printing is performed at the present time. If “Schedule” is selected, the schedule change menu shown in FIG. 116 is displayed in step S6106. In step S6107, the print schedule is changed using the menu. In either case, the process advances to step S6108 to return to the job list display described with reference to FIG.
[0240]
FIG. 62 is a flowchart showing the selected job transmission processing procedure. It shows the state transition and processing flow when sending to a job selected from a valid job list. In step S6201, the original action type of the selected job is determined. If the original action is transmission, transmission setting change processing described later with reference to FIG. 63 is executed. If the original action is not printing, a transmission setting menu is displayed in step S6202. FIG. 70 is a diagram showing an example of a transmission setting menu.
[0241]
In step S6203, settings are made and processing is selected. Set the destination and transmission time. These settings are the same as in the case of printing. If “Send” is selected as the process, the selected job is copied and transmitted in step S6205. In this case, the selected job remains in the job list. On the other hand, if “Transfer” is selected as the process, the selected job is transmitted in step S6206, and the selected job is deleted from the job list. In either case of transmission or transfer, the process proceeds to step S6209 to return to the Job list display described with reference to FIG. If notification is selected, a notification setting screen is displayed and settings are made in step S6207. After setting, return to the transmission setting menu display to select transmission or transfer.
[0242]
FIG. 63 is a flowchart showing the procedure for changing the transmission setting of the selected job. This shows the state transition and processing flow when the original action type of the selected job is transmission.
[0243]
In step S6301, a transmission setting change menu is displayed. FIG. 71 is a diagram showing an example of a transmission setting change menu. In step S6302, processing for the job is selected. If “Send Now Also” is selected, in step S6304, a job having the transmission time of the selected job as the current time is added separately from the selected job. When “Send Now” is selected, the transmission time of the selected job is changed to the current time. Therefore, in these cases, transmission is performed at the present time. If “Schedule” is selected, the schedule change menu shown in FIG. 116 is displayed in step S6106. In step S6307, the transmission schedule is changed using the menu. In either case, the process advances to step S6308 to return to the job list display described with reference to FIG. If “Modify” is selected, a correction menu is displayed in step S6309.
[0244]
FIG. 120 is a diagram showing an example of the correction menu. At this time, a list of transmission destinations is displayed. In step S6310, addition / setting of a new transmission destination, correction (deletion, change) of the transmission destination selected from the list, change of processing to be executed at the transmission destination, change of password, change of transmission time, and the like are performed. If notification is to be set, the notification setting menu is displayed and set in step S6312, and the screen returns to the correction menu. If notification is not set, return to the transmission setting change menu.
[0245]
FIG. 64 is a flowchart showing a processing procedure from the main menu. This shows the screen transition and processing flow in the main menu. In step S6401, the main menu is displayed. FIG. 121 is a diagram showing an example of the main menu. In step S6402, a process (action) is selected.
[0246]
If logout is selected in step S6402, the process advances to step S6404 to perform the logout process described with reference to FIG. If help is selected, the process advances to step S6405 to perform the help process described with reference to FIG. If search is selected, the process advances to step S6406 to perform a search process described later with reference to FIG. If printing is selected, the process advances to step S5607 to perform print processing described later with reference to FIG. If transmission is selected, the process proceeds to step S6408, and a transmission process described later with reference to FIG. 69 is performed. If deletion is selected, the process proceeds to step S6409, and a deletion process described later with reference to FIG. 75 is performed. If instruction setting is selected, the process advances to step S6410 to execute instruction setting processing described later with reference to FIG. If a schedule is selected, the process advances to step S6411 to perform a schedule change process described later with reference to FIG. If addition of public information is selected, the process proceeds to step S6412, and public information addition processing described later with reference to FIG. 66 is performed. If another device is selected, the process proceeds to step S6413, and an access process to another device described later with reference to FIG. 80 is performed. If a desktop is selected, the process proceeds to step S6414, and a desktop access process described later with reference to FIG. 80 is performed.
[0247]
FIG. 65 is a flowchart showing the search processing procedure. This shows the flow of processing when “Search” is selected from the main menu.
[0248]
In step S6501, search conditions for searching for a job are set. Search conditions can be used by the job set time, execution time, execution state, sender, etc. The search includes jobs in the history that have been executed in addition to the pending jobs. In particular, the history can be displayed by searching on the condition that the execution state has been executed (and canceled if necessary). In step S6502, a search is executed to display a list of search results. In step S6503, a job is selected from the search result, and in step S6504, processing for the selected job is selected.
[0249]
If printing is selected in step S6504, the process advances to step S6506 to perform printing processing for the selected job described with reference to FIG. If transmission is selected, the process advances to step S6509 to perform the selected job transmission process described with reference to FIG. If preview is selected, the process advances to step S6507 to perform the selected job preview process described with reference to FIG. If deletion is selected, the process advances to step S6508 to perform the deletion process for the selected job described with reference to FIG. If a schedule is selected, the process advances to step S6510 to execute the schedule change process for the selected job described with reference to FIG. If the main menu is selected, the process advances to step S6511 to perform processing from the main menu described with reference to FIG.
[0250]
FIG. 66 is a flowchart showing a procedure for adding public information. This shows the flow of processing when “Add to Public Information” is selected. In step S6601, a job to be public information is selected from the job list. In step S6602, a menu for adding to public information (FIG. 111) is displayed, and an addition destination and a publication time limit are set. The details are the same as those described in the public information processing. However, here, the objects to be disclosed are jobs in the user's job list. After setting, if an addition is instructed in step S6603, the selected job is added to the set public information list in step S6605. If cancel is selected after the process is completed, the display returns to the main menu.
[0251]
FIG. 67 is a flowchart showing a printing processing procedure. This shows the flow of processing when “Print” is selected from the main menu.
[0252]
In step S6701, the location where the job to be printed is located is selected. FIG. 122 is a diagram showing an example of a menu screen for selecting a place where a job to be printed is located. If the current device is selected, a list of print jobs for the current device is displayed in step S6703. FIG. 123 is a diagram illustrating an example of a menu for selecting a job to be printed. In step S6704, a job to be printed is selected. In step S6705, the selected job is set for printing. This is the same as described with reference to FIG.
[0253]
If another device or desktop is selected as the job location, the device address is designated in step S6706, and the login screen is downloaded from the device at that address in step S6707. In step S6708, login is executed according to this screen. If the login is successful, the login verb is printing. As described with reference to FIG. 51, in step S6710, the menu screen for selecting the job to be printed shown in FIG. 122 is downloaded. select. When printing with the current printer, the process advances to step S6711 to perform remote print processing by the printer described with reference to FIG. When printing on the desktop, the process advances to step S6712 to perform remote print processing on the desktop. If printing is to be performed by another device, the process advances to step S6713 to perform remote printing processing by another device.
[0254]
FIG. 68 is a flowchart showing a remote print processing procedure by the printer. This shows the flow of processing after login when printing on another device is designated from the main menu and the device is the same type of printer. The processing procedure is the same as that for printing a job on the current device. However, menus and lists are downloaded from the access destination device.
[0255]
FIG. 69 is a flowchart showing a transmission processing procedure. This shows the flow of screen transition and processing when “Send” is selected from the main menu.
[0256]
In step S6901, the device, the other device, or the desktop is selected as the location where the transmission target job is located. FIG. 124 is a diagram showing an example of a menu screen for selecting a place where a job to be transmitted exists. If this device is selected, a list of jobs on the device is displayed in step S6902. FIG. 125 is a diagram showing an example of a menu for selecting a job to be transmitted. In step S6903, a job to be transmitted is selected. Thereafter, the selected job transmission process described with reference to FIG. 62 is performed.
[0257]
When another device or desktop is selected as the location of the transmission target job, the device address is designated in step S6904, and the login screen is downloaded from the device at that address in step S6905. In step S6906, login is executed according to this screen. If the login is successful, the login verb is transmission. As described with reference to FIG. 51, in step S6908, the menu screen for selecting the transmission target job in FIG. 124 is downloaded. select. In the case of transmission from the printer, the process proceeds to step S6909, and remote send processing by the printer described with reference to FIG. 72 is performed. In the case of transmission from the desktop, the process proceeds to step S6910, and remote send processing by the desktop is performed. When transmitting from another device, the process proceeds to step S6911 to perform remote send processing from another device.
[0258]
FIG. 72 is a flowchart showing a remote send processing procedure by the printer. The flow of processing after login when a transmission from another device is designated from the main menu and the device is the same kind of printer is shown.
[0259]
If a job exists on the device, a list of transmission jobs is displayed in step S7202. In step S7203, a job to be transmitted is selected from the job list. In step S7204, a process is selected. Here, when the transmission process is selected, the transmission process of the selected job is performed. The procedure of this processing is the same as the transmission of the selected job on the current device described with reference to FIG. However, menus and lists are downloaded from the access destination device.
[0260]
If search is selected in step S7204, a new transmission target job is searched in step S7206. If logout is selected, the process advances to step S7207 to perform the logout process described with reference to FIG. If the main menu is selected, the display returns to the main menu display in step S7208.
[0261]
FIG. 75 is a flowchart showing the deletion processing procedure. This shows the flow of processing when delete is selected from the main menu.
[0262]
In step S7501, the device where the job to be deleted is located is selected from this device, another device, or the desktop. FIG. 73 is a diagram showing an example of a menu for selecting a device having a job to be deleted. If this device is selected, a list of jobs on the device is displayed in step S7502. FIG. 74 is a diagram showing an example of a list of deleted jobs. In step S7503, a job to be transmitted is selected. Thereafter, the deletion process of the selected job described with reference to FIG. 58 is performed.
[0263]
If another device or desktop is selected as the location of the job to be deleted, the device address is specified in step S7505, and the login screen is downloaded from the device at that address in step S7506. In step S7507, login is executed according to this screen. If the login is successful, the login verb is deleted. As described with reference to FIG. 51, in step S7509, the menu screen for selecting the job to be deleted shown in FIG. 74 is downloaded. Here, the job is selected. To do. When deleting from the printer, the process advances to step S7510 to perform remote delete processing by the printer described with reference to FIG. When deleting from a desktop, it progresses to step S7511 and performs the remote delete process by a desktop. When deleting from other devices, the process advances to step S7512 to perform remote delete processing from other devices.
[0264]
FIG. 76 is a flowchart showing a remote delete processing procedure by the printer. The flow of processing after login when a transmission from another device is designated from the main menu and the device is the same kind of printer is shown.
[0265]
If a job exists on the device, a job list is displayed in step S7601. In step S7602, a job to be deleted is selected from the job list. In step S7603, a process is selected. If the deletion process is selected, the deletion confirmation menu of FIG. 115 is displayed in step S7605, and the deletion process of the selected job is performed in step S7606. The procedure of this processing is the same as the deletion of the selected job on the current device described with reference to FIG. However, menus and lists are downloaded from the access destination device.
[0266]
If retrieval is selected in step S7604, a deletion target job is newly retrieved in step S7607. If logout is selected, the process advances to step S7608 to perform the logout process described with reference to FIG. If the main menu is selected, the display returns to the main menu display in step S7609.
[0267]
FIG. 77 is a flowchart of the instruction setting process procedure. This shows the flow of screen transition and processing when command setting is selected from the main menu. In step S7701, an instruction setting screen is displayed. FIG. 126 is a diagram showing an example of an instruction setting screen. Here, instruction execution conditions are set. Conditions include job name, device name, user name, status that triggers execution of command (when receiving job, sending, printing, status change, etc.), expiration date or duration of command (including indefinite period) ), A printer status is provided, and it is possible to set whether these are AND or OR. The current setting content is displayed as “On receiving jobs from others” shown in FIG.
[0268]
In step S7702, a process is selected. Here, if “action setting (Take Action)” is selected, the process advances to step S7704 to set an action to be performed when the set condition is satisfied. Here, printing and holding of a job can be set. Further, transmission (transfer), cancellation, etc. of the job may be set. If notification is selected, notification is set in step S7705. When the command setting is selected, the command set on the screen becomes valid. When the command deletion is selected, the command to be set on the screen is deleted. Thereafter, the process returns to the main menu in step S7707. The instruction that has passed the expiration date remains in the history as in the case of the executed job, and is deleted when a certain period passes after the expiration in the history management.
[0269]
FIG. 78 is a flowchart showing a schedule change processing procedure. This shows the flow of processing when changing the schedule is selected from the main menu.
[0270]
In step S7801, a schedule change screen is displayed, and this device, another device, or desktop is selected as the location where the job to be changed exists. FIG. 127 is a diagram showing an example of a menu for selecting a device in which a Job to be changed exists. If the current device is selected, a list of jobs on the device is displayed in step S7803. FIG. 128 is a diagram showing an example of a schedule change target Job selection screen. In step S7804, a job to be changed is selected. In step S7805, the selected job schedule described with reference to FIG. 59 is changed.
[0271]
If another device or desktop is selected as the location of the job to be changed, the device address is designated in step S7806, and the login screen is downloaded from the device at that address in step S7807. In step S7808, login is executed according to this screen. If the login is successful, the login verb is a schedule change. As described with reference to FIG. 51, the menu screen for selecting the job to be changed in FIG. 128 is downloaded in step S7810. Select a job. If the printer schedule is to be changed, the process advances to step S7811 to perform remote reschedule processing by the printer described with reference to FIG. If the desktop schedule is to be changed, the process advances to step S7812 to perform remote reschedule processing by the desktop.
[0272]
FIG. 79 is a flowchart showing the remote reschedule processing procedure. This shows the flow of processing when changing the job schedule of another device (same printer type) from the main menu.
[0273]
If there is a job on the device, a list of all jobs is displayed in step S7902. In step S7903, a process is selected. If a job is selected and a schedule change process is selected, the schedule change menu for the selected job in FIG. 116 is displayed in step S7905, and the schedule change process for the selected job is performed. The procedure of this process is the same as the change of the schedule of the selected job on the current device described with reference to FIG. However, menus and lists are downloaded from the access destination device.
[0274]
If search is selected in step S7904, a new job whose schedule is to be changed is searched for in step S7906. If logout is selected, the process advances to step S7907 to perform the logout process described with reference to FIG. If the main menu is selected, the display returns to the main menu display in step S7908.
[0275]
FIG. 80 is a flowchart showing an access processing procedure to another device. This shows the flow of processing when access to another device or access to the desktop is selected from the main menu. In step S8001, a device address is designated, and in step S8002, a login screen is downloaded from the device at that address. In step S8003, login is executed according to this screen. If the login is successful, the login verb is a device. Therefore, as described with reference to FIG. 51, in step S8005, the initial menu screen of FIG. 106 is downloaded, and the operation target device is determined. If the operation target is a printer, the process proceeds to step S8006, and other printers are processed in the same manner as the self-printer. If the operation target is a desktop, the process proceeds to step S8007, and desktop processing described later with reference to FIG. 82 is performed. If the operation target is another device, the process advances to step S8008 to process the other device.
[0276]
FIG. 82 is a flowchart showing a desktop processing procedure. It shows the screen transition of the initial screen and the flow of processing when you select your desk from Goto My Desktop from the main menu. First, in step S8201, the main menu is displayed. FIG. 129 is a diagram illustrating an example of a desktop main menu. In step S8202, a process (action) is selected.
[0277]
If file printing is selected in step S8202, the process advances to step S8204 to perform file printing processing described later with reference to FIG. If unread mail acquisition is selected, the process advances to step S8205 to perform unread mail acquisition processing described later with reference to FIG. If read mail acquisition is selected, the process advances to step S8206 to perform read mail acquisition processing described later with reference to FIG. If schedule printing is selected, the process advances to step S8207 to perform schedule printing processing. If schedule reference is selected, the process advances to step S8208 to perform schedule reference processing. If address book reference is selected, the process advances to step S8209 to perform address book reference processing. If logout is selected, the process advances to step S8210 to perform the logout process described with reference to FIG.
[0278]
FIG. 83 is a flowchart showing an unread mail processing procedure. This shows the flow of processing when an attempt is made to read unread mail by accessing his / her desk. In step S8300, an unread mail list is displayed. FIG. 85 is a diagram showing an example of an unread mail list. In step S8301, a mail to be processed is selected. In step S8302, processing for the selected mail is selected.
[0279]
If the main menu is selected in step S8302, the process returns to the desktop main menu in step S8304. If “Open” is selected, the selected mail is opened and the content is displayed in step S8305. FIG. 86 is a diagram showing a display example of the contents of mail. If the previous display or the subsequent display is selected in step S8306, the process returns to step S8305 to display the contents of the corresponding mail. When printing or deletion is selected, deletion of mail in step S8308 and printing of mail in step S8309 are executed. Even when printing or deletion is selected in step S8302, the deletion of mail in step S8308 and the printing of mail in step S8309 are executed. If print all is selected, all mails are printed in step S8310. When “read mail (Old)” is selected, read mail processing described later with reference to FIG. 84 is performed.
[0280]
Mail printing accesses your desk, retrieves mail, and prints it. As for printing, the printing destination and the like can be designated in the same manner as the above-described job printing. All mail printing accesses your desk and retrieves and prints all mail. To delete mail, access your desk and delete the mail. At that time, the deletion confirmation may be performed in the same manner as the job deletion.
[0281]
FIG. 84 is a flowchart showing a read mail processing procedure. This shows the flow of processing when an attempt is made to read a read mail by accessing his / her desk. In step S8401, an unread mail list is displayed. FIG. 87 is a diagram showing an example of a read mail list. In step S8402, a mail to be processed is selected. In step S8403, processing for the selected mail is selected.
[0282]
If the main menu is selected in step S8404, the process returns to the desktop main menu in step S8405. If “Open” is selected, the selected mail is opened and displayed in step S8406. FIG. 86 is a diagram showing a display example of the contents of mail. If the previous display or the subsequent display is selected in step S8407, the process returns to step S8406 to display the contents of the corresponding mail. When printing or deletion is selected, deletion of mail in step S8409 and printing of mail in step S8410 are executed. Even when printing or deletion is selected in step S8302, the mail deletion in step S8409 and the mail printing in step S8410 are executed. If “unread mail (Unread)” is selected, the unread mail processing described with reference to FIG. 83 is performed.
[0283]
FIG. 88 is a flowchart showing a processing procedure for file processing. This shows the flow of processing when an attempt is made to operate a file on the desktop by accessing his / her desk. In step S8801, settings for file acquisition are performed. FIG. 130 is a diagram showing an example of a setting screen for file acquisition. Here you can set the file name. In step S8802, a process to be executed for acquisition is selected.
[0284]
If search is selected in step S8802, search conditions are set in step S8803, desktop file search is executed in step S8804, and a list of files corresponding to the set conditions is displayed in step S8805. If a file list (Show All) is selected in step S8802, a list of desktop files is displayed. FIG. 131 is a diagram showing an example of desktop file list display. In step S8807, a file is selected from the search result or list display. If it is selected in this way, or if acquisition is instructed by inputting a file name in step S8802, the file is acquired from the desktop in step S8808. In step S8809, processing for this file is selected. FIG. 132 is a diagram illustrating an example of a process selection screen for an acquired file. Here, when printing is selected, the file acquired in step S8811 is printed. If transmission is selected, the acquired file is transmitted in step S8812.
[0285]
Note that the present invention may be applied to an apparatus composed of a single device or a system composed of a plurality of devices. Also, a storage medium storing software program codes for realizing the functions of the above-described embodiments is supplied to the apparatus or system, and a computer in the apparatus or system reads out and executes the program code stored in the storage medium. May be achieved.
[0286]
Further, the computer in the apparatus or system reads out and executes the program code stored in the storage medium, thereby not only directly realizing the functions of the above-described embodiments but also on the computer based on the instruction of the program code. The case where the above-described functions are realized by processing of an OS or the like that is running on is also included.
[0287]
In these cases, the storage medium storing the program code constitutes the present invention.
[0288]
【The invention's effect】
As described above, according to the present invention, there is an effect that it is possible to change the transmission timing of information waiting for transmission. In addition, there is an effect that transmission target information set with a certain transmission time can be easily transmitted at a different transmission time. Furthermore, there is an effect that the transmission destination of the information waiting for transmission can be changed.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a functional configuration of an embodiment.
FIG. 2 is a diagram showing details of a functional configuration of the present embodiment.
FIG. 3 is a diagram illustrating a flow of information corresponding to a user operation.
FIG. 4 is a diagram illustrating a flow of processing a user input as a command.
FIG. 5 is a diagram showing a flow of processing for displaying processing results and status changes to a user.
FIG. 6 is a diagram illustrating a functional relationship among a plurality of devices.
FIG. 7 is a system configuration diagram according to the present embodiment.
FIG. 8 is a functional block diagram of the printer according to the embodiment.
FIG. 9 is a flowchart showing a startup sequence when power is turned on.
FIG. 10 is a flowchart showing the operation of a client component.
FIG. 11 is a flowchart illustrating a processing procedure of a server component in response to a client request.
FIG. 12 is a flowchart illustrating a CancelAllPrinterjobs processing procedure.
FIG. 13 is a flowchart illustrating a processing procedure of GetAllPrinterjobs.
FIG. 14 is a flowchart illustrating a processing procedure of SetPrinterJobStatus.
FIG. 15 is a flowchart illustrating a processing procedure of requests “login” and “logout”.
FIG. 16 is a flowchart showing a processing procedure of requests “Goto Other Device” and “Goto Desktop”;
FIG. 17 is a flowchart illustrating a processing procedure of requests “Search”, “Help”, and “Receive Job / Receive Notification”.
FIG. 18 is a flowchart showing a processing procedure of IdAnalyze.
FIG. 19 is a flowchart showing a DUMMY processing procedure;
FIG. 20 is a flowchart illustrating a processing procedure of IdAnalyzeNotify.
FIG. 21 is a flowchart showing the processing procedure of RecieveHttpNotification.
FIG. 22 is a flowchart illustrating a processing procedure of requests “Print”, “Send”, “Delete”, “Reschedule”, and “Preview”.
FIG. 23 is a flowchart illustrating a processing procedure of PrintJob.
FIG. 24 is a flowchart illustrating a SendJob processing procedure.
FIG. 25 is a flowchart illustrating an execution procedure of transmission by SendJob.
FIG. 26 is a flowchart illustrating a CancelJob processing procedure.
FIG. 27 is a flowchart showing the SendNotification processing.
FIG. 28 is a diagram illustrating a correspondence relationship between input information for a server and processing.
FIG. 29 is a flowchart showing a processing procedure from the start of the daemon.
FIG. 30 is a flowchart showing a Notification processing procedure of a daemon module.
FIG. 31 is a diagram illustrating a relationship between a job type handled by a daemon and a corresponding process;
FIG. 32 is a flowchart illustrating a processing procedure of PrintPrinterJob.
FIG. 33 is a flowchart illustrating a Sendjob processing procedure;
FIG. 34 is a flowchart showing the processing procedure of ReceivejobData.
FIG. 35 is a flowchart showing the processing procedure of GetListOfJobAttribute.
FIG. 36 is a flowchart showing the processing procedure of PollJob.
FIG. 37 is a flowchart showing a PollNotify processing procedure.
FIG. 38 is a flowchart illustrating a CancelAction processing procedure.
FIG. 39 is a flowchart showing the EditAction processing;
FIG. 40 is a flowchart illustrating a processing procedure of EditAction.
FIG. 41 is a flowchart illustrating a RescheduleAction processing procedure.
FIG. 42 is a flowchart illustrating a RescheduleAction processing procedure.
FIG. 43 is a flowchart illustrating a RescheduleAction processing procedure.
FIG. 44 is a flowchart showing the AddNotification processing.
FIG. 45 is a flowchart showing the processing procedure of AddInstruction.
FIG. 46 is a flowchart showing the GetInstruction processing.
FIG. 47 is a flowchart showing a processing procedure of Execution Instruction.
FIG. 48 is a flowchart showing a processing procedure of a desktop server component.
FIG. 49 is a flowchart showing a processing procedure for a request related to mail.
FIG. 50 is a flowchart illustrating a request processing procedure regarding a schedule;
FIG. 51 is a flowchart showing a request processing procedure for another device;
FIG. 52 is a flowchart showing a request processing procedure regarding logout and help;
FIG. 53 is a flowchart showing a processing procedure from an initial menu screen.
FIG. 54 is a flowchart showing a public information processing procedure;
FIG. 55 is a flowchart showing a login processing procedure.
FIG. 56 is a flowchart showing a processing procedure for selecting a job and performing an action.
FIG. 57 is a flowchart showing a preview job processing procedure for a selected job.
FIG. 58 is a flowchart showing a deletion processing procedure of a selected job.
FIG. 59 is a flowchart showing a schedule change processing procedure for a selected job.
FIG. 60 is a flowchart illustrating a printing processing procedure for a selected job.
FIG. 61 is a flowchart illustrating a procedure for changing print settings of a selected job.
FIG. 62 is a flowchart showing a selection job transmission processing procedure;
FIG. 63 is a flowchart showing a procedure for changing the transmission setting of a selected job.
FIG. 64 is a flowchart showing a processing procedure from the main menu.
FIG. 65 is a flowchart showing a search processing procedure.
FIG. 66 is a flowchart showing a procedure for adding public information.
FIG. 67 is a flowchart illustrating a printing processing procedure.
FIG. 68 is a flowchart illustrating a remote print processing procedure by the printer.
FIG. 69 is a flowchart illustrating a transmission processing procedure.
FIG. 70 is a diagram illustrating an example of a transmission setting menu.
FIG. 71 is a diagram illustrating an example of a transmission setting change menu.
FIG. 72 is a flowchart showing a remote send processing procedure by the printer.
FIG. 73 is a diagram illustrating an example of a menu for selecting a device in which a job to be deleted exists;
74 is a diagram illustrating an example of a list of deleted jobs. FIG.
FIG. 75 is a flowchart showing a deletion processing procedure;
FIG. 76 is a flowchart showing a remote delete processing procedure by the printer.
FIG. 77 is a flowchart showing a command setting process procedure;
FIG. 78 is a flowchart showing a schedule change processing procedure;
FIG. 79 is a flowchart showing a remote reschedule processing procedure.
FIG. 80 is a flowchart showing an access processing procedure for another device;
FIG. 81 is a diagram showing a setting screen for accessing another device.
FIG. 82 is a flowchart showing a desktop processing procedure;
FIG. 83 is a flowchart showing an unread mail processing procedure.
FIG. 84 is a flowchart showing a read mail processing procedure.
FIG. 85 is a diagram showing an example of an unread mail list;
FIG. 86 is a diagram showing a display example of the contents of mail.
FIG. 87 is a diagram showing an example of a list of read mails.
FIG. 88 is a flowchart showing a processing procedure for file processing;
FIG. 89 is a flowchart showing the processing procedure of ResetInstructions.
FIG. 90 is a flowchart showing the DeleteAllInstructions processing sequence.
FIG. 91 is a flowchart showing the DeleteInstructions processing procedure.
FIG. 92 is a flowchart showing the GetInstructionDetails processing procedure.
FIG. 93 is a flowchart showing a Check processing procedure;
FIG. 94 is a flowchart showing a GetJobData processing procedure.
FIG. 95 is a flowchart showing the GetJobAttributes processing procedure.
FIG. 96 is a flowchart showing a GetActionAttributes processing procedure.
FIG. 97 is a flowchart showing the DeleteJob processing.
FIG. 98 is a flowchart illustrating a GetNotificationList processing procedure.
FIG. 99 is a flowchart showing the processing procedure of SetNotificationCondition.
Fig. 100 is a flowchart illustrating a processing procedure of SetNotificationCondition.
FIG. 101 is a flowchart showing a SetNotificationStatus processing procedure.
FIG. 102 is a flowchart illustrating a ClearHistory processing procedure.
FIG. 103 is a flowchart showing the DeleteAllPublicInfoJobs processing procedure.
Fig. 104 is a flowchart illustrating a process procedure of PrintPublicInfo.
Fig. 105 is a flowchart showing SearchData processing.
FIG. 106 is a diagram showing an example of an initial menu screen.
FIG. 107 is a diagram illustrating a URL print setting screen.
FIG. 108 is a diagram showing a password input screen.
FIG. 109 is a diagram illustrating a processing setting screen for a job selected in the print queue.
110 is a diagram showing a public information processing setting screen. FIG.
FIG. 111 is a diagram illustrating an example of a setting screen for publishing information on another device.
FIG. 112 is a diagram showing a login screen.
FIG. 113 is a diagram illustrating an example of a list of held jobs.
FIG. 114 is a diagram illustrating a screen display example of a job preview.
FIG. 115 is a diagram showing a deletion confirmation screen.
FIG. 116 is a diagram showing a setting screen for changing a schedule.
FIG. 117 is a diagram illustrating an example of a print setting menu.
FIG. 118 is a diagram illustrating an example of a notification setting screen.
FIG. 119 is a diagram illustrating an example of a print setting change menu.
FIG. 120 is a diagram illustrating an example of a correction menu.
FIG. 121 is a diagram illustrating an example of a main menu.
FIG. 122 is a diagram illustrating an example of a menu for selecting a place where a job to be printed exists.
FIG. 123 is a diagram illustrating an example of a menu for selecting a job to be printed.
FIG. 124 is a diagram showing an example of a menu for selecting a place where a job to be transmitted exists.
FIG. 125 is a diagram illustrating an example of a menu for selecting a transmission target job.
FIG. 126 is a diagram showing an example of an instruction setting screen.
FIG. 127 is a diagram illustrating an example of a menu for selecting a device in which a job to be changed exists;
FIG. 128 is a diagram illustrating an example of a selection screen for a job whose schedule is to be changed.
FIG. 129 is a diagram illustrating an example of a desktop main menu.
FIG. 130 is a diagram showing an example of a setting screen for file acquisition.
FIG. 131 is a diagram showing an example of a desktop file list display;
FIG. 132 is a diagram showing an example of a process selection screen for an acquired file;
FIG. 133 is a diagram showing a setting screen for setting restrictions on jobs.
FIG. 134 is a diagram showing a setting screen for setting rejection of a job.
[Explanation of symbols]
101 users
102 Client components
103 Server components
104 database
105 Daemon
201 Operation unit
202, 203 Web browser
204 Web server
205 Device manager
206 Printer
207 Request Manager
208 Command analyzer
209 Database Manager
601 Print control unit
602 control unit
603 Conversion control unit
604 Display control unit
605 Notification control unit
606 External application control unit
607 Printing Department
608 Mail control unit
701 network
702 Printer
703 Input / output operation unit
704 scanner
705 Multifunction device
706 Personal computer
801 touch panel
802 CPU
803 Printing Department
804 Communication Department
805 ROM
806 RAM
807 HDD
808 system bus

Claims (13)

処理対象情報の送信処理及び印刷処理を実行する実行手段と、
処理対象情報を処理の種類、実行時期及び実行先と対応付けて記憶する処理対象情報記憶手段と、
該処理対象情報記憶手段に記憶された処理対象情報のリストを表示する表示手段と、
前記処理対象情報のリストから処理対象情報を選択する処理対象情報選択手段と、
選択された前記処理対象情報に対して実行すべき処理の種類を選択する処理選択手段と、
選択された前記処理の種類が前記処理対象情報と対応付けて記憶された処理の種類と一致するか否かを判別し、一致する場合は、当該処理対象情報と対応付けて前記処理対象情報記憶手段に記憶された設定を変更し、一致しない場合は前記処理対象情報と対応付けて前記選択された処理の種類、実行時期及び実行先を追加する記憶制御手段と、
前記処理対象情報記憶手段に記憶された処理対象情報に対して、該処理対象情報と対応付けて前記処理対象情報記憶手段に記憶された種類の処理を、記憶された実行時期及び実行先に基づいて実行するように前記実行手段を制御する実行制御手段とを備えることを特徴とする情報処理装置。
Execution means for executing processing target information transmission processing and printing processing;
Processing target information storage means for storing processing target information in association with the type of processing, execution time, and execution destination;
Display means for displaying a list of processing target information stored in the processing target information storage means;
Processing target information selecting means for selecting processing target information from the list of processing target information;
Processing selection means for selecting the type of processing to be executed on the selected processing target information;
It is determined whether or not the type of the selected process matches the type of process stored in association with the process target information. If they match, the process target information storage is associated with the process target information. A storage control means for changing the setting stored in the means, and adding the type, execution timing and execution destination of the selected process in association with the processing target information if they do not match;
For the processing target information stored in the processing target information storage unit, the type of processing stored in the processing target information storage unit in association with the processing target information is determined based on the stored execution time and execution destination. And an execution control means for controlling the execution means to execute the information processing apparatus.
前記記憶制御手段は、前記選択された処理対象情報の実行時期をすぐに実行するように変更することを特徴とする請求項1記載の情報処理装置。  The information processing apparatus according to claim 1, wherein the storage control unit changes the execution timing of the selected processing target information so as to be executed immediately. 時期を指定する時期指定手段を有し、前記記憶制御手段は、前記選択された処理対象情報の実行時期を前記時期指定手段により指定された時期に変更することを特徴とする請求項1記載の情報処理装置。  2. The time specifying means for specifying a time, wherein the storage control means changes the execution time of the selected processing target information to a time specified by the time specifying means. Information processing device. 前記記憶制御手段は、前記選択された処理対象情報の実行時期をすぐに実行するように変更することを特徴とする請求項1記載の情報処理装置。  The information processing apparatus according to claim 1, wherein the storage control unit changes the execution timing of the selected processing target information so as to be executed immediately. 前記記憶制御手段が、前記選択された処理対象情報の実行をキャンセルできることを特徴とする請求項1記載の情報処理装置。  The information processing apparatus according to claim 1, wherein the storage control unit can cancel execution of the selected processing target information. 処理対象情報の実行履歴を処理の種類とともに記憶する履歴記憶手段を有し、前記記憶制御手段により前記選択された処理対象情報の実行をキャンセルされた場合に、キャンセルされたことを前記履歴記憶手段に記憶することを特徴とする請求項5記載の情報処理装置。  A history storage unit that stores an execution history of the processing target information together with a type of processing, and the history storage unit indicates that the execution is canceled when the execution of the selected processing target information is canceled by the storage control unit; 6. The information processing apparatus according to claim 5, wherein the information processing apparatus is stored in the information processing apparatus. 処理対象情報を、処理の種類、実行時期及び実行先と対応付けて記憶する処理対象情報記憶手段と、表示手段と、処理対象情報選択手段と、処理選択手段と、記憶制御手段と、実行手段とを備え、処理対象情報の送信処理及び印刷処理を実行可能な情報処理装置における情報処理方法であって、
前記表示手段が、前記処理対象情報記憶手段に記憶された処理対象情報のリストを表示する表示工程と、
前記処理対象情報選択手段が、前記処理対象情報のリストから処理対象情報を選択する処理対象情報選択工程と、
前記処理選択手段が、選択された前記処理対象情報に対して実行すべき処理の種類を選択する処理選択工程と、
前記記憶制御手段が、選択された前記処理の種類が前記処理対象情報と対応付けて記憶された処理の種類と一致するか否かを判別し、一致する場合は、当該処理対象情報と対応付けて前記処理対象情報記憶手段に記憶された設定を変更し、一致しない場合は前記処理対象情報と対応付けて前記選択された処理の種類、実行時期及び実行先を追加する記憶制御工程と、
前記実行手段が、前記処理対象情報記憶手段に記憶された処理対象情報に対して、該処理対象情報と対応付けて前記処理対象情報記憶部に記憶された種類の処理を、記憶された実行時期及び実行先に基づいて実行する実行工程とを備えることを特徴とする情報処理方法。
Processing target information storage means for storing processing target information in association with processing type, execution time and execution destination, display means, processing target information selection means, processing selection means, storage control means, and execution means An information processing method in an information processing apparatus capable of executing transmission processing and printing processing of processing target information,
A display step in which the display unit displays a list of processing target information stored in the processing target information storage unit;
A processing target information selecting step for selecting processing target information from the list of processing target information;
A process selection step in which the process selection means selects a type of process to be performed on the selected processing target information;
The storage control means determines whether or not the selected type of processing matches the type of processing stored in association with the processing target information, and if it matches , associates with the processing target information. A storage control step of changing the setting stored in the processing target information storage means, and adding the type, execution timing and execution destination of the selected process in association with the processing target information if they do not match,
The execution means stores the type of processing stored in the processing target information storage unit in association with the processing target information for the processing target information stored in the processing target information storage means. And an execution step executed based on the execution destination.
前記記憶制御工程では、前記記憶制御手段が、前記選択された処理対象情報の実行時期をすぐに実行するように変更することを特徴とする請求項7記載の情報処理方法。  8. The information processing method according to claim 7, wherein in the storage control step, the storage control unit changes the execution timing of the selected processing target information so as to be executed immediately. 前記記憶制御工程は時期を指定する時期指定工程を有し、前記記憶制御手段が、前記記憶制御工程では、前記選択された処理対象情報の実行時期を前記時期指定工程により指定された時期に変更することを特徴とする請求項7記載の情報処理方法。  The storage control step includes a time specifying step for specifying a time, and the storage control means changes the execution time of the selected processing target information to the time specified by the time specifying step in the storage control step. The information processing method according to claim 7. 前記記憶制御工程では、前記記憶制御手段が、前記選択された処理対象情報の実行時期をすぐに実行するように変更することを特徴とする請求項7記載の情報処理方法。  8. The information processing method according to claim 7, wherein in the storage control step, the storage control unit changes the execution timing of the selected processing target information so as to be executed immediately. 前記記憶制御工程において、前記記憶制御手段が、前記選択された処理対象情報の実行をキャンセルできることを特徴とする請求項7記載の情報処理方法。  8. The information processing method according to claim 7, wherein in the storage control step, the storage control means can cancel the execution of the selected processing target information. 前記記憶制御工程は、処理対象情報の実行履歴を処理の種類とともに履歴記憶部に記憶する履歴記憶工程を有し、前記記憶制御手段が、前記選択された処理対象情報の実行をキャンセルされた場合に、前記履歴記憶工程では、キャンセルされたことを前記履歴記憶部に記憶することを特徴とする請求項11記載の情報処理方法。  The storage control step includes a history storage step of storing an execution history of processing target information together with a type of processing in a history storage unit, and the storage control unit is canceled execution of the selected processing target information 12. The information processing method according to claim 11, wherein in the history storage step, the cancellation is stored in the history storage unit. 処理対象情報を、処理の種類、実行時期及び実行先と対応付けて記憶する処理対象情報記憶手段を備え、処理対象情報の送信処理及び印刷処理を実行可能なコンピュータに、
前記処理対象情報記憶手段に記憶された処理対象情報のリストを表示する表示工程と、
前記処理対象情報のリストから処理対象情報を選択する処理対象情報選択工程と、
選択された前記処理対象情報に対して実行すべき処理の種類を選択する処理選択工程と、
選択された前記処理の種類が前記処理対象情報と対応付けて記憶された処理の種類と一致するか否かを判別し、一致する場合は、当該処理対象情報と対応付けて前記処理対象情報記憶手段に記憶された設定を変更し、一致しない場合は前記処理対象情報と対応付けて前記選択された処理の種類、実行時期及び実行先を追加する記憶制御工程と、
前記処理対象情報記憶手段に記憶された処理対象情報に対して、該処理対象情報と対応付けて前記処理対象情報記憶部に記憶された種類の処理を、記憶された実行時期及び実行先に基づいて実行する実行工程とを実行させるプログラムを記憶したことを特徴とするコンピュータ読み取り可能なプログラムを記憶した記憶媒体。
A processing target information storage means for storing processing target information in association with the type of processing, execution time, and execution destination, and a computer capable of executing processing target information transmission processing and printing processing,
A display step of displaying a list of processing target information stored in the processing target information storage means;
A processing target information selection step of selecting processing target information from the list of processing target information;
A process selection step of selecting a type of process to be performed on the selected processing target information;
It is determined whether or not the type of the selected process matches the type of process stored in association with the process target information. If they match, the process target information storage is associated with the process target information. A storage control step of changing the setting stored in the means and adding the type of the selected process, the execution timing and the execution destination in association with the processing target information if they do not match,
For the processing target information stored in the processing target information storage unit, the type of processing stored in the processing target information storage unit in association with the processing target information is determined based on the stored execution time and execution destination. A storage medium storing a computer-readable program, characterized in that a program for executing the execution step is stored.
JP28074797A 1997-10-14 1997-10-14 Information processing apparatus and method, and storage medium storing the program Expired - Fee Related JP3957838B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP28074797A JP3957838B2 (en) 1997-10-14 1997-10-14 Information processing apparatus and method, and storage medium storing the program
EP98308303A EP0910008A3 (en) 1997-10-14 1998-10-13 Apparatus and method for changing, adding and deleting a job, and a storage medium for such a program
US09/170,653 US6667810B1 (en) 1997-10-14 1998-10-14 Apparatus and method for changing, adding and deleting a job, and a storage medium for such a program
US10/648,721 US7187478B2 (en) 1997-10-14 2003-08-27 Apparatus and method for changing, adding and deleting a job, and a storage medium for such a program
US11/615,149 US7639405B2 (en) 1997-10-14 2006-12-22 Apparatus and method for changing, adding and deleting a job, and a storage medium for such a program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28074797A JP3957838B2 (en) 1997-10-14 1997-10-14 Information processing apparatus and method, and storage medium storing the program

Publications (2)

Publication Number Publication Date
JPH11120094A JPH11120094A (en) 1999-04-30
JP3957838B2 true JP3957838B2 (en) 2007-08-15

Family

ID=17629401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28074797A Expired - Fee Related JP3957838B2 (en) 1997-10-14 1997-10-14 Information processing apparatus and method, and storage medium storing the program

Country Status (1)

Country Link
JP (1) JP3957838B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5028456B2 (en) * 2009-08-10 2012-09-19 セイコーエプソン株式会社 System that mediates printing on the network
JP6344025B2 (en) * 2014-04-10 2018-06-20 セイコーエプソン株式会社 Printing system, server, receiving apparatus, and printing method in printing system
JP7218572B2 (en) * 2018-12-27 2023-02-07 コニカミノルタ株式会社 Distributed printing system and information processing device

Also Published As

Publication number Publication date
JPH11120094A (en) 1999-04-30

Similar Documents

Publication Publication Date Title
EP0910009B1 (en) Apparatus and method for controlling job execution, and storage medium for such a program
EP0910008A2 (en) Apparatus and method for changing, adding and deleting a job, and a storage medium for such a program
EP0910010A2 (en) Apparatus and method for performing a specific process based on a setup condition, and a storage medium for such a program
EP0910011A2 (en) Apparatus and method for displaying job list, and storage medium for such a program
JPH11120135A (en) Information processor, information processing method and storage medium stored with program therefor
US7171468B2 (en) System and method for accessing a document management repository
JP4241576B2 (en) Image processing system, image processing apparatus, and server
US20070046996A1 (en) Image forming apparatus, control method for image forming apparatus, image forming system, and storage medium
JPH10269121A (en) Information processor and its method
JP5072375B2 (en) Network device management apparatus and network device management method
JP3957838B2 (en) Information processing apparatus and method, and storage medium storing the program
JP2019186773A (en) Information processing system, control method, and program therefor
JPH11119956A (en) Device and method for processing information and storage medium stored with program therefor
JP4208274B2 (en) Information processing apparatus and method, and storage medium storing the program
JPH11119924A (en) Device and method for processing information and storage medium stored with program therefor
JP3907286B2 (en) Information processing apparatus and method, and storage medium storing the program
JP3943675B2 (en) Information processing apparatus and method, and storage medium storing the program
JPH11120143A (en) Information processor, information processing method and storage medium stored with program therefor
JPH11119958A (en) Information processor, method therefor and storage medium stored with program therefor
JP3869915B2 (en) Information processing apparatus and method, and storage medium storing the program
WO2003090096A1 (en) Document management system
JPH11120136A (en) Information processor, method therefor and storage medium stored with program therefor
JPH11115279A (en) Apparatus and method for processing in formation, and storage medium storing program therefor
JPH11119926A (en) Device and method for processing information and storage medium stored with program therefor
JPH11120131A (en) Information processor, information processing method and storage medium stored with program therefor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040602

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061003

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070409

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070508

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070509

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100518

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110518

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120518

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120518

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130518

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140518

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees