JP4585540B2 - Webアプリケーションシステム、装置及びプログラム - Google Patents

Webアプリケーションシステム、装置及びプログラム Download PDF

Info

Publication number
JP4585540B2
JP4585540B2 JP2007121051A JP2007121051A JP4585540B2 JP 4585540 B2 JP4585540 B2 JP 4585540B2 JP 2007121051 A JP2007121051 A JP 2007121051A JP 2007121051 A JP2007121051 A JP 2007121051A JP 4585540 B2 JP4585540 B2 JP 4585540B2
Authority
JP
Japan
Prior art keywords
execution
instruction information
processing
background
execution instruction
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.)
Active
Application number
JP2007121051A
Other languages
English (en)
Other versions
JP2008276614A (ja
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions Corp
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 Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2007121051A priority Critical patent/JP4585540B2/ja
Publication of JP2008276614A publication Critical patent/JP2008276614A/ja
Application granted granted Critical
Publication of JP4585540B2 publication Critical patent/JP4585540B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、Webアプリケーションシステム、装置及びプログラムに係り、例えば、1つの業務処理プログラムをバックグラウンド処理及びリアルタイム処理で実行でき、プログラムの保守性及び生産性の低下を阻止し得るWebアプリケーションシステム、装置及びプログラムに関する。
通常、Webアプリケーションでは、画面から処理の実行指示が入力された後、アプリケーションサーバによる処理の実行が終了するまで利用者が画面の前で待つ必要がある。
このように実行指示に対し即時に処理を実行し、実行結果を返す処理をリアルタイム処理と呼ぶ。リアルタイム処理では処理の終了まで待つ必要があるので、短時間で終了する処理の場合には問題ないが、長時間に及ぶ処理の場合には、待ち時間が長いことや、待ち時間中に他の処理を実行できないといった問題が生じる。
この問題を解決するために、待ち時間が長くなる場合には、画面から実行指示用のデータのみ作成し、実際の処理はアプリケーションサーバのバッチ処理にて実行する方法が知られている(具体例としては、特許文献1参照。)。この方法では、利用者が画面から処理の実行指示を入力すると、その実行指示の情報のみを作成し、実行指示の情報が登録されたことを画面に表示する。
その後、アプリケーションサーバは、登録した実行指示情報を参照し、バッチ処理を実行する。このように、実行指示の入力とは非同期に実行されるバッチ処理をバックグラウンド処理と呼ぶ。このようなバックグラウンド処理によれば、リアルタイム処理の問題が解決される。
特開2003−316547号公報
しかしながら、以上のようなバックグラウンド処理を実現する場合、リアルタイム処理用と別にバックグラウンド処理用のプログラムを作成する必要が生じる。
すなわち、同一の業務処理でリアルタイム処理用とバックグラウンド処理用の2つのプログラムが必要となるので、プログラムの保守性、生産性が著しく低下してしまう。
本発明は上記実情を考慮してなされたもので、1つの業務処理プログラムをバックグラウンド処理及びリアルタイム処理で実行でき、プログラムの保守性及び生産性の低下を阻止し得るWebアプリケーションシステム、装置及びプログラムを提供することを目的とする。
第1の発明は、データベース装置と、前記データベース装置を読出/書込可能なアプリケーションサーバ装置とを備えたWebアプリケーションシステムであって、前記データベース装置としては、前記アプリケーションサーバ装置によりバックグラウンド処理で実行される業務処理プログラムの各機能を機能ID及びこの機能IDに対応するボタンIDが互いに関連付けられて予め記憶されたバックグラウンド対象記憶手段と、実行データ、機能ID、ボタンID及びバックグラウンド処理指示情報を含む第1実行指示情報を少なくとも記憶する実行指示情報記憶手段とを備えており、前記アプリケーションサーバ装置としては、前記業務処理プログラムが記憶された業務処理プログラム記憶手段と、前記第1実行指示情報、又は実行データ、機能ID、ボタンID及びリアルタイム処理指示情報を含む第2実行指示情報のうちのいずれかの実行指示情報を受信すると、当該受信した実行指示情報がバックグラウンド処理指示情報を含むか否かを判定する第1判定手段と、前記受信した実行指示情報に含まれる機能ID及びボタンIDが、前記バックグラウンド対象記憶手段内の機能ID及びボタンIDに一致するか否かを判定する第2判定手段と、前記第1判定手段及び前記第2判定手段のうち、少なくとも一方の判定結果が否の場合には、前記受信した実行指示情報に基づいて、前記業務処理プログラムをリアルタイム処理により実行するリアルタイム実行手段と、前記第1判定手段及び前記第2判定手段による判定結果が両者とも否でない場合には、前記受信した実行指示情報である第1実行指示情報を前記実行指示情報記憶手段に保存する手段と、前記第1実行指示情報を保存した旨を当該第1実行指示情報の送信元に通知する手段と、前記通知の後、バックグラウンド処理により、前記実行指示情報記憶手段から前記第1実行指示情報に含まれる実行データを呼び出す実行データ呼出し手段と、前記呼び出した実行データに基づいて、前記業務処理プログラムをバックグラウンド処理により実行するバックグラウンド実行手段と、を備えたWebアプリケーションシステムである。
なお、第1の発明は、各装置の集合体を「システム」として表現したが、これに限らず、各装置の集合体又は各装置を「装置」、「プログラム」、「プログラムを記憶したコンピュータ読み取り可能な記憶媒体」又は「方法」として表現してもよいことは言うまでもない。
(作用)
第1の発明では、業務処理プログラムをリアルタイム処理により実行するリアルタイム実行手段と、業務処理プログラムをバックグラウンド処理により実行するバックグラウンド実行手段とを備えた構成により、1つの業務処理プログラムをバックグラウンド処理及びリアルタイム処理で実行でき、プログラムの保守性及び生産性の低下を阻止することができる。
以上説明したように本発明によれば、1つの業務処理プログラムをバックグラウンド処理及びリアルタイム処理に実行でき、保守性及び生産性の低下を阻止できる。
以下、本発明の各実施形態について図面を用いて説明する。なお、以下の各装置は、装置毎に、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から対応する装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。
(第1の実施形態)
図1は本発明の第1の実施形態に係るWebアプリケーションシステムの構成を示す模式図であり、図2は同システムに用いられるデータベース装置の構成を示す模式図である。このWebアプリケーションシステムは、データベース装置100、アプリケーションサーバ装置200及びクライアント装置300が互いにネットワークを介して接続されている。
ここで、データベース装置100は、アプリケーションサーバ装置200から読出/書込可能な記憶装置であり、実行指示データD1、バックグラウンド対象データD2及び業務処理関連情報D3が記憶される。
実行指示データD1は、図2に示すように、指示ID、指示日付、ユーザID、機能ID、ボタンID及びタイミングフラグを含む実行機能指示情報D1−1と、この指示情報D1−1の指示IDと同一の指示ID及び実行データを含む実行条件指示情報D1−2とから構成される。なお、2つの指示情報D1−1,D1−2は、一つの指示情報にまとめてもよい。また、業務処理プログラムの内容によっては、指示日付及びユーザIDを省略してもよい。
指示IDは、例えば図3に一例を示すように、クライアント装置300に表示された入力画面G1において、チェックボックスg1の選択によりバックグラウンド処理を示すBGコードと、ラジオボタンg2の選択による実行指示の場合の連続番号0001とが連結されたものである。但し、BGコードは指示IDとは別の項目で設けてもよい。また、チェックボックスg1が選択されない場合、BGコードに代えて、リアルタイム処理を示すRTコードが連結されるが、RTコードを含む指示IDの実行指示データは、リアルタイム処理で実行されるため、データベース装置100に記憶されることはない。すなわち、データベース装置100には、少なくとも実行データ、機能ID、ボタンID及びRTコード(リアルタイム処理指示情報)を含む第2の実行指示データと、少なくとも実行データ、機能ID、ボタンID及びBGコード(バックグラウンド処理指示情報)を含む第1の実行指示データD1との2種類の実行指示データのうち、第1の実行指示データD1がアプリケーションサーバ装置200を介して記憶される。なお、ラジオボタンg2に代えて、ラジオボタンg3が選択された場合、実行指示データD1は、タイミングフラグに「バックグラウンド処理をバッチ処理で実行する」ための情報“0”が設定された状態でデータベース装置100に保存される。また、ラジオボタンg2が選択された場合、実行指示データD1は、タイミングフラグに「バックグラウンド処理を即時実行する」ための情報“1”が設定された状態でデータベース装置100に保存される。なお、ラジオボタンg3で選択したバッチ処理のための情報を“1”とし、ラジオボタンg2で選択した即時実行のための情報を“0”としてもよい。また、タイミングフラグは必ずしも必要ではなく、省略してもよい。例えば、バックグラウンド処理を実行するタイミングが予め即時実行又はバッチ処理のいずれかに決まっている場合、タイミングフラグを省略できる。また、ここでいうバッチ処理とはバックグラウンド処理で実行され、かつ、バックグラウンド処理の即時実行ではない処理として位置付けるものとする。例えば、バッチ処理は、実行指示データD1が作成されて数時間後にバックグラウンド処理で実行されるものとする。当該数時間という情報はD1−1に図示していない区分欄などに含まれている場合やCPU270によるバックグラウンド処理のプログラムにて予め示されている場合などが考えられる。
指示日付は、実行指示データD1を作成した日付を示す情報であり、クライアント装置300により付加される。
ユーザIDは、入力画面G1を操作している利用者を示すIDであり、例えばログイン時に入力したユーザIDが用いられる。ここでいうユーザID(例、給与会計の担当者)は、後述する業務処理関連情報内のユーザID(例、給与が支給される社員)とは異なる値の場合が多いが、同一の値の場合もある。
機能ID及びボタンIDは、各ボタンg4〜g6に予め割り付けられており、図3の例では印刷ボタンg4の選択に基づいて、帳票出力機能を示す“AAA”が機能IDに設定されると共に、印刷ボタンg4を示す“BUTTON01”がボタンIDに設定される。なお、取消しボタンg6を選択した場合、バックグラウンド処理のチェックボックスg1を選択していても、取消処理がリアルタイム処理で実行される。これは後述するバックグラウンド対象データD2の中に取消処理が含まれていないためである。
実行データは、実行指示の実行条件を示すものであり、図3の例では、支給年月の範囲g7〜g8と、付加するコメントg9とが用いられている。また、実行データの実例としては、Java(登録商標)のインスタンスのバイナリがあり、このバイナリをデータベースのBLOBというバイナリデータとして登録している。
バックグラウンド対象データD2は、バックグラウンド処理の対象処理を判断するためのメタデータであり、具体的には、アプリケーションサーバ装置200により実行される業務処理プログラム210の各機能を示す機能IDのうち、バックグラウンド処理の対象である機能を示す機能IDと、この機能IDに対応するボタンIDと、機能IDに対応する処理名称とが互いに関連付けられて予め記憶されている。なお、バックグラウンド対象データD2としては、実行指示データD1と比較される機能ID及びボタンIDがあればよいので、処理名称は省略してもよい。
業務処理関連情報D3は、業務処理プログラム210の実行に必要な各種のデータであり、業務処理プログラム210の処理内容に応じて任意の情報が使用可能となっている。
業務処理関連情報D3は、図2の例では、アルバイト社員の給料の支給明細書を作成して帳票出力する業務処理の関連情報として、アルバイト社員の個人を識別するユーザID、ユーザ名、所属、連絡先及び時給金額を含むユーザ個人情報D3−1と、アルバイト社員の勤務記録に関する日付情報、出退勤時刻及び実働時間(=(退勤時刻−出勤時刻)−所定の休憩時間)を含む勤務記録情報D3−2と、アルバイト社員の給与の支給年月、累積実働時間及び月給金額(=時給金額×累積実働時間)を含む支給明細情報とから構成されている。なお、ユーザ個人情報D3−1、勤務記録情報D3−2及び支給明細情報D3−3は、互いに同一値のユーザIDにより関連付けられている。これらユーザ個人情報D3−1、勤務記録情報D3−2及び支給明細情報D3−3は、一つの業務処理関連情報D3にまとめてもよい。また、各情報D3−1,D3−2,D3−3は、それぞれテーブル情報であり、実際には複数のユーザに関する内容がユーザID毎に記録されている。
アプリケーションサーバ装置200は、業務処理プログラム210、共通フレームワーク220、アプリケーションプログラム230及びバックグラウンド処理実行部240といった各プログラム210〜240や処理中のデータ等を記憶する主メモリとしての記憶部250と、前述した各プログラム210〜240を記憶する補助メモリとしてのHDD(hard disk drive)装置と、前述した各プログラム210〜240を実行するCPU270とを備えている。
ここで、業務処理プログラム210は、共通フレームワーク220上で動作するWebアプリケーションであり、チェック処理部211及び実行処理部212からなる処理部と、実行データ213を保持するデータ保持部とから構成される。なお、業務処理プログラム210が対象とする業務処理の内容は、実行指示データと、業務処理関連情報D3とに基づいてCPU270が実行可能な処理であれば、任意の処理が適用可能となっている。
チェック処理部211は、共通フレームワーク220又はバックグラウンド処理実行部240の処理により受けた実行データの形式(例、支給年月の桁数や範囲など)をチェックするチェック処理手段、チェック後の実行データ213をデータ保持部に書き込む書込手段、としてサーバ装置200を機能させるためのプログラムである。
実行処理部212は、共通フレームワーク220又はバックグラウンド処理実行部240の処理により実行制御され、データ保持部内の実行データ213及びデータベース装置100内の業務処理関連情報D3に基づいて業務処理を実行処理する実行処理手段、実行結果をクライアント装置300に出力する出力手段、としてサーバ装置200を機能させるためのプログラムである。なお、実行処理としては、例えば、実行データ213内の支給年月に基づいて、業務処理関連情報D3におけるユーザ個人情報D3−1内のユーザID毎に、支給年月に該当する日付情報をもつ勤務記録情報D3−2の出退勤時刻及び所定の休憩時間に基づいて1日の実働時間を算出する処理と、この実働時間を支給年月内で累積して累積実働時間を算出する処理と、この累積実働時間にユーザ個人情報D3−1内の時給金額を掛け算して月給金額を算出する処理と、算出した実働時間、累積実働時間及び月給金額で業務処理関連情報D3を更新する処理と、更新後に、例えば図4に示すように、業務処理関連情報D3におけるユーザ個人情報D3−1内の所属、ユーザ名及び時給金額と、支給明細情報D3−3内の累積実働時間及び月給金額と、実行データ213内の支給年月及びコメントとを含む支給明細書データD4を作成する処理とを含んでいる。この場合、クライアント装置300に出力される実行結果は、支給明細書データD4である。
共通フレームワーク220は、アプリケーションコンテナ230上で動作するWebアプリケーションであり、業務処理プログラム210の実行を制御する実行制御部221及び、バックグラウンド処理の実行指示データD1を保存するためのデータ保存処理部222から構成される。
実行制御部221は、クライアント装置300から第1及び第2の実行指示データのうちのいずれかの実行指示データを受信すると、当該受信した実行指示データがBGコード(バックグラウンド処理指示情報)を含むか否かを判定する第1判定手段、受信した実行指示データに含まれる機能ID及びボタンIDが、データベース装置100に記憶されたバックグラウンド対象データD2内の機能ID及びボタンIDに一致するか否かを判定する第2判定手段、第1判定手段及び第2判定手段のうち、少なくとも一方の判定結果が否の場合には、受信した実行指示データに基づいて、業務処理プログラム210をリアルタイム処理により実行するリアルタイム実行手段、としてアプリケーションサーバ装置200を機能させるためのプログラムである。
データ保存処理部222は、実行制御部221における第1判定手段及び第2判定手段による判定結果が両者とも否でない場合には、受信した実行指示データである第1の実行指示データD1をデータベース装置100に保存する手段、第2の実行指示データD1を保存した旨を当該第1の実行指示データD1の送信元であるクライアント装置300に通知する手段、としてアプリケーションサーバ装置200を機能させるためのプログラムである。
アプリケーションコンテナ230は、Webアプリケーションを実行する際に必要なソフトウェアであり、一般的な構成要素である。アプリケーションコンテナとしては、例えば、サーブレットコンテナがある。サーブレットコンテナは、サーブレットを実行及び管理するソフトウェアであり、例えば、以下のURLに説明されている。
http://otndnld.oracle.co.jp/document/products/as10g/1012/doc_v1/web.1012/B15632-01/tecbkgnd.html
バックグラウンド処理実行部240は、データベース装置100に保存されたデータを呼び出すための保存データ呼出し部241、業務処理の実行を制御する実行制御部242、アプリケーションコンテナ230を仮想的に実現する仮想コンテナ243から構成される。
保存データ呼出し部241は、共通フレームワーク220のデータ保存処理部222による通知の後、バックグラウンド処理により、データベース装置100から第1の実行指示データD1に含まれる実行データを呼び出す実行データ呼出し手段、としてアプリケーションサーバ装置200を機能させるためのプログラムである。
実行制御部242は、呼び出した実行データに基づいて、業務処理プログラム210をバックグラウンド処理により実行するバックグラウンド実行手段、としてアプリケーションサーバ装置200を機能させるためのプログラムである。
仮想コンテナ243は、バックグラウンド処理の実行時に仮想的なアプリケーションコンテナとして機能するものであり、具体的には、セッション(Session)と呼ばれるメモリ領域やそのメモリ領域に対する操作処理を実現する機能をもっている。なお、仮想コンテナ243が必要な理由は、通常、Webアプリケーションではセッションと呼ばれるメモリ領域にデータを保存するが、バックグラウンド実行時にはこのセッションが存在しないためである。
クライアント装置300は、通常のパーソナルコンピュータ装置であり、本実施形態に関係する機能としては例えば、利用者の操作により、アプリケーションサーバ装置200に接続し、各業務処理の実行指示データを送信する機能と、アプリケーションサーバ装置200から受信した実行結果を表示する機能と、図示しないプリンタにより、この実行結果を出力する機能とをもっている。
次に、以上のように構成されたWebアプリケーションシステムの動作を図5のフローチャート及び図6の模式図を参照しながら説明する。
アプリケーションサーバ装置200においては、CPU270の実行により、アプリケーションコンテナ230及び共通フレームワーク220が動作中であるとする。
このとき、クライアント装置300は、利用者の操作により、アプリケーションサーバ装置200に接続し、図3に示したように、入力画面G1から業務処理プログラム210に対する実行指示データを作成し、この実行指示データをアプリケーションサーバ装置200に送信する。
アプリケーションサーバ装置200においては、CPU270が共通フレームワーク220の実行制御部221の実行により、図5(a)に示すように、実行指示データを受信すると(ST1)、受信した実行指示データがBGコード(バックグラウンド処理指示情報)を含むか否か(バックグラウンド処理の指示か否か)を判定し(ST2)、否の場合にはチェック処理を実行し(ST3)、業務処理プログラム210をリアルタイム処理により実行する(ST4)。
一方、ステップST2の判定の結果、BGコードを含む場合、CPU270は、受信した実行指示データに含まれる機能ID及びボタンIDが、データベース装置100に記憶されたバックグラウンド対象データD2内の機能ID及びボタンIDに一致するか否か(バックグラウンド処理の対象処理か否か)を判定し、否の場合には前述同様にリアルタイム処理のステップST3,ST4を実行する。なお、ステップST2とST5とは、実行する順序を互いに入れ替えてもよく、このことは以下の各実施形態でも同様である。
また、ステップST5の判定の結果、バックグラウンド対象データD2内の機能ID及びボタンIDに一致した場合、CPU270は、業務処理プログラム210のチェック処理部211の実行により、実行指示データ内の実行データについてのチェック処理を実行する(ST6)。
しかる後、CPU270は、共通フレームワーク220のデータ保存処理部222の実行により、受信した実行指示データD1をデータベース装置100に保存し(ST7)、実行指示データD1を保存した旨をクライアント装置300に通知する(ST8)。
この通知の後、CPU270は、実行指示データD1−1のタイミングフラグに基づいて、バックグラウンド処理を即時実行又はバッチ処理により実行する。ここで、CPU270は、図5(b)に示すように、バックグラウンド処理実行部240の保存データ呼出し部241の実行により、データベース装置100から実行指示データD1に含まれる実行データを呼び出し(ST9)、業務処理プログラム210のデータ保持部に実行データ213を書き込む。
また、CPU270は、バックグラウンド処理実行部240の実行制御部242の実行により、この呼び出されて書き込まれた実行データに基づいて、業務処理プログラム210の実行処理部212をバックグラウンド処理により実行する(ST10)。
このように、ステップST4のリアルタイム処理と、ステップST10のバックグラウンド処理とを一つの業務処理プログラム210で実現することができる。
また、ステップST10において、CPU270は、例えば図4に示す如き、支給明細書データD4を実行結果として作成し、支給明細書データD4をクライアント装置300に送信する。クライアント装置300は、この支給明細書データD4を図示しないプリンタ等により出力する。
バックグラウンド処理の完了後、CPU270は、業務処理プログラム210の実行を終了する。
上述したように本実施形態によれば、業務処理プログラム210をリアルタイム処理により実行する共通フレームワーク220の実行制御部221と、業務処理プログラム210をバックグラウンド処理により実行するバックグラウンド処理実行部240の実行制御部242とを備えた構成により、1つの業務処理プログラムをバックグラウンド処理及びリアルタイム処理で実行でき、プログラムの保守性及び生産性の低下を阻止することができる。
すなわち、クライアントからの実行指示にあわせて、共通フレームワーク220によりリアルタイム処理の途中で業務の実行処理を横取りし、後続の処理を別プロセスのバックグラウンドで仮想的な動作環境上で動作させることにより、一つの業務処理プログラムで、バックグラウンド処理とリアルタイム処理の両方を実現することができる。
これにより、各業務処理でオンライン処理とバックグラウンド処理を別々に作成する必要が無く、一つの業務処理プログラム210でバックグラウンド処理とリアルタイム処理を実現することにより、プログラムの生産性及び保守性を大幅に向上できる。また、ユーザが処理の実行条件等にあわせてフレキシブルにオンライン処理とバッチ処理を選択して利用することができる。
(第2の実施形態)
図7は本発明の第2の実施形態に係るWebアプリケーションシステムの構成を示す模式図であり、図1と同一部分には同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。なお、以下の各実施形態も同様にして重複した説明を省略する。
すなわち、本実施形態は、アプリケーションサーバ装置200からバックグラウンド処理実行部240を分離して別の装置に設けた例であり、具体的には図7に示すように、アプリケーションサーバ装置200からバックグラウンド処理実行部240を省略する一方、省略したバックグラウンド処理実行部240と同等のバックグラウンド処理実行部440のプログラムを記憶した記憶部450、HDD装置460及びCPU470を備えたバックグラウンド処理管理サーバ装置400を付加した構成となっている。
次に、以上のように構成されたWebアプリケーションシステムの動作を図8のフローチャート及び図9の模式図を参照しながら説明する。
Webアプリケーションシステムにおいては、アプリケーションサーバ装置200が、前述同様にステップST1〜ST8を実行する。
ステップST8の後、バックグラウンド処理管理サーバ装置400においては、CPU470が、保存データ呼出し部441の実行により、データベース装置100に保存された実行データを呼び出し(ST9’)、実行制御部442の実行により、アプリケーションサーバ装置200内の業務プログラム210を実行するようにCPU270を制御する(ST10’−1)。
これにより、CPU270は、バックグラウンド処理により、業務プログラム210を実行する(ST10’−2)。
上述したように本実施形態によれば、リアルタイム処理を実行するための共通フレームワーク220と、バックグラウンド処理を実行するためのバックグラウンド処理実行部400とを別々のサーバ装置200,400に配置した構成に変形しても、第1の実施形態と同様の効果を得ることができる。
(第3の実施形態)
図10は本発明の第3の実施形態に係るWebアプリケーションシステムの構成を示す模式図である。
本実施形態は、第1の実施形態の変形例であり、具体的には図10に示すように、バックグラウンド処理部240にスケジューリング処理部244を追加し、実行データに含まれる“支給年月”等の日付データを更新することにより、バックグラウンド処理を組み合わせて定期的なバッチ処理を実現可能とするものである。
これに伴い、実行指示データD1は、図11及び図12に示すように、指示ID、項目ID及び区分からなる更新指示情報D1−3を含むものとなっている。指示IDは、前述同様のものである。項目IDは、実行データに含まれる実行時間条件を示すIDであり、ここでは支給年月という実行時間条件を示す項目IDが用いられている。区分は、バックグラウンド処理を定期的に実行する場合の実行周期情報である。この更新指示情報D1−3は、ここでは入力画面G2のチェックボックスg10により設定されるが、これに限らず、入力画面G2からラジオボタン等で択一的に入力されてもよい。
また、バックグラウンド対象データD2は、図11に示すように、前述した機能ID、ボタンID及び処理名称に加え、項目IDが互いに関連付けられたものとなっている。
ここで、スケジューリング処理部244は、データベース装置100内の実行データに含まれる実行時間条件を実行周期情報に基づいて定期的に更新する手段、更新した実行時間条件に基づいて、業務処理プログラム210をバックグラウンド処理により実行する手段、としてサーバ装置200を機能させるためのプログラムである。これに伴い、実行結果としての支給明細書データD4は、例えば図13に示すように、1ヶ月経過毎に支給年月が自動更新されながら作成される。
次に、以上のように構成されたWebアプリケーションシステムの動作を図14のフローチャート及び図15の模式図を参照しながら説明する。
アプリケーションサーバ装置200においては、CPU270の実行により、アプリケーションコンテナ230及び共通フレームワーク220が動作中であるとする。
このとき、クライアント装置300は、利用者の操作により、アプリケーションサーバ装置200に接続し、図12に示したように、入力画面G2から業務処理プログラム210に対する実行指示データを作成し、この実行指示データをアプリケーションサーバ装置200に送信する。
Webアプリケーションシステムにおいては、アプリケーションサーバ装置200が、前述同様にステップST1〜ST8を実行する。
ステップST8の後、アプリケーションサーバ装置200においては、CPU270が、スケジューリング処理部244の実行により、データベース装置100内の実行データに含まれる実行時間条件を実行周期情報に基づいて定期的に更新する(ST9−1)。
また、CPU270は、保存データ呼出し部241の実行により、データベース装置100から実行指示データD1に含まれる実行データを呼び出し(ST9−2)、業務処理プログラム210のデータ保持部に実行データ213を書き込む。
しかる後、CPU270は、バックグラウンド処理実行部240の実行制御部242の実行により、この呼び出されて書き込まれた実行データの更新した実行時間条件に基づいて、業務処理プログラム210の実行処理部212をバックグラウンド処理により実行する(ST10)。
このステップST10において、CPU270は、前述同様に、支給明細書データD4を実行結果として作成し、クライアント装置300に送信する。クライアント装置300は、前述同様に、支給明細書データD4を図示しないプリンタ等により出力する。
バックグラウンド処理の完了後、CPU270は、バックグラウンドでステップST9−1、ST9−2及びST10の処理を繰り返し実行する。これに伴い、実行結果としての支給明細書データD4は、例えば図13に示すように、1ヶ月経過毎に支給年月が自動更新されながら作成され、クライアント装置300に送信される。
上述したように本実施形態によれば、第1の実施形態の効果に加え、スケジュール処理部244により、バックグラウンド処理を定期的に実行することができる。
(第4の実施形態)
図16は本発明の第4の実施形態に係るWebアプリケーションシステムの構成を示す模式図である。
すなわち、本実施形態は、第3の実施形態に第2の実施形態を適用した例であり、具体的には図16に示すように、アプリケーションサーバ装置200からバックグラウンド処理実行部240を省略する一方、省略したバックグラウンド処理実行部240と同等のバックグラウンド処理実行部440のプログラムを記憶した記憶部450、HDD装置460及びCPU470を備えたバックグラウンド処理管理サーバ装置400を付加した構成となっている。
また、このバックグラウンド処理管理サーバ400は、保存データ呼出し部441、実行制御部442及び仮想コンテナ443に加え、前述したスケジューリング処理部244と同等のスケジューリング処理部444を備えている。
次に、以上のように構成されたWebアプリケーションシステムの動作を図17のフローチャート及び図18の模式図を参照しながら説明する。
Webアプリケーションシステムにおいては、アプリケーションサーバ装置200が、第3の実施形態と同様にステップST1〜ST8を実行する。
ステップST8の後、バックグラウンド処理管理サーバ装置400においては、CPU470が、スケジューリング処理部444の実行により、データベース装置100内の実行データに含まれる実行時間条件を実行周期情報に基づいて定期的に更新する(ST9’−1)。
また、CPU470は、保存データ呼出し部441の実行により、データベース装置100から実行指示データD1に含まれる実行データを呼び出し(ST9’−2)、業務処理プログラム210のデータ保持部に実行データ213を書き込む。
しかる後、CPU470は、実行制御部442の実行により、アプリケーションサーバ装置200内の業務プログラム210を実行するようにCPU270を制御する(ST10’−1)。
これにより、CPU270は、バックグラウンド処理により、業務プログラム210を実行する(ST10’−2)。
バックグラウンド処理の完了後、CPU470,270は、バックグラウンドでステップST9−1、ST9−2及びST10の処理を繰り返し実行する。
上述したように本実施形態によれば、スケジューリング処理部244を備えた第3の実施形態を、リアルタイム処理を実行するための共通フレームワーク220と、バックグラウンド処理を実行するためのバックグラウンド処理実行部400とを別々のサーバ装置200,400に配置した構成に変形しても、第3の実施形態と同様の効果を得ることができる。
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行しても良い。
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
また、記憶媒体は1つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
本発明の第1の実施形態に係るWebアプリケーションシステムの構成を示す模式図である。 同実施形態におけるデータベース装置の構成を示す模式図である。 同実施形態における実行指示データ及び入力画面の構成を説明するための模式図である。 同実施形態における実行結果を説明するための模式図である。 同実施形態における動作を説明するためのフローチャートである。 同実施形態における動作を説明するための模式図である。 本発明の第2の実施形態に係るWebアプリケーションシステムの構成を示す模式図である。 同実施形態における動作を説明するためのフローチャートである。 同実施形態における動作を説明するための模式図である。 本発明の第3の実施形態に係るWebアプリケーションシステムの構成を示す模式図である。 同実施形態におけるデータベース装置の構成を示す模式図である。 同実施形態における実行指示データ及び入力画面の構成を説明するための模式図である。 同実施形態における実行結果を説明するための模式図である。 同実施形態における動作を説明するためのフローチャートである。 同実施形態における動作を説明するための模式図である。 本発明の第4の実施形態に係るWebアプリケーションシステムの構成を示す模式図である。 同実施形態における動作を説明するためのフローチャートである。 同実施形態における動作を説明するための模式図である。
符号の説明
100…データベース装置、200…アプリケーションサーバ装置、210…業務処理プログラム、211…チェック処理部、212…実行処理部、213…実行データ、220…共通フレームワーク、221,242,442…実行制御部、222…データ保存処理部、230…アプリケーションプログラム、240,440…バックグラウンド処理実行部、241,441…保存データ呼出し部、243,443…仮想コンテナ、244,444…スケジューリング処理部、250,450…記憶部、260,460…HDD装置、270,470…CPU、300…クライアント装置、400…バックグラウンド処理管理サーバ装置、D1…実行指示データ、D1−1…実行機能指示情報、D1−2…実行条件指示情報、D1−3…更新指示情報、D2…バックグラウンド対象データ、D3…業務処理関連情報、D3−1…ユーザ個人情報、D3−2…勤務記録情報、D3−3…支給明細情報、D4…支給明細書データ、G1,G2…入力画面、g1,g10…チェックボックス、g2,g3…ラジオボタン、g4〜g6…ボタン、g7,g8…支給年月、g9…コメント。

Claims (6)

  1. データベース装置と、前記データベース装置を読出/書込可能なアプリケーションサーバ装置とを備えたWebアプリケーションシステムであって、
    前記データベース装置は、
    前記アプリケーションサーバ装置によりバックグラウンド処理で実行される業務処理プログラムの各機能を示す機能ID及びこの機能IDに対応するボタンIDが互いに関連付けられて予め記憶されたバックグラウンド対象記憶手段と、
    実行データ、機能ID、ボタンID及びバックグラウンド処理指示情報を含む第1実行指示情報を少なくとも記憶する実行指示情報記憶手段とを備えており、
    前記アプリケーションサーバ装置は、
    前記第1実行指示情報、又は実行データ、機能ID、ボタンID及びリアルタイム処理指示情報を含む第2実行指示情報のうちのいずれかの実行指示情報を受信すると、当該受信した実行指示情報がバックグラウンド処理指示情報を含むか否かを判定する第1判定手段と、
    前記受信した実行指示情報に含まれる機能ID及びボタンIDが、前記バックグラウンド対象記憶手段内の機能ID及びボタンIDに一致するか否かを判定する第2判定手段と、
    前記第1判定手段及び前記第2判定手段のうち、少なくとも一方の判定結果が否の場合には、前記受信した実行指示情報に基づいて、前記業務処理プログラムをリアルタイム処理により実行するリアルタイム実行手段と、
    前記第1判定手段及び前記第2判定手段による判定結果が両者とも否でない場合には、前記受信した実行指示情報である第1実行指示情報を前記実行指示情報記憶手段に保存する手段と、
    前記第1実行指示情報を保存した旨を当該第1実行指示情報の送信元に通知する手段と、
    前記通知の後、バックグラウンド処理により、前記実行指示情報記憶手段から前記第1実行指示情報に含まれる実行データを呼び出す実行データ呼出し手段と、
    前記呼び出した実行データに基づいて、前記業務処理プログラムをバックグラウンド処理により実行するバックグラウンド実行手段と、
    を備えたことを特徴とするWebアプリケーションシステム。
  2. 請求項1に記載のWebアプリケーションシステムにおいて、
    前記第1実行指示情報は、バックグラウンド処理を定期的に実行する場合の実行周期情報を含んでおり、
    前記実行データは、バックグラウンド処理の実行時間条件を含んでおり、
    前記バックグラウンド実行手段は、
    前記実行指示情報記憶手段内の実行データに含まれる実行時間条件を前記実行周期情報に基づいて定期的に更新する手段と、
    前記更新した実行時間条件に基づいて、前記業務処理プログラムをバックグラウンド処理により実行する手段と、
    を備えたことを特徴とするWebアプリケーションシステム。
  3. バックグラウンド処理で実行される業務処理プログラムの各機能を示す機能ID及びこの機能IDに対応するボタンIDが互いに関連付けられて予め記憶されており、且つ実行データ、機能ID、ボタンID及びバックグラウンド処理指示情報を含む第1実行指示情報を少なくとも記憶するデータベース装置に対し、
    前記データベース装置を読出/書込可能なアプリケーションサーバ装置であって、
    前記業務処理プログラムが記憶された業務処理プログラム記憶手段と、
    前記第1実行指示情報、又は実行データ、機能ID、ボタンID及びリアルタイム処理指示情報を含む第2実行指示情報のうちのいずれかの実行指示情報を受信すると、当該受信した実行指示情報がバックグラウンド処理指示情報を含むか否かを判定する第1判定手段と、
    前記受信した実行指示情報に含まれる機能ID及びボタンIDが、前記データベース装置内の機能ID及びボタンIDに一致するか否かを判定する第2判定手段と、
    前記第1判定手段及び前記第2判定手段のうち、少なくとも一方の判定結果が否の場合には、前記受信した実行指示情報に基づいて、前記業務処理プログラムをリアルタイム処理により実行するリアルタイム実行手段と、
    前記第1判定手段及び前記第2判定手段による判定結果が両者とも否でない場合には、前記受信した実行指示情報である第1実行指示情報を前記データベース装置に保存する手段と、
    前記第1実行指示情報を保存した旨を当該第1実行指示情報の送信元に通知する手段と、
    前記通知の後、バックグラウンド処理により、前記データベース装置から前記第1実行指示情報に含まれる実行データを呼び出す実行データ呼出し手段と、
    前記呼び出した実行データに基づいて、前記業務処理プログラムをバックグラウンド処理により実行するバックグラウンド実行手段と、
    を備えたことを特徴とするアプリケーションサーバ装置。
  4. 請求項3に記載のアプリケーションサーバ装置において、
    前記第1実行指示情報は、バックグラウンド処理を定期的に実行する場合の実行周期情報を含んでおり、
    前記実行データは、バックグラウンド処理の実行時間条件を含んでおり、
    前記バックグラウンド実行手段は、
    前記データベース装置内の実行データに含まれる実行時間条件を前記実行周期情報に基づいて定期的に更新する手段と、
    前記更新した実行時間条件に基づいて、前記業務処理プログラムをバックグラウンド処理により実行する手段と、
    を備えたことを特徴とするアプリケーションサーバ装置。
  5. バックグラウンド処理で実行される業務処理プログラムの各機能を示す機能ID及びこの機能IDに対応するボタンIDが互いに関連付けられて予め記憶されており、且つ実行データ、機能ID、ボタンID及びバックグラウンド処理指示情報を含む第1実行指示情報を少なくとも記憶するデータベース装置に対し、
    前記業務処理プログラムが記憶されたメモリを有し、前記データベース装置を読出/書込可能なアプリケーションサーバ装置に用いられるプログラムであって、
    前記アプリケーションサーバ装置のコンピュータを、
    前記第1実行指示情報、又は実行データ、機能ID、ボタンID及びリアルタイム処理指示情報を含む第2実行指示情報のうちのいずれかの実行指示情報を受信すると、当該受信した実行指示情報がバックグラウンド処理指示情報を含むか否かを判定する第1判定手段、
    前記受信した実行指示情報に含まれる機能ID及びボタンIDが、前記バックグラウンド対象記憶手段内の機能ID及びボタンIDに一致するか否かを判定する第2判定手段、
    前記第1判定手段及び前記第2判定手段のうち、少なくとも一方の判定結果が否の場合には、前記受信した実行指示情報に基づいて、前記業務処理プログラムをリアルタイム処理により実行するリアルタイム実行手段、
    前記第1判定手段及び前記第2判定手段による判定結果が両者とも否でない場合には、前記受信した実行指示情報である第1実行指示情報を前記データベース装置に保存する手段、
    前記第1実行指示情報を保存した旨を当該第1実行指示情報の送信元に通知する手段、
    前記通知の後、バックグラウンド処理により、前記データベース装置から前記第1実行指示情報に含まれる実行データを呼び出す実行データ呼出し手段、
    前記呼び出した実行データに基づいて、前記業務処理プログラムをバックグラウンド処理により実行するバックグラウンド実行手段、
    として機能させるためのプログラム。
  6. 請求項5に記載のプログラムにおいて、
    前記第1実行指示情報は、バックグラウンド処理を定期的に実行する場合の実行周期情報を含んでおり、
    前記実行データは、バックグラウンド処理の実行時間条件を含んでおり、
    前記バックグラウンド実行手段は、
    前記データベース装置内の実行データに含まれる実行時間条件を前記実行周期情報に基づいて定期的に更新する手段、
    前記更新した実行時間条件に基づいて、前記業務処理プログラムをバックグラウンド処理により実行する手段、
    を含んでいるプログラム。
JP2007121051A 2007-05-01 2007-05-01 Webアプリケーションシステム、装置及びプログラム Active JP4585540B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007121051A JP4585540B2 (ja) 2007-05-01 2007-05-01 Webアプリケーションシステム、装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007121051A JP4585540B2 (ja) 2007-05-01 2007-05-01 Webアプリケーションシステム、装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2008276614A JP2008276614A (ja) 2008-11-13
JP4585540B2 true JP4585540B2 (ja) 2010-11-24

Family

ID=40054473

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007121051A Active JP4585540B2 (ja) 2007-05-01 2007-05-01 Webアプリケーションシステム、装置及びプログラム

Country Status (1)

Country Link
JP (1) JP4585540B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6921544B2 (ja) * 2017-02-10 2021-08-18 キヤノン株式会社 アプリケーション、および情報処理装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006259928A (ja) * 2005-03-15 2006-09-28 Nippon Telegr & Teleph Corp <Ntt> データ収集装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1938193A4 (en) * 2005-07-28 2010-08-04 Oracle Int Corp SYSTEM AND METHOD FOR MANAGING RECIPES

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006259928A (ja) * 2005-03-15 2006-09-28 Nippon Telegr & Teleph Corp <Ntt> データ収集装置

Also Published As

Publication number Publication date
JP2008276614A (ja) 2008-11-13

Similar Documents

Publication Publication Date Title
US20080091774A1 (en) Customer relationship management system and method
US20070067373A1 (en) Methods and apparatuses to provide mobile applications
US9552229B2 (en) Systems and methods for task scheduling
CN101326540A (zh) 将会议信息从会议服务器提供至电子邮件服务器以存储在电子邮件数据库中
US8788416B1 (en) Advance payment notice to financial institutions
US8364752B2 (en) Determining availability based on percentage available
US20080313536A1 (en) Situation Sharing and Viewing
US20100241530A1 (en) Interactive job chart
US20150347969A1 (en) Systems and methods for providing an online publishing platform
JP4585540B2 (ja) Webアプリケーションシステム、装置及びプログラム
US20150348111A1 (en) Systems and methods for providing an online publishing platform
US20190279275A1 (en) Systems and method for coordinating trend data via a hub
US11461313B2 (en) Systems and methods for automatically creating and/or managing electronic data tables
JP2023090249A (ja) 知財情報管理システム、及び知財情報管理システムの知財情報提供方法
JP2003331113A (ja) ビジネスプロセスの自律改善システム及び方法
JP6746147B1 (ja) イベント実行システム、イベント実行方法及びプログラム
JP7080282B2 (ja) サーバ装置、サーバ装置の制御方法、及びサーバ装置の制御プログラム
JP4486595B2 (ja) ユーザ適合型ビジネスアプリケーションデータを生成するためのプログラム,同プログラムを記録した記録媒体,ユーザ適合型ビジネスアプリケーションデータ生成システムおよび方法
JP5608968B2 (ja) 作業計画管理装置、作業計画管理方法、及び作業計画管理プログラム
US20240152868A1 (en) Systems and Methods for Automating the Creation of Collaborative Boards Based on Different Triggering Events
KR20120132984A (ko) 재무관리 방법
JP2007066178A (ja) 情報管理システム、サーバ、プログラムおよび記録媒体
JP6867014B2 (ja) 作業記録共有装置、作業記録共有方法、及びプログラム
US20100131319A1 (en) Business process schedule
JP2024075985A (ja) 情報処理装置、情報処理方法及びプログラム

Legal Events

Date Code Title Description
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: 20100810

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100903

R150 Certificate of patent or registration of utility model

Ref document number: 4585540

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130910

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350