(57)【特許請求の範囲】
【請求項１】
アプリケーションに関するデータの入力画面の作成を支援する画面作成支援装置とアプリケーションを実行して前記入力画面の表示を制御するアプリケーション実行装置を備える画面制御システムにおいて、
前記画面作成支援装置は、
前記入力画面に含まれる部品画面において入力されるデータを含めて該入力画面において入力されるデータに対して行われるチェックを定義する情報としてのチェック定義情報を前記入力画面に含まれる操作部品に応じた処理に対応付けて生成する生成部を有し、
前記アプリケーション実行装置は、
前記入力画面を表示する表示部と、
前記表示部に表示された前記入力画面に含まれる操作部品の指定に応じて、該入力画面において入力されたデータを受け取ると、前記指定がなされた操作部品に応じた処理に対応付けられたチェック定義情報に基づいて前記データをチェックするチェック部
を有することを特徴とする画面制御システム。
【請求項２】
前記生成部は、前記チェック定義情報として、前記データに対して行われるチェックを定義した情報であるチェックパターン情報を前記入力画面に対応付けて生成し、前記データに対して行われるチェックを前記チェックパターン情報を用いて定義した情報であるチェックアクション情報を前記処理に対応付けて生成し、
前記チェック部は、前記チェックパターン情報及びチェックアクション情報に基づいて前記データをチェックすることを特徴とする請求項１に記載の画面制御システム。
【請求項３】
前記生成部は、複数のチェックパターン情報を含むチェックアクション情報を生成する場合に、チェックパターン情報により定義されるチェックの順序が指定されたチェックアクション情報を生成し、
前記チェック部は、前記順序で前記データをチェックすることを特徴とする請求項２に記載の画面制御システム。
【請求項４】
前記生成部は、前記チェック定義情報を前記入力画面に含まれる複数の操作部品それぞれに応じた処理に対応付けて生成し、
前記チェック部は、前記表示部に表示された前記入力画面に含まれる複数の操作部品のうちの１つの操作部品の指定に応じて、該入力画面において入力されたデータを受け取ると、前記指定がなされた１つの操作部品に応じた処理に対応付けられたチェック定義情報に基づいて前記データをチェックすることを特徴とする請求項１に記載の画面制御システム。
【請求項５】
アプリケーションに関するデータの入力画面の作成を支援する画面作成支援装置により作成された入力画面を表示し、
表示した入力画面に含まれる操作部品の指定に応じて、該入力画面において入力されたデータを受け取り、
前記入力画面に含まれる部品画面において入力されるデータを含めて該入力画面において入力されたデータに対して行われるチェックを定義する情報として前記画面作成支援装置が前記入力画面に含まれる操作部品に応じた処理に対応付けて生成したチェック定義情報を入力し、
前記チェック定義情報に基づいて前記データをチェックする
処理をコンピュータに実行させることを特徴とする画面制御プログラム。
【請求項６】
アプリケーションに関するデータの入力画面の作成を支援する画面作成支援プログラムにおいて、
前記入力画面に含まれる部品画面において入力されるデータを含めて該入力画面において入力されるデータに対して行われるチェックを定義する情報としてのチェック定義情報を前記入力画面に含まれる操作部品に応じた処理に対応付けて生成し、
前記入力画面の表示を制御するアプリケーション実行装置が、前記入力画面を表示し、表示した前記入力画面に含まれる操作部品の指定に応じて、該入力画面において入力されたデータを受け取ると、前記指定がなされた操作部品に応じた処理に対応付けられたチェック定義情報を読み出して該チェック定義情報に基づいて前記データをチェックするように、前記チェック定義情報を記憶装置に書き込む
処理をコンピュータに実行させることを特徴とする画面作成支援プログラム。
【請求項７】
アプリケーションに関するデータの入力画面の作成を支援する画面作成支援装置とアプリケーションを実行して前記入力画面の表示を制御するアプリケーション実行装置を備えるシステムが実行する画面制御方法において、
前記画面作成支援装置が、
前記入力画面に含まれる部品画面において入力されるデータを含めて該入力画面において入力されるデータに対して行われるチェックを定義する情報としてのチェック定義情報を前記入力画面に含まれる操作部品に応じた処理に対応付けて生成し、
前記アプリケーション実行装置が、
前記入力画面を表示し、
表示した前記入力画面に含まれる操作部品の指定に応じて、該入力画面において入力されたデータを受け取ると、前記指定がなされた操作部品に応じた処理に対応付けられたチェック定義情報に基づいて前記データをチェックする
ことを特徴とする画面制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面制御システム、画面制御プログラム、画面作成支援プログラム及び画面制御方法に関する。
【背景技術】
【０００２】
ユーザの入力に応じて情報の処理や表示を行う情報処理システムにおいては、ソフトウェアの設計者（以下、設計者という）は、処理の内容に応じて、ユーザの入力を受け付ける画面、処理結果を表示する画面など複数の画面を設計する必要がある。
【０００３】
画面設計においては、処理内容に応じて画面の種類が異なる場合でも、名前や住所の入力等、共通で利用できる部分も存在することから、プログラムコードと同様に、画面をプログラム部品として組み合わせた設計が行われている。
【０００４】
プログラム部品として利用可能な画面（以下、部品画面という）は、フォームに入力された入力値を受け付けるだけでなく、フォームに入力された文字列や数値等の入力値についてチェックを行うチェック処理を備えている。ここで、フォームとは、画面上でユーザが数値や文字等を入力する部分であり、入力フィールドとも呼ばれる。
【０００５】
また、入力されるデータのデータ形式及び妥当性をチェックするチェック処理が業務プログラムで用いられるデータ単位に定義されたソフトウェア部品を設計者に選択させ、選択されたソフトウェア部品を用いてソースプログラムを合成する従来技術がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３１８６１１７号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、複数の部品画面を組み合わせた画面（以下、全体画面という）の設計では、設計者は、単に部品画面を組み合わせるだけでは画面全体としてチェック処理を行う全体画面を設計することができないという問題がある。部品画面には、部品画面に設けられたボタンに対応付けられた処理にチェック処理のプログラムコードが埋め込まれている。したがって、設計者は、全体画面を設計する場合に、単に部品画面を組み合わせるだけでなく、全体画面に設けられたボタンに対応付けられた処理に部品画面のチェック処理のプログラムコードを埋め込む必要がある。
【０００８】
図１２は、全体画面が２つの部品画面をインクルードする場合の入力チェックの問題点を説明するための図である。図１２において、全体画面Ｃは、部品画面Ａ及び部品画面Ｂをインクルードする。部品画面Ａの「チェック」ボタン１に対応付けられた処理には、入力値に対する「登録番号チェック」及び「氏名チェック」を行うプログラムコードが埋め込まれている。部品画面Ｂの「チェック」ボタン２に対応付けられた処理には、入力値に対する「郵便番号チェック」及び「住所チェック」を行うプログラムコードが埋め込まれている。
【０００９】
この場合、設計者は、部品画面Ａ及び部品画面Ｂの「チェック」ボタンをユーザに押下させることなく、全体画面Ｃ上に設けた「実行」ボタン３をユーザに押下させてチェック処理が行われるように全体画面を設計する必要がある。すなわち、設計者は、入力値に対する「登録番号チェック」、「氏名チェック」、「郵便番号チェック」及び「住所チェック」を行うプログラムコードを全体画面Ｃ上に設けられた「実行」ボタン３に対応付けられた処理に埋め込む必要がある。
【００１０】
本発明は、１つの側面では、入力データに対するチェック処理を含めて設計者が部品画面を組み合わせて簡単に画面を設計することができる画面制御システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本願の開示する画面制御システムは、１つの態様において、アプリケーションに関するデータの入力画面の作成を支援する画面作成支援装置とアプリケーションを実行して入力画面の表示を制御するアプリケーション実行装置を備える。そして、画面作成支援装置は、入力画面に含まれる部品画面において入力されるデータを含めて該入力画面において入力されるデータに対して行われるチェックを定義する情報としてのチェック定義情報を生成する生成部を有する。このチェック定義情報は、入力画面に含まれる操作部品に応じた処理に対応付けられている。また、アプリケーション実行装置は、入力画面を表示する表示部と、表示部に表示された入力画面に含まれる操作部品の指定に応じて、該入力画面において入力されたデータを受け取ると、データをチェックするチェック部を有する。チェック部は、指定がなされた操作部品に応じた処理に対応付けられたチェック定義情報に基づいてデータをチェックする。
【発明の効果】
【００１２】
１実施態様によれば、設計者は部品画面を組み合わせて簡単に画面を設計することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、実施例に係る入力チェック方法を説明するための図である。
【図２】図２は、実施例に係る画面制御システムの構成を示す図である。
【図３】図３は、画面データ記憶部が画面ごとに記憶する画面データの構成を示す図である。
【図４】図４は、設計者が業務画面を作成するときに利用する画面の一例を示す図である。
【図５】図５は、設計者がチェックロジックを一覧するためのチェックロジック一覧画面の一例を示す図である。
【図６】図６は、設計者がチェックロジックを設定するためのチェックロジック設定画面の一例を示す図である。
【図７】図７は、チェックロジック設定画面で設計者が「チェック順」タブを選択した場合の画面の一例を示す図である。
【図８】図８は、画面作成支援装置による画面データ生成処理の手順を示すフローチャートである。
【図９】図９は、チェックロジック処理部によるチェックロジック処理の手順を示す第１のフローチャートである。
【図１０】図１０は、チェックロジック処理部によるチェックロジック処理の手順を示す第２のフローチャートである。
【図１１】図１１は、本実施例に係る画面作成支援プログラム又は画面制御プログラムを実行するコンピュータの構成を示す機能ブロック図である。
【図１２】図１２は、全体画面が２つの部品画面をインクルードする場合の入力チェックの問題点を説明するための図である。
【発明を実施するための形態】
【００１４】
以下に、本願の開示する画面制御システム、画面制御プログラム、画面作成支援プログラム及び画面制御方法の実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
【実施例】
【００１５】
まず、実施例に係る入力チェック方法について説明する。図１は、実施例に係る入力チェック方法を説明するための図である。図１において、全体画面Ｃは、部品画面Ａ及び部品画面Ｂをインクルードする。また、全体画面Ｃは、ユーザからデータが入力される項目として「入力項目１」及び「入力項目２」を有する。
【００１６】
部品画面Ａは、ユーザからデータが入力される項目として「登録番号」及び「氏名」を有し、部品画面Ｂは、ユーザからデータが入力される項目として「郵便番号」及び「住所」を有する。
【００１７】
実施例に係る入力チェック方法では、設計者は、各画面に対応付けて入力データに対するチェック処理をチェックパターンとして定義する。図１において、<pattern  name=”xxxxx”>から</pattern>までがチェックパターン情報であり、name=”xxxxx”はチェックパターン名が「xxxxx」であることを示す。<check>と</check>で囲まれた記述は、チェック処理を指定する。なお、チェックパターン情報はＸＭＬ（Extensible  Markup  Language）を用いて記述される。
【００１８】
具体的には、全体画面Ｃには、「入力項目１」及び「入力項目２」に対する入力データのチェックを行うことを定義したチェックパターン名「Ｃ１」のチェックパターンが対応付けられる。同様に、部品画面Ａには、「登録番号」及び「氏名」に対する入力データのチェックを行うことを定義したチェックパターン名「Ａ１」のチェックパターンが対応付けられる。また、部品画面Ｂには、「郵便番号」及び「住所」に対する入力データのチェックを行うことを定義したチェックパターン名「Ｂ１」のチェックパターンが対応付けられる。
【００１９】
また、設計者は、ユーザが処理を要求するために画面上に設けられたボタンに対応付けて、入力データに対するチェック処理をチェックパターンを用いてチェックアクションとして定義する。図１において、<action  name=”yyyyy”>から</action>までがチェックアクション情報であり、name=”yyyyy”はチェックアクション名が「yyyyy」であることを示す。なお、チェックアクション情報はＸＭＬを用いて記述される。
【００２０】
具体的には、全体画面Ｃの「実行」ボタン６には、チェックパターン名が「Ａ１」、「Ｃ１」及び「Ｂ１」であるチェックパターンで定義されるチェック処理が対応付けられる。<pattern  order=”n”>と</pattern>で囲まれた記述はチェック処理の順番を定義する。すなわち、全体画面Ｃの「実行」ボタン６がユーザにより押下されると、チェックパターン「Ａ１」で定義されるチェック処理が最初に実行される。そして、チェックパターン「Ｃ１」で定義されるチェック処理が２番目に実行され、チェックパターン「Ｂ１」で定義されるチェック処理が３番目に実行される。
【００２１】
このように、設計者は、チェックアクションにおいてチェック処理の順序を指定することにより、全体画面の上から下に向かって順に入力データのチェックが行われるように画面を設計することができる。
【００２２】
なお、従来の入力チェック方法では、設計者は、このようなチェック処理の順序を指定することができない。このため、従来の入力チェック方法では、全体画面が有する項目に対するチェック処理がまず行われ、その後で、部品画面が有する項目に対するチェック処理が行われる。したがって、設計者は、全体画面の上から下に向かって順に入力データのチェックが行われるように画面を設計することができない。
【００２３】
また、全体画面Ｃの「照会」ボタン７には、チェックパターン「Ａ１」で定義されるチェック処理だけが対応付けられる。このように、ユーザが処理を要求するために画面上に設けられたボタンに対応付けて入力データに対するチェック処理をチェックアクションとして定義することにより、設計者は、同一画面上に異なるチェック処理を実行する複数のボタンを設けることができる。
【００２４】
また、部品画面Ａの「チェック」ボタン８には、チェックパターン「Ａ１」で定義されるチェック処理が対応付けられ、部品画面Ｂの「チェック」ボタン９には、チェックパターン「Ｂ１」で定義されるチェック処理が対応付けられる。
【００２５】
なお、図１では、「登録番号」や「氏名」などの項目に対応してチェック処理が行われることだけを説明し、チェック処理の内容については説明を省略したが、チェック処理の詳細については後述する。また、ここでは、ＸＭＬを用いたチェックパターン情報及びチェックアクション情報について説明したが、設計者は、後述するように、画面からの入力によりチェックパターン情報及びチェックアクション情報を作成することができる。また、ここでは、説明の便宜上、チェックアクションはチェックパターンを用いて定義されているが、チェックアクションは、画面ＩＤとチェックパターンの組を用いて定義される。
【００２６】
次に、実施例に係る画面制御システムの構成について説明する。図２は、実施例に係る画面制御システムの構成を示す図である。図２に示すように、画面制御システムは、画面作成支援装置１００、業務処理装置２００、画面データ記憶部３００を有する。
【００２７】
画面作成支援装置１００は、業務処理装置２００が表示する画面を設計する設計者によって利用され、業務処理装置２００が画面の表示に用いる画面データを生成し、画面データ記憶部３００に書き込む。
【００２８】
画面作成支援装置１００は、ネットワーク２０を介してクライアント１０に接続され、設計者は、クライアント１０から画面作成支援装置１００にアクセスして業務処理装置２００が表示する画面を作成する。クライアント１０は、例えば、パソコンである。なお、ここでは説明の便宜上、１台のクライアント１０のみを示したが、画面作成支援装置１００にはネットワーク２０を介して複数のクライアントが接続される。
【００２９】
業務処理装置２００は、画面作成支援装置１００により作成された画面データを画面データ記憶部３００から読み出し、読み出した画面データを用いて画面表示を行い、ユーザからの指示に基づいて業務処理を実行する。
【００３０】
業務処理装置２００は、ネットワーク４０を介してクライアント３０に接続され、ユーザは、クライアント３０から業務処理装置２００を利用する。業務処理装置２００は、クライアント３０に画面を表示するように制御する。クライアント３０は、例えば、パソコンである。なお、ここでは説明の便宜上、１台のクライアント３０のみを示したが、業務処理装置２００にはネットワーク４０を介して複数のクライアントが接続される。
【００３１】
画面データ記憶部３００は、画面作成支援装置１００により作成された画面データを記憶する。図３は、画面データ記憶部３００が画面ごとに記憶する画面データの構成を示す図である。図３に示すように、画面データ記憶部３００が画面ごとに記憶する画面データ５０は、画面ＩＤ５１、画面名５２、ＪＳＰ（JavaServer  Pages）プログラム５３、Ｊａｖａ（登録商標、以下同様）プログラム５４、チェック定義ＸＭＬ情報５５を有する。
【００３２】
画面ＩＤ５１は、画面を識別するための識別子であり、画面名５２は、画面の名前である。ＪＳＰ（JavaServer  Pages）プログラム５３は、ＨＴＭＬ（HyperText  Markup  Language）ファイルにＪａｖａプログラムが埋め込まれたものであり、クライアント３０の要求に応じて実行される。ＪＳＰプログラム５３の実行結果は、ＨＴＭＬ形式でクライアント３０に送信される。クライアント３０で動作するＷｅｂブラウザはＨＴＭＬ形式の実行結果に基づいて画面表示を行う。ＪＳＰプログラム５３及びＪａｖａプログラム５４は、後述する共通制御部２１０で実行される。
【００３３】
チェック定義ＸＭＬ情報５５は、入力データに対するチェック処理を定義する情報であり、図１で示したチェックパターン情報及びチェックアクション情報を有する。業務処理装置２００は、チェック定義ＸＭＬ情報５５に基づいて入力データに対してチェック処理を行う。
【００３４】
図２において、クライアント１０及び画面作成支援装置１００は、設計者に画面の開発環境を提供し、クライアント３０及び業務処理装置２００は、画面が使用される運用環境を提供する。
【００３５】
画面作成支援装置１００は、画面編集部１１０、ジェネレータ１２０を有する。画面編集部１１０は、クライアント１０を利用する設計者からの指示に基づいて業務画面の作成を行う。また、画面編集部１１０は、クライアント１０を利用する設計者からの指示に基づいて、入力データに対するチェック処理の定義を作成する。すなわち、画面編集部１１０は、クライアント１０を利用する設計者からの指示に基づいて、チェックアクション及びチェックパターンの作成を行う。
【００３６】
画面編集部１１０は、サーブレットとして実現される。ジェネレータ１２０は、画面編集部１１０が作成した業務画面、チェック処理定義に基づいて、画面データ５０を生成し、画面データ記憶部３００に書き込む。
【００３７】
業務処理装置２００は、共通制御部２１０、業務処理実行部２２０を有する。共通制御部２１０は、様々な業務処理で共通に行われる画面表示制御に関する処理及び画面入力の受け付けに関する処理を行う。業務処理実行部２２０は、共通制御部２１０から呼び出され、業務処理を実行する。
【００３８】
共通制御部２１０は、対話部２１１、アクションハンドラ２１２、画面制御部２１３、チェックロジック処理部２１４を有する。対話部２１１は、クライアント３０とネットワーク４０を介して通信し、クライアント３０への画面表示データの送信、ユーザがクライアント３０上で押下したボタンに関する情報及び入力したデータの受付などを行う。対話部２１１は、サーブレットとして実現される。また、図３に示したＪＳＰプログラム５３は、対話部２１１で用いられる。
【００３９】
アクションハンドラ２１２は、対話部２１１が受け付けた情報に基づいて、ユーザがクライアント３０上で要求した処理すなわちアクションを特定する。そして、アクションハンドラ２１２は、特定したアクションに関する情報すなわちアクション情報とユーザにより入力されたデータとを画面制御部２１３に渡す。
【００４０】
また、アクションハンドラ２１２は、画面制御部２１３から画面更新に関する情報を取得し、対話部２１１に渡す。図３で示したＪａｖａプログラム５４の一部は、アクションハンドラ２１２で用いられる。
【００４１】
画面制御部２１３は、アクションハンドラ２１２から受け取った情報に基づいてクライアント３０に表示する画面を制御する。具体的には、画面制御部２１３は、ユーザにより入力されたデータとクライアント３０に表示されている画面の画面ＩＤとアクション情報とをチェックロジック処理部２１４に渡して入力データのチェックを指示する。
【００４２】
また、画面制御部２１３は、入力データのチェック結果をチェックロジック処理部２１４から受け取る。そして、入力データにエラーがない場合には、画面制御部２１３は、アクションハンドラ２１２が特定した処理を実行するように業務処理実行部２２０に指示するとともに、入力データを業務処理実行部２２０に渡す。図３で示したＪａｖａプログラム５４の一部は、画面制御部２１３が業務処理実行部２２０へ指示する場合に用いられる。一方、入力データにエラーがある場合には、画面制御部２１３は、アクションハンドラ２１２、対話部２１１を介してクライアント３０にエラー情報を通知する。
【００４３】
チェックロジック処理部２１４は、画面制御部２１３から、ユーザにより入力されたデータとクライアント３０に表示されている画面の画面ＩＤとアクション情報を受け取り、ユーザにより入力されたデータにエラーがあるか否かを判定する。
【００４４】
具体的には、チェックロジック処理部２１４は、画面ＩＤに対応するチェック定義ＸＭＬ情報５５を画面データ記憶部３００から読み込み、アクション情報に紐付けられたチェック定義情報、すなわち、チェックアクション情報、チェックパターン情報を取り出す。そして、チェックロジック処理部２１４は、取り出したチェック定義情報で定義されたチェック処理を外部呼出しにより実行し、チェック処理結果を画面制御部２１３に渡す。
【００４５】
ここで、「外部呼出しにより実行する」とは、チェックロジック処理部２１４が、ユーザから要求されたアクションの処理コードに埋め込まれたプログラムコードを実行するのではなく、別途定義されたプログラムコードを実行することである。
【００４６】
このように、チェックロジック処理部２１４は、アクション情報に紐付けられたチェック定義情報で定義されたチェック処理を外部呼出しにより実行する。したがって、設計者は、アクションに対応する処理のプログラムコードにチェック処理のプログラムコードを埋め込む必要がなく、設計者の作業を減らすことができる。
【００４７】
次に、設計者が業務画面の作成、チェック処理の設定に用いる画面について図４〜図７を用いて説明する。図４は、設計者が業務画面を作成するときに利用する画面の一例を示す図である。図４に示すように、画面６０には、作成される画面の画面ＩＤ６１、画面名６２が表示される。設計者は、ポップアップメニューのツールボックス６３から部品を選択して画面定義領域６４に配置することにより業務画面を作成する。
【００４８】
部品としては、プッシュボタン６３ａ、チェックボックス６３ｂ、数値入力フィールド６３ｃ、文字列入力フィールド６３ｄ、インクルードパネル６３ｅなどがある。インクルードパネル６３ｅは、設計者が部品画面をインクルードするときに用いられる。また、設計者によって「ビルド」ボタン６５が押下されると、ジェネレータ１２０が起動され、画面データ５０が生成される。
【００４９】
図５は、設計者がチェックロジックを一覧するためのチェックロジック一覧画面の一例を示す図である。ここで、チェックロジックとは、入力フィールドに対して設定されるチェック処理の定義であり、チェックロジックからチェックパターン情報及びチェックアクション情報が生成される。
【００５０】
図５に示すように、チェックロジック一覧画面７０は、チェックアクション名またはチェックパターン名が表示される名前欄７１、チェックロジックの削除、設定、複写にそれぞれ用いられるボタンが表示される削除欄７２、設定欄７３、複写欄７４を有する。
【００５１】
また、チェックロジック一覧画面７０は、チェックアクション又はチェックパターンの追加に用いられる「追加」ボタン７５を有する。設計者は、「追加」ボタン７５を押下することによって、チェックロジック一覧画面７０から新たなチェックアクション又はチェックパターンを追加することができる。
【００５２】
図６は、設計者がチェックロジックを設定するためのチェックロジック設定画面の一例を示す図である。図６に示すように、チェックロジック設定画面８０は、「必須」タブ８１、「いずれか必須」タブ８２、「関連必須」タブ８３、「最小桁数」タブ８４、「値大小」タブ８５、「項目大小」タブ８６、「日付大小」タブ８７、「チェック順」タブ８８を有する。
【００５３】
「必須」タブ８１〜「日付大小」タブ８７は、設計者が項目に対するチェック処理を指定するためのタブである。これらのタブで指定されたチェック処理からチェックパターン情報が生成される。チェック処理の種類としては、「必須」、「いずれか必須」、「関連必須」、「最小桁数」、「値大小」、「項目大小」、「日付大小」がある。
【００５４】
「必須」は、項目への値入力が必須である場合に用いられ、「必須」が指定されると、項目に値が設定されているか否かのチェックがチェック処理として行われる。図６は、「必須」タブ８１が選択されている場合を示し、「必須」タブ８１は、設計者が入力フィールド及び項目を指定するための項目入力欄８９ａ、チェック内容を示す表示欄８９ｂを有する。図６では、設計者は、「入力項目１」への値入力が必須であり、「入力項目１」に対応する「文字列入力フィールド」に対して値が設定されているか否かのチェックがチェック処理として行われるように指定している。
【００５５】
「いずれか必須」は、複数の項目のうち、いずれかの項目への値入力が必須である場合に用いられ、「いずれか必須」が指定されると、いずれかの項目に値が設定されているか否かのチェックがチェック処理として行われる。
【００５６】
「関連必須」は、項目Ａに値が入力されたとき、あるいは、項目Ａの値が特定の値のとき、項目Ｂへの値入力が必須である場合に用いられる。「関連必須」が指定されると、項目Ａに値が入力されたとき、あるいは、項目Ａの値が特定の値のとき、項目Ｂに値が設定されているか否かのチェックがチェック処理として行われる。
【００５７】
「最小桁数」は、入力値が所定の桁数以上であることが必要な場合に用いられ、「最小桁数」が指定されると、入力値が所定の桁数以上であるか否かのチェックがチェック処理として行われる。
【００５８】
「値大小」は、入力値に所定の値との大小関係が必要な場合に用いられ、「値大小」が指定されると、入力値が所定の値との大小関係を満たしているか否かのチェックがチェック処理として行われる。所定の大小関係としては、「２つの値が一致」、「一方が他方より大きい」、「一方が他方より小さい」、「一方が他方以上」、「一方が他方以下」、「２つの値が一致しない」などがある。
【００５９】
「項目大小」は、２つの数値項目間に所定の大小関係が必要な場合に用いられ、「値大小」が指定されると、２つの数値項目への入力値が所定の大小関係を満たしているか否かのチェックがチェック処理として行われる。
【００６０】
「日付大小」は、２つの日付項目間に所定の大小関係が必要な場合に用いられ、「日付大小」が指定されると、２つの日付項目への入力値が所定の大小関係を満たしているか否かのチェックがチェック処理として行われる。
【００６１】
図７は、チェックロジック設定画面８０で設計者が「チェック順」タブ８８を選択した場合の画面の一例を示す図である。図７に示すように、「チェック順」タブ８８が選択された場合のチェックロジック設定画面８０は、画面ＩＤ入力欄８９ｃ、チェックパターン名入力欄８９ｄ、チェック順表示欄８９ｅを有する。
【００６２】
画面ＩＤ入力欄８９ｃは、チェックアクションが定義される画面にインクルードされた部品画面の画面ＩＤの入力欄であり、チェックパターン名入力欄８９ｄは、インクルードされた部品画面に対応付けられたチェックパターンの名前の入力欄である。チェック順表示欄８９ｅには、チェックアクションでのチェックパターンの実行順が表示される。
【００６３】
設計者は、図７に示す画面上で、チェックアクション内で実行するチェック処理を画面ＩＤ及びチェックパターン名を用いて実行順に定義する。図７は、アクション「実行」に対して２つ目のチェックパターンが定義された場合を示す。すなわち、１つ目のチェックパターンとして、画面ＩＤが「Ｘ０００Ａ０００」に対応付けられたチェックパターン「Ａ１」が定義された後、自画面「Ｘ０００Ｃ０００」に対応付けられたチェックパターン「Ｃ１」が定義されている。図７に示す定義からチェックアクション「実行」のチェックアクション情報が生成される。
【００６４】
次に、画面作成支援装置１００による画面データ生成処理の手順について説明する。図８は、画面作成支援装置１００による画面データ生成処理の手順を示すフローチャートである。図８に示すように、画面作成支援装置１００の画面編集部１１０は、設計者から画面ＩＤ、画面名などの画面情報及び業務画面の部品の配置を受け付ける（ステップＳ１）。
【００６５】
そして、画面編集部１１０は、画面に対応付けられるチェックパターンの定義を設計者から受け付け（ステップＳ２）、画面のボタンに対応付けられるアクションにおいて実行されるチェックアクションの定義を設計者から受け付ける（ステップＳ３）。
【００６６】
そして、画面編集部１１０は、業務画面の枚数分ステップＳ１〜ステップＳ３の処理を繰り返す。なお、ステップＳ１〜ステップＳ３の処理順序はこの順序である必要はなく、画面編集部１１０は、これらのステップを任意の順序で実行することができる。また、業務画面の修正、チェックパターンやアクションパターンの定義の変更に基づいて、ステップＳ１、ステップＳ２、ステップＳ３の各処理は任意の回数だけ実行される。
【００６７】
そして、図４に示した「ビルド」ボタン６５が設計者によって押下されると、画面編集部１１０が設計者から受け付けた情報に基づいて、ジェネレータ１２０が画面データ５０を画面ごとに生成し（ステップＳ４）、画面データ記憶部３００に書き込む。
【００６８】
このように、画面作成支援装置１００が画面データ５０を生成することによって、クライアント３０に表示する画面を共通制御部２１０が画面データ５０を用いて制御することができる。
【００６９】
次に、チェックロジック処理部２１４によるチェックロジック処理の手順について図９及び図１０を用いて説明する。図９は、チェックロジック処理部２１４によるチェックロジック処理の手順を示す第１のフローチャートである。第１のフローチャートでは、インクルード画面がない場合の処理が示されている。
【００７０】
図９に示すように、チェックロジック処理部２１４は、画面制御部２１３から受け取った画面ＩＤのチェック定義ＸＭＬ情報５５を取得する（ステップＳ１１）。そして、チェックロジック処理部２１４は、取得したチェック定義ＸＭＬ情報５５から、画面制御部２１３から受け取ったアクション情報に基づいて、ユーザが要求したアクションに紐づくチェック定義情報を取り出す（ステップＳ１２）。
【００７１】
すなわち、チェックロジック処理部２１４は、アクションに紐づくチェックアクション情報をチェック定義ＸＭＬ情報５５から取り出し、取り出したチェックアクション情報に基づいてチェックパターン情報をチェック定義ＸＭＬ情報５５から取り出す。
【００７２】
そして、チェックロジック処理部２１４は、取り出したチェックパターン情報に定義されたチェック処理を外部呼出しにより実行する（ステップＳ１３）。そして、チェックロジック処理部２１４は、チェック結果を画面制御部２１３に渡す（ステップＳ１４）。
【００７３】
このように、チェックロジック処理部２１４が、チェック定義ＸＭＬ情報５５に基づいて、チェック処理を外部呼出しによって実行することによって、設計者はアクションに対応付けられる処理からチェック処理のプログラムコードを取り除くことができる。
【００７４】
図１０は、チェックロジック処理部２１４によるチェックロジック処理の手順を示す第２のフローチャートである。第２のフローチャートでは、インクルード画面がある場合の処理が示されている。
【００７５】
図１０に示すように、チェックロジック処理部２１４は、画面制御部２１３から受け取った画面ＩＤのチェック定義ＸＭＬ情報５５を取得する（ステップＳ２１）。そして、チェックロジック処理部２１４は、取得したチェック定義ＸＭＬ情報５５から、画面制御部２１３から受け取ったアクション情報に基づいて、ユーザが要求したアクションに紐づくチェック定義情報を取り出す（ステップＳ２２）。
【００７６】
すなわち、チェックロジック処理部２１４は、アクションに紐づくチェックアクション情報をチェック定義ＸＭＬ情報５５から取り出し、取り出したチェックアクション情報に基づいてチェックパターン情報をチェック定義ＸＭＬ情報５５から取り出す。
【００７７】
また、チェックロジック処理部２１４は、チェックアクション情報から、インクルードされている部品画面の画面ＩＤを取得し（ステップＳ２３）、取得した画面ＩＤのチェック定義ＸＭＬ情報５５を取得する。そして、チェックロジック処理部２１４は、取得したチェック定義ＸＭＬ情報５５から、部品画面のチェックパターン情報を取り出す（ステップＳ２４）。なお、チェックロジック処理部２１４は、ステップＳ２３及びステップＳ２４の処理を、インクルードされている画面数だけ繰り返す。
【００７８】
そして、チェックロジック処理部２１４は、チェックアクション情報で定義された順序で、チェックパターン情報を並び替え（ステップＳ２５）、並び替えた順序で、チェックパターン情報に定義されたチェック処理を外部呼出しにより実行する（ステップＳ２６）。そして、チェックロジック処理部２１４は、チェック結果を画面制御部２１３に渡す（ステップＳ２７）。
【００７９】
このように、チェックロジック処理部２１４は、部品画面のチェック定義ＸＭＬ情報５５を取得し、取得したチェック定義ＸＭＬ情報５５から、部品画面のチェックパターン情報を取り出す。そして、チェックロジック処理部２１４は、部品画面のチェックパターン情報に定義されたチェック処理を実行する。したがって、チェックロジック処理部２１４は、部品画面がインクルードされた画面について、部品画面を含めたチェック処理を行うことができる。
【００８０】
上述してきたように、実施例では、画面作成支援装置１００が、部品画面で入力されるデータを含めて、ユーザが要求するアクションに対する入力データのチェック処理を定義したチェック定義から画面ごとにチェック定義ＸＭＬ情報５５を生成する。そして、業務処理装置２００のチェックロジック処理部２１４が、チェック定義ＸＭＬ情報５５に基づいて、部品画面で入力されるデータを含めて、外部呼出しにより入力データのチェックを行う。したがって、設計者は、ユーザが要求するアクションの処理を実行するプログラムコードに、部品画面で入力されるデータのチェックを行うプログラムコードを埋め込む必要がなく、部品画面を組み合わせて容易に画面を設計することができる。
【００８１】
また、実施例では、チェック定義には、画面に対応付けられたチェックパターン定義と、ユーザが要求するアクションに対応付けられたチェックアクション定義が含まれ、チェックアクション定義は、チェックパターンにより定義される。そして、全体画面が複数の部品画面を含み、チェックアクション定義が複数のチェックパターンを含む場合には、設計者は、チェックパターンの実行順序をチェックアクションで指定することができる。したがって、部品画面が全体画面の入力項目より上に配置されている時に、設計者は、部品画面の入力項目に対するチェックが全体画面の入力項目に対するチェックより先に行うように指定することができ、画面の上から順に入力チェックを実行させることができる。
【００８２】
なお、実施例では、画面作成支援装置１００について説明したが、画面作成支援装置１００が有する構成をソフトウェアによって実現することで、同様の機能を有する画面作成支援プログラムを得ることができる。同様に、画面制御部２１３及びチェックロジック処理部２１４が有する構成をソフトウェアによって実現することで、同様の機能を有する画面制御プログラムを得ることができる。そこで、画面作成支援プログラム又は画面制御プログラムを実行するコンピュータについて説明する。
【００８３】
図１１は、実施例に係る画面作成支援プログラム又は画面制御プログラムを実行するコンピュータの構成を示す機能ブロック図である。図１１に示すように、コンピュータ４００は、ＲＡＭ４１０と、ＣＰＵ４２０と、ＨＤＤ４３０と、ＬＡＮインタフェース４４０と、入出力インタフェース４５０と、ＤＶＤドライブ４６０とを有する。
【００８４】
ＲＡＭ４１０は、プログラムやプログラムの実行途中結果などを記憶するメモリであり、ＣＰＵ４２０は、ＲＡＭ４１０からプログラムを読み出して実行する中央処理装置である。ＨＤＤ４３０は、プログラムやデータを格納するディスク装置であり、ＬＡＮインタフェース４４０は、コンピュータ４００をＬＡＮ経由で他のコンピュータに接続するためのインタフェースである。入出力インタフェース４５０は、マウスやキーボードなどの入力装置及び表示装置を接続するためのインタフェースであり、ＤＶＤドライブ４６０は、ＤＶＤの読み書きを行う装置である。
【００８５】
そして、コンピュータ４００において実行される画面作成支援プログラム又は画面制御プログラム４１１は、ＤＶＤに記憶され、ＤＶＤドライブ４６０によってＤＶＤから読み出されてコンピュータ４００にインストールされる。あるいは、画面作成支援プログラム又は画面制御プログラム４１１は、ＬＡＮインタフェース４４０を介して接続された他のコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読み出されてコンピュータ４００にインストールされる。そして、インストールされた画面作成支援プログラム又は画面制御プログラム４１１は、ＨＤＤ４３０に記憶され、ＲＡＭ４１０に読み出されてＣＰＵ４２０によって実行される。
【００８６】
また、実施例では、業務処理装置について説明したが、本発明はこれに限定されるものではなく、画面を表示してユーザにデータを入力させる機能を有する他のアプリケーションを実行する装置にも同様に適用することができる。
【００８７】
また、実施例では、チェックアクション情報及びチェックパターン情報がＸＭＬを用いて記述される場合について説明した。しかしながら、本発明はこれに限定されるものではなく、他の言語などを用いてチェックアクション情報及びチェックパターン情報が記述される場合にも同様に適用することができる。
【００８８】
また、実施例では、クライアント１０がネットワーク２０を介して画面作成支援装置１００に接続される場合及びクライアント３０がネットワーク４０を介して業務処理装置２００に接続される場合について説明した。しかしながら、本発明はこれに限定されるものではなく、クライアント１０が画面作成支援装置１００に直接接続される場合、クライアント３０が業務処理装置２００に直接接続される場合にも同様に適用することができる。
【符号の説明】
【００８９】
１，２，８，９    「チェック」ボタン
３，６    「実行」ボタン
７    「照会」ボタン
１０，３０    クライアント
２０，４０    ネットワーク
５０    画面データ
５１    画面ＩＤ
５２    画面名
５３    ＪＳＰプログラム
５４    Ｊａｖａプログラム
５５    チェック定義ＸＭＬ情報
６０    画面
６１    画面ＩＤ
６２    画面名
６３    ツールボックス
６３ａ    プッシュボタン
６３ｂ    チェックボックス
６３ｃ    数値入力フィールド
６３ｄ    文字列入力フィールド
６３ｅ    インクルードパネル
６４    画面定義領域
６５    「ビルド」ボタン
７０    チェックロジック一覧画面
７１    名前欄
７２    削除欄
７３    設定欄
７４    複写欄
７５    「追加」ボタン
８０    チェックロジック設定画面
８１    「必須」タブ
８２    「いずれか必須」タブ
８３    「関連必須」タブ
８４    「最小桁数」タブ
８５    「値大小」タブ
８６    「項目大小」タブ
８７    「日付大小」タブ
８８    「チェック順」タブ
８９ａ    項目入力欄
８９ｂ    表示欄
８９ｃ    画面ＩＤ入力欄
８９ｄ    チェックパターン名入力欄
８９ｅ    チェック順表示欄
１００    画面作成支援装置
１１０    画面編集部
１２０    ジェネレータ
２００    業務処理装置
２１０    共通制御部
２１１    対話部
２１２    アクションハンドラ
２１３    画面制御部
２１４    チェックロジック処理部
２２０    業務処理実行部
３００    画面データ記憶部
４００    コンピュータ
４１０    ＲＡＭ
４１１    画面作成支援プログラム又は画面制御プログラム
４２０    ＣＰＵ
４３０    ＨＤＤ
４４０    ＬＡＮインタフェース
４５０    入出力インタフェース
４６０    ＤＶＤドライブ
【図１】
0005962116.tif 000002
【図２】
0005962116.tif 000003
【図３】
0005962116.tif 000004
【図４】
0005962116.tif 000005
【図５】
0005962116.tif 000006
【図６】
0005962116.tif 000007
【図７】
0005962116.tif 000008
【図８】
0005962116.tif 000009
【図９】
0005962116.tif 000010
【図１０】
0005962116.tif 000011
【図１１】
0005962116.tif 000012
【図１２】
0005962116.tif 000013