説明

入出力画面生成システム

【課題】
業務管理システムで用いる入出力画面において、ユーザの要求に応じて、入出力画面に表示される項目が自動的に設定・再配置される入出力画面生成システムを提供することを目的とする。
【解決手段】
入出力画面に表示するパネルと、そのパネルに含まれる項目とを、ユーザごとに記憶する状態管理テーブルと、各項目の入力属性と桁数の情報とを少なくとも含む属性情報を記憶する入出力領域定義テーブルと、入力属性ごとのコントロールに関する情報を記憶するモジュール定義テーブルと、それらの各テーブルの情報を用いて入出力画面のパネルと項目の配置処理を実行する画面構成部品制御手段と、を有する入出力画面生成システム。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、業務管理システムで用いる入出力画面において、ユーザの要求に応じて、入出力画面に表示される項目が自動的に設定・再配置される入出力画面生成システムに関する。
【背景技術】
【0002】
企業などで業務を遂行するために、商品管理、販売管理、給与管理など様々な分野の業務を管理するための業務管理システムを用いている。そして業務管理システムにおいて、データの追加や修正、変更等の作業行う場合には所定の画面(これを「入出力画面」という)を起動することにより、上記作業を実行する。図7に従来の入出力画面の一例を示す。
【0003】
図7に示す従来の入出力画面では、そのウィンドウサイズや各項目の配置は固定されている。そしてどのユーザにとっても必要な基本項目、各ユーザが独自に拡張したい拡張項目とタブによって切り替えられるようになっている。
【0004】
また従来の入出力画面のほかの一例として図8がある。この場合、基本項目と拡張項目がタブによって切り替えられるのは上記図8と同じであるが、図8の場合には、基本項目として「名称」、「住所」のほかに、「分類」、「特記」の各項目が設けられた場合である。このようにすることで一つの画面で多数の項目を入力することはできる。
【0005】
更に下記特許文献1には、ウィンドウ中のアイコンの一覧性向上を目的としたアイコンのスケーリングに関するシステムが記載されている。
【0006】
【特許文献1】特開2002−55807号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
上述の従来の入出力画面のうち、図7の場合には、タブを用いることで複数の項目を入力できるし、すべてのユーザにとって必要な基本項目と、各ユーザごとに拡張して個別に必要な拡張項目を、タブごとに分けて整理されて表示されるので、有益な面もある。しかし、例えば基本項目の「住所」と、拡張項目の項目「特記事項2」とを変更するとき、ユーザはタブを切り替えた上で入力する必要がある。しかしユーザとしては、タブを切り替えるのは煩雑であるし、また基本項目のうちの空白部分に、拡張項目の各項目が位置しており、全体として一画面で表示された方が操作性、一覧性の面で便利である。
【0008】
また図8の場合は、図7の場合における問題を多少は解決し得ようが、一つの画面で表示される項目が増えてしまっている。そしてすべてのユーザにとって基本項目のタブに表示されている項目が必要とは限らない。そのためユーザにとって必要ではない項目については表示させたくない、といった要望があるが対応することは難しい。
【0009】
このように、マスターの種類や項目数の違いによって表示される入出力画面は、それぞれに応じた適切な画面が表示されることが好ましいが、上述のように従来ではそれが行えていない。なぜならばマスターの種類や項目数の違いによって各項目の配置などを変更した画面を用意するには様々な表示プログラムが必要となり、プログラム作成上、非常に煩雑であるばかりか、後にカスタマイズなどを行う場合には、これらの各表示プログラムに同じような修正を行わなければならない可能性もあるからである。
【0010】
またこれによりカスタマイズに要する時間が増大し、修正箇所も増えるため、予期しないバグが発生する危険性も高まってしまう。
【0011】
結局のところ、操作性と、プログラム作成・カスタマイズなどの問題点を比較衡量した結果、通常は、上述のように図7や図8のような、すべてのユーザにとって共通の表示プログラムが用いられることとなっている。
【0012】
そのため、入出力画面の操作性・一覧性の向上と、表示プログラムの作成・カスタマイズ上の煩雑さ解消とを同時に実現する解決策が待望されている。
【0013】
なお上記特許文献1を用いることによって、確かにアイコンのスケーリングを実現することができるが、これはアイコンという入出力領域を持たない項目の再配置に過ぎず、本発明のように入出力領域を備える入出力画面の自動生成システムとは技術分野が全く異なる。
【課題を解決するための手段】
【0014】
本発明者は上記問題点に鑑み、業務管理システムの入出力画面について、ユーザの要求に応じて、入出力画面の項目が自動的に設定・配置される入出力画面生成システムを発明した。
【0015】
請求項1の発明は、業務管理システムで用いる入出力画面を自動的に生成する入出力画面生成システムであって、前記入出力画面生成システムは、前記入出力画面における入出力領域を含む画面構成部品の配置処理を実行する画面構成部品制御手段、を有しており、前記画面構成部品制御手段は、予め表示指示が設定されている、または新たに表示指示がなされた前記入出力領域を表示し、前記入出力画面のサイズ変更及び/または前記入出力領域の数の変更に伴って前記画面構成部品のサイズ変更及び/または再配置処理を実行する、入出力画面生成システムである。
【0016】
本発明を用いることで、業務管理システムの入出力画面について、ユーザの要求に応じて入出力画面の各項目を自動的に設定・配置することが可能となる。これによってユーザにとっては、入出力画面の操作性・一覧性が向上する。またシステムの作成側にとっては、複雑な表示プログラムを作成することがなくなるので、プログラムの作成・カスタマイズ上の煩雑さが解消される。
【0017】
請求項2の発明は、業務管理システムで用いる入出力画面を自動的に生成する入出力画面生成システムであって、前記入出力画面生成システムは、前記入出力画面に表示するパネルと、そのパネルに含まれる項目とを、ユーザごとに記憶する状態管理テーブルと、前記各項目の入力属性と桁数の情報とを少なくとも含む属性情報を記憶する入出力領域定義テーブルと、前記入力属性ごとのコントロールに関する情報を記憶するモジュール定義テーブルと、前記入出力画面のパネルと項目の配置処理を実行する画面構成部品制御手段と、を有しており、前記画面構成部品制御手段は、前記入出力画面の表示要求を受け付けると、前記ユーザの識別情報に基づいて、そのユーザの入出力画面に表示するパネルとその項目の情報を前記状態管理テーブルから取得し、前記取得した各項目の情報に基づいて、項目ごとの前記属性情報を前記入出力領域定義テーブルから取得し、前記取得した属性情報における入力属性に基づいて、入出力領域のコントロールを前記モジュール定義テーブルを用いて決定し、前記取得した属性情報における桁数と、前記項目の項目名のサイズとに基づいて、パネルサイズを決定し、前記決定した各パネルサイズと前記入出力画面のウィンドウサイズとを比較することにより、前記各パネルを前記入出力画面のウィンドウに配置することで、入出力画面を自動的に生成する、入出力画面生成システムである。
【0018】
本発明によっても、上述の発明と同様の技術的効果を得ることが可能となる。
【0019】
更に、前記状態管理テーブルには、更に、前記パネルに含まれる項目を表示するか否かを示す情報を記憶しており、前記画面構成部品制御手段は、前記状態管理テーブルから項目の情報を取得する際に、表示する項目のみを取得する、入出力画面生成システムのように構成しても良い。
【0020】
本発明のように構成することで、ユーザが選択した、ユーザにとって必要な項目のみが表示されることとなる。これによってユーザは自らが不要と判断した項目については、非表示の選択をしておけば、それが入出力画面において表示されることがなくなる。
【0021】
更に、前記入出力画面生成システムは、更に、前記パネルを入出力画面のウィンドウに配置する前に、縦方向に配置するパネルにおける各項目の位置を整列させる整列手段、を有する入出力画面生成システムのように構成しても良い。
【0022】
縦に配置されている各項目名は整列して表示されている方が見かけ上、良い。そのため本発明を用いることで、それを実現することができる。
【0023】
更に、前記整列手段は、前記縦方向に配置するパネルの各項目の項目名の文字数のうち、最大の文字数を取得し、前記縦方向に配置するパネルの各項目のサイズをその最大の文字数の幅に揃える、ことで整列処理を実行する、入出力画面生成システムのように構成しても良い。
【0024】
整列処理にはいくつか方法があるが、本発明のように実行することが好ましい。
【0025】
更に、前記画面構成部品制御手段は、前記決定した各パネルのサイズと、前記入出力画面のウィンドウサイズとを比較した結果、ウィンドウサイズが各パネルのサイズよりも小さい場合には、スクロール表示または縮小表示のいずれかを実行して、前記各パネルを前記入出力画面のウィンドウに配置する、入出力画面生成システムのように構成しても良い。
【0026】
入出力画面のウィンドウサイズが、各パネルのサイズの合計よりも小さい場合がある。その場合には、スクロール表示、あるいは縮小表示をすることで対応することが好ましい。
【発明の効果】
【0027】
本発明の入出力画面生成システムによって、業務管理システムの入出力画面について、ユーザの要求に応じて、入出力画面の項目が自動的に設定・再配置される。そのため、入出力画面の操作性・一覧性の向上と、表示プログラムの作成・カスタマイズ上の煩雑さ解消とを同時に実現することが可能となる。
【発明を実施するための最良の形態】
【0028】
本発明の入出力画面生成システム1のシステム構成の一例を図1に示す。
【0029】
入出力画面生成システム1は、アプリケーションサーバ2に備えられるサーバモジュールと、データベースサーバ3に備えられる各種データと、クライアント端末4により構成される。
【0030】
なお本発明の入出力画面生成システム1は、業務管理システムの一部として備えられていることが好ましい。業務管理システムは、企業などの業務遂行にあたり必要な業務ソフトウェアとこのソフトウェアを実行するハードウェア(コンピュータ端末やサーバなど)から構成されるシステムであり、例えば会計管理システム、販売・購買管理システム、人事・給与管理システム、顧客管理システム(CRMシステム)、営業支援システム(SFA(Sales Force Automation)システム)などがある。またこれらの各システムがモジュールとしてリアルタイムに連携し、データを一括管理してもよい。
【0031】
入出力画面生成システム1は、本発明の処理を制御するサーバやコンピュータ端末上で実現される。図2にサーバやコンピュータ端末のハードウェアの概念図を模式的に示す。これらのサーバやコンピュータ端末には、プログラムの演算処理を実行するCPUなどの演算装置20と、情報を記憶するRAMやハードディスクなどの記憶装置21とを少なくとも有している。サーバやコンピュータ端末上で実現する各機能(各手段)は、その処理を実行する手段(プログラムやモジュールなど)が演算装置20に読み込まれることでその処理が実行される。各機能は、記憶装置21に記憶した情報をその処理において使用する場合には、該当する情報を当該記憶装置21から読み出し、読み出した情報を適宜、演算装置20における処理に用いる。当該サーバやコンピュータ端末には、演算装置20の処理結果や記憶装置21に記憶する情報をインターネットやLANなどのネットワークを介して送受信する通信装置24、キーボードやマウスやテンキーなどの入力装置23、ディスプレイなどの表示装置22を有していても良い。
【0032】
本発明における各機能(各手段)は、その機能が論理的に区別されているのみであって、物理上あるいは事実上は同一の領域を為していても良い。また各機能は、一または複数のプログラムやモジュール、装置等により処理することも可能である。
【0033】
データベースサーバ3は状態管理テーブル8と入出力領域定義テーブル9とユーザ情報管理テーブル10とモジュール定義テーブル11とを少なくとも有している。
【0034】
状態管理テーブル8は、入出力画面における項目の入出力領域の表示・非表示の情報と、各項目がどのパネルに包含されるかの情報を管理するテーブルである。図9に状態管理テーブル8の概念図を示す。なお状態管理テーブル8は、マスター別に、複数のユーザごとに設けられる。なおここでは「表示」とされているのはその項目が入出力画面において表示される項目、「非表示」とされているのはその項目が入出力画面において表示されない項目である。
【0035】
入出力領域定義テーブル9は、入出力画面における項目の入出力領域の入力属性(例えば全角文字、半角カタカナ、日付など)と、表示される桁数(文字数)などの属性情報を定義するテーブルである。図10に入出力領域定義テーブル9の概念図を示す。図10の場合には、商品マスターの項目を定義する場合の入出力領域定義テーブル9の例である。なお入出力領域定義テーブル9には、予め設定されている初期テーブルと、新たにユーザが設定する入出力領域の情報を管理する拡張テーブルとの2種類ある。後述する画面構成部品制御手段が入出力領域定義テーブル9を参照する際には、この初期テーブルと拡張テーブルの双方を参照する。また初期テーブルと拡張テーブルに分けずに、一つのテーブルで管理しても良い。
【0036】
ユーザ情報管理テーブル10は、各ユーザの入出力に関する制限情報が定義されているテーブルである。図11にユーザ情報管理テーブル10の概念図を示す。
【0037】
モジュール定義テーブル11は、入出力領域を表示するためのソフトウェアモジュールを決定するための情報が定義されたテーブルである。図12にモジュール定義テーブル11の概念図を示す。なお図12ではコントロール名を模式的に示しているが、実際に定義されているのはこれらのコントロール(ソフトウェアモジュール)が格納された領域を示す情報である。図13に、図12の各コントロールが実行された場合の入出力領域の表示状態を示す。
【0038】
ここでは項目名と入出力領域を表示できるコントロール(複合コントロール)を示したが、項目名のみを表示するためのコントロールと、入出力領域を表示するためのコントロールのように、単一の機能を持つコントロールを複数用意して、実行時に組み合わせて項目を表示するようにしても良い。例えば、「商品名」という項目名の場合、システムは入出力領域定義テーブル9を参照し、「属性=全角文字」、「桁数=20」を取得する。項目名表示用に全角文字出力用コントロールと、入出力領域表示用に全角文字入力用コントロールとを呼び出し、全角文字出力用コントロールには「商品名」から3文字分の表示域を確保して商品名を表示させ、かつ、20桁が入力できる入出力領域をその横に表示する。このように、項目名から単一の機能を持つコントロールを複数決定して実行し、組み合わせて表示することによって複雑な入出力領域を表示しても良い。
【0039】
また、範囲を入出力できるコントロールについては、ある一時点のみの表示を行うこともできる。例えば「XXXX/XX/XX」から「YYYY/YY/YY」という入力領域を表示するコントロールは、ユーザが「2007/10/01」と始期を入力し、「から」部分を「のみ」と変更すると「のみ」の部分と終期「YYYY/YY/YY」の部分を非表示にして「2007/10/01」と表示する。このようにすることで特化したコントロールを必要以上にシステムが保持する必要がない。
【0040】
なおデータベースサーバ3には、更にマスターテーブルを備えていても良い。マスターテーブルには、業務管理システムで用いるデータが記憶されており、例えば商品マスターテーブルや顧客マスターテーブルとして管理されている。
【0041】
アプリケーションサーバ2のサーバモジュールは、画面構成部品制御手段5と起動制御手段6と整列手段7とを有する。
【0042】
画面構成部品制御手段5は、入出力画面上に少なくとも一つの画面構成部品を配置し、入出力画面のウィンドウサイズの変更や、表示される入出力領域の数などによって、画面構成部品の形状を変更し、あるいは再配置を行う。
【0043】
画面構成部品制御手段5は、ソフトウェアモジュールとしてアプリケーションサーバ2から、各クライアント端末4に配信され、クライアント端末4側に組み込まれて動作する。画面構成部品制御手段5に変更があった場合には、各クライアント端末4にアプリケーションサーバ2が再度配信する。カスタマイズ、アップデートなどにより変更が生じた場合でも、各クライアント端末4に個別にインストールする必要がなく、クライアント端末4の管理が容易となる。なお、アプリケーションサーバ2からクライアント端末4に配信せず、クライアント端末4側はウェブブラウザなどを用いてアプリケーションサーバ2の画面構成部品制御手段5と入力データと画面表示用データを送受信するのみであっても良い。この場合にはいわゆるウェブシステムとなる。
【0044】
なお画面構成部品には一または複数の入出力領域が表示される。例えば入出力画面上の入出力領域(例えば商品名、索引といった入出力領域)とその見出し(例えば基本項目)は状態管理テーブル8によって一つの画面構成部品として関連づけられている。画面構成部品は関連する入出力領域のひとまとまりの単位であり、入出力領域の配置のための単位として用いられる。
【0045】
起動制御手段6は、ユーザ情報管理テーブル10に基づいて、各ユーザの入出力を制限する。すなわちユーザが使用不可能な項目について入出力を行えないような制限処理を実行する。例えばユーザ情報管理テーブル10が図11の場合、ID「002」のユーザは、「業務管理者」の権限であり、その担当業務は「販売」である。そして「業務管理者」の権限では、「ほかの業務の全項目」を変更することはできない。そのため、販売以外のほかの業務の全項目について、状態管理テーブル8の対応する項目名(販売以外のほかの業務の全項目)の入出力領域について非表示とし、かつ変更不可とする制御を行う。この処理は画面構成部品制御手段5の処理と並行して実行される。
【0046】
整列手段7は、入出力画面に表示した画面構成部品の入出力領域について、縦方向の整列を行う。なお整列手段7は、画面構成部品制御手段5と同様に、ソフトウェアモジュールとしてアプリケーションサーバ2から、各クライアント端末4に配信され、クライアント端末4側に組み込まれて動作することが好ましい。
【0047】
次に本発明の入出力画面生成システム1の処理プロセスの一例を、図3乃至図6のフローチャートと、図1のシステム構成の概念図とを用いて説明する。なお以下の実施例では、業務管理システムとして商品管理システムであり、入出力領域定義テーブル9として商品マスター項目定義テーブルの場合を説明する。
【0048】
まず初期状態の入出力画面がクライアント端末4で表示される場合を説明する。
【0049】
ユーザはクライアント端末4において所定の操作を行うと、その操作入力をクライアント端末4で受け付け、商品管理システムが起動される。そしてユーザがID、パスワードなどを入力すると、それがクライアント端末4からアプリケーションサーバ2に渡され、アプリケーションサーバ2においてID、パスワードの認証を行う。この結果、正常に認証が行われた場合には、クライアント端末4において商品管理システムを操作可能な状態とする(S100)。またIDやパスワードの相違などにより正常に認証が行われなかった場合には、クライアント端末4においてエラーの表示を行う(S100)。
【0050】
クライアント端末4において商品管理システムが操作可能となった後に、ユーザが所定の入出力画面を表示する操作を行うと、画面構成部品制御手段5は、当該ユーザの入出力画面におけるパネルサイズを決定し(S200)、次に各パネルを当該画面に配置する処理を実行する(S300)。
【0051】
まずパネルサイズを決定する処理を説明する。
【0052】
入力されたIDに基づいて、ユーザ情報管理テーブル10を画面構成部品制御手段5(この際の画面構成部品制御手段5は、すでにアプリケーションサーバ2からクライアント端末4に配信されており、クライアント端末4で機能している)が参照する。例えば入力を受け付けたIDが「002」であった場合、ID「002」に基づいて、データベースサーバ3に問い合わせ、当該ユーザの権限と担当業務と変更不可項目とをユーザ情報管理テーブル10から取得する。
【0053】
ユーザ情報管理テーブル10が図11の場合、IDが「002」なので、権限として「業務管理者」、担当業務として「販売」、変更不可項目として「ほかの業務の全項目」を取得する。つまり、ユーザ「002」は、業務管理者としての権限を有しており、販売以外の業務の全項目を変更する権限がないことを意味している。
【0054】
そして画面構成部品制御手段5は、当該ユーザ(ID「002」)の状態管理テーブル8を参照し、入出力画面のパネルに表示する表示項目に関する情報を取得する(S210)。例えばID「002」のユーザの状態管理テーブル8が図9の場合、パネル名が「基本項目」について、項目「商品名」、「索引」、「単位」を取得する。なおこの際に画面構成部品制御手段5は、「表示」とされている項目名をキーとして取得し、「非表示」とされている項目名は取得しない。なおここでパネルとは、入出力画面において表示する項目をひとまとめの単位とするものである。従って同じパネルの各項目については隣接して配置する。またグループ名は、同じパネル内において、更に各項目をひとまとめにする単位である。従って同じグループ名の項目については隣接して配置する。
【0055】
このようにして状態管理テーブル8から当該ユーザ(ID「002」)の入出力画面で表示する項目名を取得すると、その項目名に基づいて、画面構成部品制御手段5は、入出力領域定義テーブル9(商品マスター項目定義テーブル)を参照し、それらの各項目がどのような入出力領域の属性を備えているのかを示す属性情報を取得する。
【0056】
入出力領域定義テーブル9が図10の場合、項目名「商品名」については属性情報として入力属性「全角文字」、桁数「20」、参照マスター「なし」を取得し、項目名「索引」については属性情報として入力属性「半角カタカナ」、桁数「30」、参照マスター「なし」を取得し、項目名「単位」については属性情報として入力属性「全角文字」、桁数「2」、参照マスター「なし」を取得する。
【0057】
そして更に画面構成部品制御手段5は、入出力領域定義テーブル9から取得した入力属性に基づいて、その各入力属性がどのようなコントロールによって実現されるかを、モジュール定義テーブル11を参照することにより、各項目を表示するためのコントロールの種別を決定する(S220)。
【0058】
例えば入力属性「全角文字」はコントロール種別として「InputTextWithItemName」を取得する。
【0059】
このようにして各項目の入力属性のコントロール種別を決定すると、画面構成部品制御手段5は、入出力領域定義テーブル9で定義された桁数に基づいて、各項目の表示領域を決定する(S220)。例えば項目名「商品名」の場合、桁数が「20」なので20桁分の入力領域を生成する。
【0060】
このようにして画面構成部品制御手段5は、決定したコントロール種別と桁数の情報を用いて、各項目の入出力領域のサイズを決定し、これに項目名のサイズを加算することで、項目サイズを決定する(S230)。
【0061】
以上のようにして決定した各項目のサイズをもとにパネルサイズを決定する(S240)。この際に、パネルサイズは、各項目がすべて表示できるサイズとなる。例えばパネルの縦方向のドット数を、Σ(各項目の縦幅+所定値)+項目の幅+所定値として算出する。ここで所定値は、各項目間に設ける隙間の幅である。またパネルの横方向のドット数は、各項目の横幅のうち最大値とする。
【0062】
図14に基本項目のパネルが表示される状態を模式的に示す。
【0063】
以上のようにS200の処理を、画面構成部品制御手段5が状態管理テーブル8から取得した各パネルについて行う。
【0064】
画面構成部品制御手段5はパネルサイズを決定すると、次にパネルの配置処理を実行する(S300)。
【0065】
まず画面構成部品制御手段5は、入出力画面の初期ウィンドウサイズをクライアント端末4のOSから取得する(S310)。このウィンドウに、順次パネルを配置していく(S320)。
【0066】
例えば状態管理テーブル8にパネル名として「見出し1」、「見出し2」、「見出し3」、「見出し4」、「見出し5」のようにパネル名が格納されている場合には、順に各パネルを配置する。例えば左上、左下、中上、中下、右上、右下の順に配置する。この配置位置は任意に設定可能である。なお各パネルの間には所定の間隔を設けることが好ましい。
【0067】
この配置の際には、入出力画面のウィンドウのウィンドウサイズと各パネルの大きさとを考慮して配置を行うが、本実施例は初期状態での配置なので、入出力画面に配置する各パネルのサイズが、ウィンドウサイズを超えることはない。従って、S330では「NO」の処理となり、パネルの配置は終了する。なお「YES」となる場合の処理は後述する。
【0068】
図15に入出力画面のウィンドウに各パネルが配置された場合の一例を示す。なお図15では外枠が入出力画面のウィンドウを示し、破線がパネルを示す(実際はパネルを示す破線は表示しなくても良い)。そして「見出し」には状態管理テーブル8の「パネル名」が表示され、「項目名」には状態管理テーブル8の「項目名」が表示され、項目名の右隣には各コントロールが配置される。
【0069】
なお縦方向に複数のパネルを配置する場合には、整列手段7が、各パネルに含まれるすべての項目名の枠のサイズを取得し、そのうちの最大サイズに合うようにして項目を配置しても良い。例えば図16(a)の場合、見出し「基本項目」のパネルと、見出し「単価」のパネルが縦に配置されているので、これらに含まれる各項目の文字数を整列手段7がカウントする。そして、各項目の文字数の最大値を表示するための文字数に、各項目のサイズを変更して各項目を配置する。このように整列手段7における整列処理が実行されたのが図16(b)である。
【0070】
なお各項目名のサイズが変更されることで、その右隣に位置する入出力領域のコントロールの位置もずれることとなる。従ってパネルサイズもずれることとなるので、整列手段7における処理を行う場合には、再度、パネルサイズの変更を行う処理、つまりS240における処理を実行することになる。
【0071】
なお再処理を簡略化するために、S240のパネルサイズの決定処理の際に、整列手段7における項目名を整列させる処理を行った後(つまり項目名のサイズを決定した後)、パネルサイズの決定処理を実行することとしても良い。
【0072】
以上のようにして生成された初期状態の入出力画面を図17に示す。
【0073】
次に初期状態から、初期設定された項目以外の項目をユーザが表示する場合を説明する。この場合、ユーザは所定の操作を行うことによって、拡張する項目の定義を行う。
【0074】
具体的には、図18に示すような画面から、どのような項目を拡張するのかを入力し、それを画面構成部品制御手段5が、入出力領域定義テーブル9のうち、拡張項目定義テーブルに登録する。図18では、項目「メーカー」、「取り扱い開始年」、「商品説明」などを追加登録した場合である。なおこの際に、各項目に対する属性情報として、入力属性、桁数、参照マスターなどの情報もあわせて登録される。
【0075】
例えばユーザが項目名「メーカー」を追加登録する場合には、入力属性として「数値」、桁数として「4」、参照マスターとして「メーカーマスター」を入力する。また項目名「商品説明」を追加登録する場合には、入力属性として「全角文字」、桁数として「64」、参照マスターとして「なし」を入力する。ここで入力された各項目の情報を、画面構成部品制御手段5が、入出力領域定義テーブル9の拡張項目定義テーブルに当該ユーザの拡張項目として登録する。これを模式的に示すのが図19である。
【0076】
また画面構成部品制御手段5は、当該ユーザの状態管理テーブル8に、拡張項目として、パネル名、項目名、表示か非表示かを入力する。入力を受け付けると、画面構成部品制御手段5は、当該ユーザの状態管理テーブル8に追加登録する。これを模式的に示すのが図20である。図20は、ID「002」のユーザの状態管理テーブル8に登録した場合である。
【0077】
以上のように拡張する項目を状態管理テーブル8、入出力領域定義テーブル9に追加登録することによって、ユーザが入出力画面を開く際には、基本項目のほか、拡張項目を表示される。またどのような項目が拡張されているかは、ユーザごとに状態管理テーブル8で管理しているので、ユーザごとに異なる項目を表示することもできる。また入出力領域定義テーブル9、モジュール定義テーブル11などを参照して画面構成部品制御手段5が入出力画面を生成することによって、ユーザの要求に応じた、入出力画面の項目が自動的に設定・再配置される。
【0078】
例えば図17の初期状態の入出力画面に、ユーザが独自に拡張項目を設定した場合の入出力画面の一例が図21である。
【0079】
次に、入出力画面に表示する項目をユーザが選択し、ユーザが表示を選択した項目が入出力画面に表示されるようにする場合を説明する。
【0080】
ユーザが所定の操作を行うことによって、各項目の表示・非表示を選択する画面を表示する。この画面の一例を図22に示す。図22に示される各項目は、画面構成部品制御手段5が、状態管理テーブル8から当該ユーザのIDに基づいて、パネル名、項目名、表示・非表示の情報を取得することで表示することができる。
【0081】
この画面には、各パネルの各項目ごとにチェックボックスが設けられており、その項目を表示するか、表示しないかの選択が可能である。表示する場合にはチェックボックスにチェックを入力し、表示しない場合にはチェックボックスにチェックをしなければよい。このチェックの有無に基づいて、画面構成部品制御手段5は、状態管理テーブル8における表示・非表示の情報を変更して登録する。また図22の画面における「入力」とは当該項目についてデータの入力を行うかを意味するチェックボックスである。従って「入力」の欄がチェックされていない場合には当該項目について入力が行えない。また表示をチェックしても「入力」をチェックしない場合には、表示しても入力はできない、といったようにすることもできる。この入力の有無の情報についても、図9には図示していないが、状態管理テーブル8に各項目ごとに登録しても良い。
【0082】
例えば図22の画面における選択をID「002」のユーザが行った場合には、状態管理テーブル8は、図20の状態から図23の状態に変更して登録される。
【0083】
そして図23の状態管理テーブル8に基づいて、画面構成部品制御手段5が表示した入出力画面が、図24である。
【0084】
次に、ユーザが入出力画面のウィンドウサイズを変更した場合に、入出力画面におけるパネル(及びその項目)の再配置を行う場合の処理を説明する。
【0085】
画面構成部品制御手段5は、入出力画面のウィンドウサイズが変更されたことを検出すると、OSから変更後のウィンドウサイズの情報を取得する(S310)。そして上述と同様に、各パネルの配置処理を実行する(S320)。すなわち、順に、左上、左下、中上、中下、右上、右下の順にパネルを配置する。
【0086】
この配置の際にウィンドウサイズと各パネルの配置時の大きさの判定を行いながら配置を行うが、変更後のウィンドウサイズに収まりきらないパネルが存在する場合には、素表示方法の選択処理に基づいて、処理を実行する(S400)。
【0087】
すなわち、スクロール表示とするか各パネル、項目を縮小表示するかを予め選択しておき(S410)、それに基づいてすべてのパネルの配置処理を実行する。
【0088】
縮小表示することを選択している場合には、各パネルを普通に配置した場合に必要なウィンドウサイズを、各パネルのサイズに基づいて算出する。そして普通に配置した場合に必要なウィンドウサイズと、実際の変更後のウィンドウサイズとを比較し、どの程度縮小すればよいのか、その倍率を算出する。そしてその倍率に基づいて、各パネルのサイズを縮小し、実際の変更後のウィンドウサイズの入出力画面に、縮小した各パネルを配置していく。
【0089】
この場合の入出力画面の一例を図25に示す。
【0090】
またスクロール表示することを選択している場合には、例えば各パネルを横一列になるようにパネルを配置して、スクロールバーを表示する(S430)。
【0091】
この場合の入出力画面の一例を図26に示す。
【0092】
なおスクロール表示する場合において、変更後のウィンドウサイズがどのパネルもそのままでは配置できないサイズに縮小された場合には、選択されている項目を含むパネルをウィンドウに包含するように変更して表示しても良い。つまり各パネルにおいて、項目の再配置を更に行い、ウィンドウ内に表示できるようにしても良い。これを模式的に示すのが図27、図28である。
【0093】
以上の再配置の処理は、変更後のウィンドウサイズと、各パネルのサイズ、あるいは各項目のサイズに基づいて、それらを比較することで、変更後のウィンドウサイズに収まるような各パネルや項目の配置を行う。
【0094】
なお再配置の処理を行う場合に、項目の表示が2行にわたる場合もある。例えば図29の入出力画面の場合には、パネル名「単価」のうち、項目名「新単価実施日」が2行にわたっている。そしてウィンドウサイズの変更の結果、新単価実施日の項目で切れてしまうような場合には、これらを分けて表示してしまうことは好ましくない。
【0095】
そこでこれらは一つの項目として表示することとなる。これを模式的に示すのが図30である。
【0096】
以上のような処理をユーザからの入力に応じて実行することによって、ユーザからの要求に応じた、業務管理ソフトウェアで用いる入出力画面を生成することができる。
【産業上の利用可能性】
【0097】
本発明によって、業務管理システムの入出力画面について、ユーザの要求に応じて、入出力画面の項目が自動的に設定・再配置される。そのため、入出力画面の操作性・一覧性の向上と、表示プログラムの作成・カスタマイズ上の煩雑さ解消とを同時に実現することが可能となる。
【図面の簡単な説明】
【0098】
【図1】本発明の全体のシステム構成の一例を示す概念図である。
【図2】ハードウェア構成の一例を示す概念図である。
【図3】全体の処理プロセスの一例を示すフローチャートである。
【図4】パネルサイズの決定の処理プロセスの一例を示すフローチャートである。
【図5】パネルの配置の処理プロセスの一例を示すフローチャートである。
【図6】表示方法選択の処理プロセスの一例を示すフローチャートである。
【図7】従来の入出力画面の一例である。
【図8】従来の入出力画面の他の例である。
【図9】状態管理テーブルの概念図である。
【図10】入出力領域定義テーブルの概念図である。
【図11】ユーザ情報管理テーブルの概念図である。
【図12】モジュール定義テーブルの概念図である。
【図13】コントロール名と、そのコントロールにより表示される入出力領域の一例である。
【図14】基本項目のパネルが表示される状態を模式的に示す図である。
【図15】入出力画面のウィンドウに各パネルが配置された場合の一例を示す図である。
【図16】項目名の整列処理を模式的に示す図である。
【図17】初期状態の入出力画面の一例を示す図である。
【図18】項目の追加等の入力を行う画面の一例である。
【図19】入出力領域定義テーブルの拡張項目定義テーブルを模式的に示す図である。
【図20】拡張項目が登録された状態管理テーブルを模式的に示す図である。
【図21】設定した拡張項目を表示した場合の入出力画面の一例である。
【図22】各項目の表示・非表示を選択する画面の一例である。
【図23】各項目について表示・非表示を登録した場合の状態管理テーブルを模式的に示す図である。
【図24】図23の状態管理テーブルに基づいて生成した入出力画面の一例である。
【図25】各パネルを縮小した場合の入出力画面の一例である。
【図26】スクロール表示を行う場合の入出力画面の一例である。
【図27】項目も再配置する場合の入出力画面の一例である。
【図28】項目も再配置する場合の入出力画面の一例である。
【図29】入出力画面の一例である。
【図30】図29の入出力画面のウィンドウサイズを変更した結果、パネル名「単価」がまとめて配置場所が移動した場合の入出力画面の一例である。
【符号の説明】
【0099】
1:入出力画面生成システム
2:アプリケーションサーバ
3:データベースサーバ
4:クライアント端末
5:画面構成部品制御手段
6:起動制御手段
7:整列手段
8:状態管理テーブル
9:入出力領域定義テーブル
10:ユーザ情報管理テーブル
11:モジュール定義テーブル
20:演算装置
21:記憶装置
22:表示装置
23:入力装置
24:通信装置

【特許請求の範囲】
【請求項1】
業務管理システムで用いる入出力画面を自動的に生成する入出力画面生成システムであって、
前記入出力画面生成システムは、
前記入出力画面における入出力領域を含む画面構成部品の配置処理を実行する画面構成部品制御手段、を有しており、
前記画面構成部品制御手段は、
予め表示指示が設定されている、または新たに表示指示がなされた前記入出力領域を表示し、
前記入出力画面のサイズ変更及び/または前記入出力領域の数の変更に伴って前記画面構成部品のサイズ変更及び/または再配置処理を実行する、
ことを特徴とする入出力画面生成システム。
【請求項2】
業務管理システムで用いる入出力画面を自動的に生成する入出力画面生成システムであって、
前記入出力画面生成システムは、
前記入出力画面に表示するパネルと、そのパネルに含まれる項目とを、ユーザごとに記憶する状態管理テーブルと、
前記各項目の入力属性と桁数の情報とを少なくとも含む属性情報を記憶する入出力領域定義テーブルと、
前記入力属性ごとのコントロールに関する情報を記憶するモジュール定義テーブルと、
前記入出力画面のパネルと項目の配置処理を実行する画面構成部品制御手段と、を有しており、
前記画面構成部品制御手段は、
前記入出力画面の表示要求を受け付けると、前記ユーザの識別情報に基づいて、そのユーザの入出力画面に表示するパネルとその項目の情報を前記状態管理テーブルから取得し、
前記取得した各項目の情報に基づいて、項目ごとの前記属性情報を前記入出力領域定義テーブルから取得し、
前記取得した属性情報における入力属性に基づいて、入出力領域のコントロールを前記モジュール定義テーブルを用いて決定し、
前記取得した属性情報における桁数と、前記項目の項目名のサイズとに基づいて、パネルサイズを決定し、
前記決定した各パネルサイズと前記入出力画面のウィンドウサイズとを比較することにより、前記各パネルを前記入出力画面のウィンドウに配置することで、入出力画面を自動的に生成する、
ことを特徴とする入出力画面生成システム。
【請求項3】
前記状態管理テーブルには、更に、
前記パネルに含まれる項目を表示するか否かを示す情報を記憶しており、
前記画面構成部品制御手段は、
前記状態管理テーブルから項目の情報を取得する際に、表示する項目のみを取得する、
ことを特徴とする請求項2に記載の入出力画面生成システム。
【請求項4】
前記入出力画面生成システムは、更に、
前記パネルを入出力画面のウィンドウに配置する前に、縦方向に配置するパネルにおける各項目の位置を整列させる整列手段、
を有することを特徴とする請求項2または請求項3に記載の入出力画面生成システム。
【請求項5】
前記整列手段は、
前記縦方向に配置するパネルの各項目の項目名の文字数のうち、最大の文字数を取得し、前記縦方向に配置するパネルの各項目のサイズをその最大の文字数の幅に揃える、ことで整列処理を実行する、
ことを特徴とする請求項4に記載の入出力画面生成システム。
【請求項6】
前記画面構成部品制御手段は、
前記決定した各パネルのサイズと、前記入出力画面のウィンドウサイズとを比較した結果、ウィンドウサイズが各パネルのサイズよりも小さい場合には、スクロール表示または縮小表示のいずれかを実行して、前記各パネルを前記入出力画面のウィンドウに配置する、
ことを特徴とする請求項2から請求項5のいずれかに記載の入出力画面生成システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate