(58)【調査した分野】(Int.Cl.,DB名)
前記ユーザレコードを構成する3以上の各属性値に対応する属性を管理するスキーマ情報であり、主属性、自動入力属性、または手動入力属性のいずれであるかを示す属性種類情報を、属性ごとに有するスキーマ情報が格納されるスキーマ情報格納部をさらに具備し、前記簡易入力ボタン生成部は、
属性種類情報が主属性である属性の属性値を用いて、簡易入力ボタンを生成し、
前記受付部は、
一の簡易入力ボタンに対する指示を受け付け、
前記指示の受け付けに応じて、前記簡易入力ボタンに対応する主属性値、および前記簡易入力ボタンに対応する主属性値と対になる1以上の属性値であり、属性種類情報が自動入力属性である1以上の各属性値を、前記画面内の対応する2以上の各フィールドに対して入力する自動入力部をさらに具備する請求項2記載の画面生成装置。
【発明を実施するための形態】
【0023】
以下、画面生成装置等を備える処理システムの実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【0024】
図1は、本実施の形態における処理システムのブロック図である。処理システムは、画面生成装置1、および1または2以上の端末装置2を備える。画面生成装置1と1以上の各端末装置2とは、例えば、LANやインターネット等のネットワーク、有線または無線の通信回線等を介して、通信可能に接続される。画面生成装置1は、例えば、行政書士等の事務所や中古車販売等の会社のサーバ、またはインターネット上のウェブサーバなどである。ただし、画面生成装置1は、スタンドアロンのPCなどでもよく、そのタイプや所在は問わない。1以上の各端末装置2(以下、単に端末装置2と記す場合がある)は、例えば、事務所等のPCであるが、携帯端末(例えば、スマートフォン、タブレット端末等)でもよく、そのタイプや所在は問わない。
【0025】
画面生成装置1は、格納部11、受付部12、処理部13、および出力部14を備える。格納部11は、ユーザテーブル格納部111、スキーマ情報格納部112、およびマスタテーブル格納部113を備える。処理部13は、ユーザレコード蓄積部131、判断部132、簡易入力ボタン生成部133、画面構成部134、自動入力部135、マスタレコード蓄積部136、頻度取得部137、および文字列長取得部138を備える。出力部14は、画面出力部141を備える。
【0026】
端末装置2は、端末格納部21、端末受付部22、端末送信部23、端末受信部24、および端末出力部25を備える。
【0027】
画面生成装置1を構成する格納部11は、各種の情報を格納し得る。各種の情報とは、例えば、ユーザテーブル、マスタテーブル、スキーマ情報、および画面情報などである。なお、これらの情報については後述する。
【0028】
ユーザテーブル格納部111には、ユーザテーブルが格納される。ユーザテーブルとは、一般に、管理者以外のユーザでも登録や変更等が行えるテーブルをいう。本実施の形態でいうユーザテーブルは、入力されたユーザレコードが登録されるテーブルである。ユーザテーブルは、1または2以上のユーザレコードを有する。
【0029】
1以上の各ユーザレコード(以下、単にユーザレコードと記す場合がある)は、主属性値を有する。主属性値とは、当該ユーザレコードを代表する主属性の値であり、簡易入力ボタン内の文字列を構成し得る情報である。主属性は、例えば、“所有者の氏名又は名称”等であるが、これに限らない。主属性“所有者の氏名又は名称”の値は、例えば、“株式会社オートバック○セブン”、“株式会社○DOM”などであるが、これに限らない。
【0030】
ユーザレコードは、通常、主属性値に加えて、1以上の自動入力属性値をさらに有する。自動入力属性値とは、主属性値に対応する属性値であり、主属性値が決まれば決まる属性値である。自動入力属性値は、例えば、簡易入力ボタンの指示により自動的に画面に入力される自動入力属性の値である。画面に入力されることは、通常、入力された値が、受付部12等によって保持され、画面が有するフィールド内に、入力された値を示す文字列が表示されることを含む。自動入力属性は、例えば、主属性が“所有者の氏名又は名称”である場合、“所有者の住所”、“所有者コード”等であるが、これに限らない。自動入力属性“所有者の住所”の値は、例えば、“東京都江東区…”、“東京都千代田区…”などであるが、これに限らない。自動入力属性“所有者コード”の値は、例えば、“11662”、“11673”などであるが、これに限らない。
【0031】
ユーザレコードは、好ましくは、主属性値、1以上の自動入力属性値に加えて、1以上の手動入力属性値をさらに有する。手動入力属性値とは、主属性値が決まっても決まらない属性値である。手動入力属性値は、例えば、ユーザレコードごとに異なる属性値であり、ユーザレコードごとにユーザが手入力する手動入力属性の値である。手動入力属性は、例えば、“使用者の氏名または名称”、“使用者の住所”等であるが、これに限らない。手動入力属性“使用者の氏名または名称”の値は、例えば、“鈴木○○”、“○○商事”などであるが、これに限らない。手動入力属性“使用者の住所”の値は、例えば、“東京都港区…”、“大阪市中央区…”などであるが、これに限らない。ただし、ユーザテーブルおよびユーザレコードのデータ構造は問わない。
【0032】
なお、主属性値および自動入力属性値は、通常、2以上のユーザレコード間で共通の情報である。これに対して、手動入力属性値は、通常、ユーザレコードごとに異なる情報である。
【0033】
ユーザテーブル格納部111に格納されているユーザテーブルは、通常、受付部12によって受け付けられ、ユーザレコード蓄積部131によって蓄積された1以上のユーザレコードで構成されている。なお、詳細は後述するが、受付部12は、ユーザレコードを、通常、端末装置2から端末識別子と対に受信し、ユーザレコード蓄積部131は、受信されたユーザレコードを、通常、端末識別子と対に蓄積する。端末識別子とは、当該端末装置2を識別する情報である。端末識別子は、例えば、MACアドレス、IPアドレス、IDなどであるが、端末装置2のユーザを識別するユーザ識別子を端末識別子として用いることも可能であり、その種類は問わない。従って、ユーザテーブル格納部111には、1以上のユーザテーブルが端末識別子と対に格納されていると考えてもよい。または、ユーザテーブル格納部111には、一のユーザテーブルが格納されていて、これを構成する1以上の各ユーザレコードが、端末識別子に対応付いていると考えてもよい。なお、対応付くことは、端末識別子を有する場合も含む(以下同様)。ただし、画面生成装置1がスタンドアロンの場合、受付部12は、キーボード等の入力デバイスを介してユーザレコードを受け付け、ユーザレコード蓄積部131は、受け付けられたユーザレコードを蓄積する。また、受付部12がユーザレコードを端末識別子と対に受信する場合でも、ユーザレコード蓄積部131は、受信されたユーザレコードのみを蓄積し、端末識別子を蓄積しなくてもよい。
【0034】
スキーマ情報格納部112には、スキーマ情報が格納される。一般に、スキーマ情報とは、DBの構造を記述する情報である。本実施の形態でいうスキーマ情報は、ユーザレコードを構成する2以上の各属性値に対応する属性を管理する情報であり、属性種類情報を属性ごとに有する情報である。属性種類情報とは、属性の種類を示す情報であり、例えば、主属性、自動入力属性、または手動入力属性のいずれであるかを示す情報である。
【0035】
スキーマ情報は、例えば、属性識別子と属性種類情報との対の集合であってもよい。属性識別子とは、属性を識別する情報である。属性識別子は、例えば、属性名でもよいし、ID(例えば、1,2,…等)でもよく、属性を識別し得る情報であれば何でもよい。本実施の形態では、属性識別子は属性名であるとする。属性名とは、属性を示す文字列である。属性名は、例えば、前述した属性“所有者の氏名又は名称”における文字列“所有者の氏名又は名称”、前述した属性“所有者の住所”における文字列“所有者の住所”である。以下では、かかる文字列を、例えば、属性名“所有者の氏名又は名称”、属性名“所有者の住所”のように記す場合もある。
【0036】
属性名と属性種類情報との対の集合とは、例えば、属性名“所有者の氏名または名称”と属性種類情報“主属性”との対、属性名“所有者の住所”と属性種類情報“自動入力属性”との対、…などである。ただし、スキーマ情報のデータ構造は問わない。
【0037】
マスタテーブル格納部113は、マスタテーブルが格納される。マスタテーブルとは、一般に、管理者しか登録や変更等が行えないテーブルをいう。本実施の形態でいうマスタテーブルは、レコード入力時に参照されるテーブルである。マスタテーブルは、1以上のマスタレコードを有する。1以上の各マスタレコード(以下、単にマスタレコードと記す場合がある)は、例えば、主属性値と1以上の自動入力属性値とを有する。ただし、マスタテーブルおよびマスタレコードのデータ構造は問わない。
【0038】
マスタテーブル格納部113には、例えば、1以上のマスタテーブルが端末識別子と対に格納されていると考えてもよい。または、マスタテーブル格納部113には、一のマスタテーブルが格納されていて、これを構成する1以上の各マスタレコードが、端末識別子に対応付いていると考えてもよい。
【0039】
受付部12は、各種の情報を受け付ける。各種の情報とは、例えば、ユーザレコード、簡易入力ボタンに対する指示などである。一般に、受け付けとは、キーボード等の入力デバイスから入力された情報の受け付け、ネットワーク等を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。受付部12による受け付けは、本実施の形態では、通常、端末装置2からの受信であるが、キーボード等の入力デバイスを介した受け付けでもよく、その態様は問わない。
【0040】
受付部12は、ユーザレコードを受け付ける。また、受付部12は、一の簡易入力ボタンに対する指示を受け付ける。受付部12は、ユーザレコードや指示を、通常、端末装置2から端末識別子と対に受信するが、キーボード等の入力デバイスを介して受け付けてもよい。
【0041】
処理部13は、各種の処理を行う。各種の処理とは、例えば、ユーザレコード蓄積部131、判断部132、簡易入力ボタン生成部133、画面構成部134、自動入力部135、マスタレコード蓄積部136、頻度取得部137、および文字列長取得部138などの処理である。また、処理部13は、フローチャートで説明する各種の判別なども行う。
【0042】
ユーザレコード蓄積部131は、受付部12が受け付けたユーザレコードをユーザテーブル格納部111に蓄積する。ユーザレコード蓄積部131は、受け付けられたユーザレコードをIDに対応付けて蓄積する。IDは、受け付け又は蓄積の順番を示す番号1,2,…等であるが、これに限らない。
【0043】
判断部132は、一の主属性値を有する受付部12が受け付けたユーザレコードの数が、例えば、予め決められた条件を満たすほど多いか否かを判断する。一の主属性値を有する受付部12が受け付けたユーザレコードの数とは、受付部12が受け付けたユーザレコードのうち、同じ主属性値を有するユーザレコードの数を意味する。判断部132は、例えば、受付部12が新たなユーザレコードを受け付けるたびに、当該ユーザレコードが有する主属性値と同じ主属性値を過去に受け付け済みか否かを判別し、受け付け済みでない場合には、当該主属性値に対応する新たな変数を生成して、当該新たな変数に“1”をセットし、受け付け済みである場合には、当該主属性値に対応する既存の変数をインクリメントする処理を繰り返してもよい。予め決められた条件とは、例えば、受け付けられた同じ主属性値を有するユーザレコードの数が、閾値以上であること、または閾値を超えることであるが、これに限らない。予め決められた条件は、例えば、受け付けられたユーザレコードの総数に占める、同じ所属性値を有するユーザレコードの数の割合でもよいし、かかる数または割合が大きい方からN位以内であること等でもよい。
【0044】
または、判断部132は、例えば、一の主属性値を有するユーザレコード蓄積部131が蓄積したユーザレコードの数が、予め決められた条件を満たすほど多いか否かを判断してもよい。一の主属性値を有するユーザレコード蓄積部131が蓄積したユーザレコードの数とは、ユーザレコード蓄積部131が蓄積したユーザレコードのうち、同じ主属性値を有するユーザレコードの数を意味する。判断部132は、例えば、ユーザレコード蓄積部131が新たなユーザレコードを蓄積するたびに、当該ユーザレコードが有する主属性値と同じ主属性値を過去に蓄積済みか否かを判別し、蓄積済みでない場合には、当該主属性値に対応する新たな変数を生成して、当該新たな変数に“1”をセットし、蓄積済みである場合には、当該主属性値に対応する既存の変数をインクリメントする処理を繰り返してもよい。予め決められた条件とは、受け付けられた同じ主属性値を有するユーザレコードの数が、閾値以上であること、または閾値を超えることであるが、これに限らない。予め決められた条件は、例えば、蓄積されたユーザレコードの総数に占める、同じ所属性値を有するユーザレコードの数の割合でもよいし、かかる数または割合が多い方からN位以内であること等でもよい。
【0045】
または、判断部132は、一の主属性値を有するユーザテーブル格納部111に格納されているユーザレコードの数が、予め決められた条件を満たすほど多いか否かを判断してもよい。一の主属性値を有するユーザテーブル格納部111に格納されているユーザレコードの数とは、ユーザテーブル格納部111に格納されているユーザレコードのうち、同じ主属性値を有するユーザレコードの数を意味する。判断部132は、例えば、受付部12が画面の出力の指示を受け付けたことに応じて、ユーザテーブル格納部111に格納されているユーザレコードのうち、同じ主属性値を有するユーザレコードの数を計数する処理を、各主属性値に関して繰り返すことで、1以上の主属性値に対応する1以上の数を求めてもよい。予め決められた条件とは、例えば、格納されている同じ主属性値を有するユーザレコードの数が、閾値以上であること、または閾値を超えることであるが、これに限らない。予め決められた条件は、例えば、格納されているユーザレコードの総数に占める、同じ所属性値を有するユーザレコードの数の割合でもよいし、かかる数または割合が多い方からN位以内であること等でもよい。
【0046】
簡易入力ボタン生成部133は、判断部132が予め決められた条件を満たすほど多いと判断した場合、当該一の主属性値に対応するボタンであり、ユーザレコードを構成する1または2以上の属性値を入力するためのボタンである簡易入力ボタンを生成する。簡易入力ボタンが指示されると、通常、2以上の属性値が入力されるが、1つの属性値だけが入力される場合もあってよい。簡易入力ボタンの指示に応じて入力される2以上の属性値とは、通常、一の主属性値、および1以上の自動入力属性値であるが、2以上の自動入力属性値のみでもよい。1つの属性値だけが入力される場合とは、通常、一の主属性値が入力される場合であるが、一の自動入力属性値だけが入力される場合もあってよい。簡易入力ボタンを生成することは、通常、ボタン情報を生成することである。
【0047】
一般に、ボタン情報とは、ボタンの情報である。ボタンとは、画面が有するオブジェクトの一種であり、特定の処理に関連付けられたオブジェクトである。オブジェクトとは、画面内に配置される表示要素をいう。例えば、処理部13が、ボタンを識別するボタン識別子と、処理を識別する処理識別子との対の集合を保持しており、また、格納部11には、処理識別子と処理(例えば、“get master−record”、“put data”など)との対の集合が格納されており、ユーザが画面内の一のボタンを指示すると、受付部12が当該一のボタンへの指示を受け付け、処理部13は、当該一のボタンのボタン識別子に対応する処理識別子で識別される処理を実行する。なお、“get master−record”は、指示されたマスタレコードをマスタテーブルから取得する処理であり、“put data”は、取得されたデータを対応するフィールドに入力する処理である。
【0048】
本実施形態でいうボタンは、指示を受け付けることにより、属性値をフィールドに入力できるオブジェクトであり、例えば、タブ、アイコン、メニュー項目、ハイパーリンクなども含むと考えてもよい。ボタンは、例えば、簡易入力ボタン、出力ボタン(例えば、印刷ボタン、保存ボタン等:後述)などであるが、これに限らない。ボタン以外のオブジェクトは、例えば、フィールド、文字列、画像(例えば、帳票の画像等:後述)などであるが、画面内に配置される表示要素であれば種類は問わない。ただし、以下で、単にボタンという場合は、通常、簡易入力ボタンである。また、単にボタン情報という場合、簡易入力ボタンのボタン情報を意味する。
【0049】
ボタン情報は、例えば、文字列、位置情報、形状情報、サイズ等を有する。ここでいう文字列は、画面のボタン内に配置される文字列である。文字列は、通常、2以上の文字で構成されるが、一の文字であってもよい。文字は、例えば、仮名、漢字、英字、数字等であるが、記号でもよい。
【0050】
位置情報とは、画面内でのボタンの位置を示す情報であり、例えば(x,y)等の座標で表現される。ボタンの位置情報は、通常、そのボタンの代表点の座標である。代表点は、例えば、始点、重心、中心点などであるが、これに限らない。代表点は、例えば、ボタンが矩形の場合は、これに対応する矩形領域の始点でもよいし、始点および終点の2点であってもよい。始点は、通常、左上点である。終点は、通常、右下点である。位置情報は、例えば、ボタンが矩形の場合は、ボタンに対応する矩形領域の重心の座標(x0、y0)でもよいし、始点の座標(x1,y1)でもよいし、始点の座標(x1,y1)および終点の座標(x2,y2)の組で表現されてもよい。円形のボタンの位置情報は、通常、中心点(重心といってもよい)の座標(x0,y0)で表現される。ただし、位置情報の表現形式は問わない。
【0051】
形状情報とは、ボタンの形状を示す情報である。形状は、例えば、矩形、円形等であるが、どのような形状でもよい。サイズとは、ボタンの大きさを示す情報であり、例えば、矩形のボタンの場合は、通常、幅、および高さで表現されるが、例えば、対角線の長さ、面積などで表現されてもよい。円形のボタンのサイズは、通常、半径または直径で表現されるが、面積などで表現されてもよい。ただし、サイズの表現形式は問わない。
【0052】
簡易入力ボタンのボタン情報は、文字列、位置情報、形状情報、およびサイズに加えて、例えば、表示・非表示を示すフラグも有していてよい。
【0053】
なお、ボタン情報が有する文字列、位置情報、形状情報、およびサイズに関する上記事項は、後述するフィールド情報やその他のオブジェクト情報が有する文字列、位置情報、形状情報、およびサイズにも当てはまる。
【0054】
簡易入力ボタン生成部133は、属性種類情報が主属性である属性の属性値(主属性値)を用いて、簡易入力ボタンを生成する。属性種類情報が主属性である属性は、前述したスキーマ情報に属性名として記載されている。簡易入力ボタン生成部133は、主属性値を用いて、通常、当該主属性値を構成する文字列に対応する文字列を有する簡易ボタンを生成する。対応する文字列とは、当該主属性値を構成する文字列と同じ文字列でもよいし、当該主属性値を構成する文字列の省略形でもよい。省略形とは、例えば、当該主属性値を構成する文字列から1以上の文字を省略した文字列でもよいし、当該主属性値を構成する文字列に含まれる2以上の連続する文字を1以上の別の文字に置き換えた文字列でもよい。詳しくは、簡易入力ボタン生成部133は、例えば、文字列のうち前のN文字(Nは1以上の自然数)を残し、後の文字を削除してもよい。または、簡易入力ボタン生成部133は、例えば、“株式会社”や“有限会社”といった、主属性値が含み得る文字列であり、削除し得る1以上の文字列を保持しており、当該主属性値を構成する文字列が、いずれかの削除し得る文字列を含む場合に、当該主属性値を構成する文字列から、当該削除し得る文字列に対応する部分を削除してもよい。または、簡易入力ボタン生成部133は、例えば、簡略化し得る文字列と簡略化された文字列との対の集合を保持しており、当該主属性値を構成する文字列が、いずれかの簡略化し得る文字列を含む場合に、当該簡略化し得る文字列を、対応する簡略化された文字列に置換してもよい。または、簡易入力ボタン生成部133は、このような削除および置換の両方を行っても構わない。
【0055】
具体的には、例えば、簡易入力ボタン生成部133が、削除し得る文字列“株式会社”、および簡略化し得る文字列“オートバック○セブン”と簡略化された文字列“オートバック○”との対を保持しており、受付部12が主属性値“株式会社オートバック○セブン”を有するレコードを受け付けた場合、簡易入力ボタン生成部133は、当該主属性値を構成する文字列から“株式会社”を削除し、さらに、“オートバック○セブン”を“オートバック○”に置換することで、“オートバック○”を有する簡易ボタンを生成してもよい。また、簡易入力ボタン生成部133が、簡略化し得る文字列“センター”と簡略化された文字列“C”との対を保持しており、受付部12が主属性値“○○カーセンター”を有するレコードを受け付けた場合、簡易入力ボタン生成部133は、当該主属性値を構成する文字列に含まれる“センター”を“C”に置き換えた“○○カーC”を有する簡易ボタンを生成してもよい。
【0056】
簡易入力ボタン生成部133は、かかる簡易入力ボタンのボタン情報を、端末識別子ごとに生成してもよい。簡易入力ボタン生成部133は、生成したボタン情報を、例えば、端末識別子と対に、内部メモリに保持する。ただし、生成されたボタン情報は、例えば、格納部11に蓄積されてもよく、その保存場所は問わない。
【0057】
画面構成部134は、画面を構成する。画面は、例えば、ユーザレコードを入力したり、ユーザレコードが記載された帳票の画像を出力したりするためのGUI画面であってもよい。画面は、前述したボタン、帳票の画像、フィールド、文字列といった各種のオブジェクトを有する。帳票は、例えば、税の申告書等の書類である。フィールドは、属性値などの情報が入力される入力欄であり、通常、帳票内に配置される。フィールドには、当初は何も記載されておらず、当該フィールドに対して、属性値等の情報が入力されるのに応じて、その情報が当該フィールド内に記載される。
【0058】
画面を構成することは、通常、画面情報を生成することである。画面情報とは、画面の情報である。画面情報は、通常、各種のオブジェクト情報を含む。オブジェクト情報とは、オブジェクトの情報である。各種のオブジェクト情報とは、例えば、前述したボタン情報、フィールド情報、文字列情報などであるが、これに限らない。フィールド情報は、フィールドの情報であり、例えば、位置情報、形状情報およびサイズなどを含む。文字列情報は、フィールドに対応付けて表示される文字列の情報である。文字列情報は、例えば、文字列、および位置情報などを含む。文字列は、当該フィールドに入力されるべき属性値の属性名を示す文字列である。画面情報は、通常、フィールド識別子と属性識別子との対応を示す対応情報をも有する。フィールド識別子とは、フィールドを識別する情報であり、通常、ID(例えば、1,2,…等)である。
【0059】
画面情報は、領域情報をさらに有していてもよい。領域情報とは、画面の領域に関する情報である。領域情報は、例えば、簡易入力ボタンの表示が可能な領域である表示領域の位置、形状、サイズ等に関する情報を含む。
【0060】
好ましい画面は、例えば、ユーザレコードを構成する3以上の属性値(主属性値、1以上の自動入力、および1以上の手動入力属性値)が入力される3以上のフィールドを有していてもよい。3以上のフィールドとは、具体的には、主属性値が入力されるフィールド(以下、主フィールドと記す場合がある)、1以上の自動入力属性値が入力される1以上のフィールド(以下、1以上の自動入力フィールドと記す場合がある)、および1以上の手動入力属性値が入力される1以上のフィールド(以下、1以上の手動入力フィールドと記す場合がある)である。
【0061】
主フィールドへの主属性値の入力は、簡易入力ボタンの生成前は手入力であり、生成後は当該ボタンへの指示に応じた自動入力となる。自動入力フィールドへの自動入力属性値の入力もまた、簡易入力ボタンの生成前は手入力であり、生成後は当該ボタンへの指示に応じた自動入力となる。手動入力フィールドへの手動入力属性値の入力は、簡易入力ボタンの有無によらず、手入力である。
【0062】
なお、上記3以上のフィールドのうち、1以上の手動入力フィールドは、画面から省略されてもよい。
【0063】
画面構成部134は、例えば、判断部132が予め決められた条件を満たさないと判断している期間は、3以上のフィールドを有し、自動入力ボタンを有さない画面を構成し、判断部132が予め決められた条件を満たすと判断している期間は、簡易入力ボタンも有する画面を構成してもよい。
【0064】
または、画面構成部134は、例えば、最初に、3以上のフィールドを有し、自動入力ボタンを有さない画面を構成し、構成した画面を保持しておき、判断部132が一の主属性値に関して条件を満たすと判断したことに応じて、簡易入力ボタン生成部133が生成した簡易入力ボタンであり、当該一の主属性値に対応する文字列を有する簡易入力ボタンを、保持している画面に付加してもよい。簡易入力ボタンを付加することは、通常、保持している画面情報に、生成された簡易入力ボタンのボタン情報を追加することである。また、画面構成部134は、例えば、判断部132が他の主属性値に関して条件を満たすと判断したことに応じて、簡易入力ボタン生成部133が生成した簡易入力ボタンであり、当該他の主属性値に対応する文字列を有する2番目の簡易入力ボタンを、保持している画面に付加してもよい。さらに、画面構成部134は、例えば、判断部132が新たな主属性値に関して条件を満たすと判断したことに応じて、簡易入力ボタン生成部133が生成した簡易入力ボタンであり、当該新たな主属性値に対応する文字列を有するi番目の簡易入力ボタンを、保持している画面に付加してもよい。
【0065】
画面構成部134は、例えば、新たな簡易入力ボタンを画面に付加するのに伴い、既存の2以上の簡易入力ボタンの一つまたは2以上を、画面から削除してもよい。簡易入力ボタンを削除することは、例えば、保持している画面情報から当該簡易入力ボタンのボタン情報を削除することであるが、当該簡易入力ボタンのボタン情報が有するフラグを表示から非表示に変更することでもよい。画面構成部134は、削除の対象となる簡易入力ボタンを、例えば、頻度取得部137が取得した指示の頻度を用いて選択することは好ましい。
【0066】
画面構成部134は、削除対象となる簡易入力ボタンを、例えば、頻度取得部137が取得した指示の頻度を用いて決定してもよい。例えば、画面構成部134は、新たな簡易入力ボタンを画面に付加する一方、指示の頻度が最も低いボタンを画面から削除してもよい。ただし、画面構成部134は、ボタンの削除に限らず、既存のボタンの表示を変更しても構わない。
【0067】
画面構成部134は、例えば、予め決められた条件に基づいて、簡易入力ボタン生成部133が生成した1以上の簡易入力ボタンの表示を変更した画面を構成してもよい。表示を変更することは、例えば、表示サイズ、表示位置、表示順序、表示間隔、および表示・非表示、のうち1種類以上を変更することであってもよい。表示を変更する対象は、簡易入力ボタン生成部133が生成した1以上の簡易入力ボタンのうち一つでも、2以上でも、全部でもよい。ある簡易入力ボタンの表示を変更することは、通常、当該簡易入力ボタンのボタン情報が有する文字列、位置情報、形状情報、サイズ、およびフラグのうち1以上の情報を変更することである。
【0068】
画面構成部134は、例えば、頻度取得部137が取得した指示の頻度を用いて、1以上の簡易入力ボタンの表示を変更してもよい。頻度を用いて変更することは、例えば、頻度順に表示すること、頻度が高いボタンほど大きく表示すること、頻度が低いボタンほど小さく表示すること、頻度が高いボタンほど手前に表示すること、頻度が低いボタンほど奥に表示すること等であるが、これに限らない。なお、頻度順に表示することは、通常、降順または昇順に表示することである。また、頻度順に表示することは、既存の2以上のボタンを頻度順に並び替えることも含む。
【0069】
画面構成部134は、かかる変更を、例えば、簡易入力ボタン生成部133が新たなボタンを生成したことに応じて行ってもよいし、予め決められたタイミングで行ってもよいし、予め決められたタイミングは、一回でもよいし、2回以上でもよい。2回以上のタイミングは、一定間隔でもよいし、ランダムな間隔でもよい。予め決められたタイミングで変更する場合、例えば、格納部11に、変更のタイミングを示すタイミング情報を格納しておき、画面構成部134は、当該タイミング情報を用いて変更してもよい。ただし、画面構成部134は、1以上の簡易入力ボタンの表示の変更を、例えば、受付部12が変更の指示を受け付けたことに応じて行ってもよく、そのトリガは問わない。
【0070】
画面構成部134は、例えば、一の画面に同時に表示できるボタンの数に上限(例えばk個以下)がある場合に、現に表示されているボタンの数が既にk個に達していている状況で、新たなボタンが生成されたことに応じて、表示中のk個のボタンのうち、指示の頻度が最も低いボタンを削除し、新たなボタンを追加してもよい。その際、画面構成部134は、指示の頻度が最も低いボタンを削除して、残りのk−1個のボタンを頻度順に並び替えた後、頻度順が降順の場合はボタン列の末尾に、昇順の場合はボタン列の先頭に、新たなボタンを追加することは好ましい。
【0071】
また、画面構成部134は、文字列長取得部138が取得した長さであり、1以上の各簡易入力ボタンの中の文字列の長さを用いて、1以上の簡易入力ボタンの表示を変更してもよい。文字列の長さを用いて表示を変更することは、例えば、文字列の長さに応じて、ボタンのサイズを変えることでもよい。ボタンのサイズを変えることは、例えば、所定の条件を満たすほど長い文字列を有するボタンのサイズを大きくすることでもよいし、所定の条件を満たすほど短い文字列を有するボタンのサイズを小さくすることでもよい。所定の条件とは、例えば、文字列長が閾値を超える又は閾値以上であること、文字列長が閾値に未たない又は閾値以下であること等であるが、これに限らない。ボタンのサイズを変えることは、2以上の各ボタンのサイズを文字列の長さに応じたサイズに変更することでも構わない。文字列の長さに応じたサイズとは、例えば、文字列の長さに比例するサイズでもよいし、文字列長をパラメータとする増加関数または減少関数を用いて算出されるサイズでも構わない。また、画面構成部134は、算出したサイズが端数を有する場合に、四捨五入等の端数処理を行ってもよい。
【0072】
画面構成部134は、かかる画面の画面情報を、端末識別子ごとに生成してもよい。画面構成部134は、生成した画面情報を、例えば、端末識別子と対に、内部メモリに保持してもよいし、格納部11に蓄積して構わない。
【0073】
自動入力部135は、受付部12による簡易入力ボタンに対する指示の受け付けに応じて、当該簡易入力ボタンに対応する主属性値、および当該簡易入力ボタンに対応する主属性値と対になる1以上の属性値であり、属性種類情報が自動入力属性である1以上の各属性値(自動入力属性値)を、画面内の対応する2以上の各フィールド(具体的には、主フィールド、および1以上の自動入力フィールド)に対して入力する。ただし、自動入力部135による各フィールドへの入力の対象は、一の属性値の全部とは限らず、2以上のユーザレコードの間で共通する部分だけでもよい。例えば、2以上のユーザレコードの間で、一の自動入力属性“所有者の住所”の値が、“東京都板橋区○○町2丁目”までは共通で、番地以降が異なる場合、自動入力部135は、“東京都板橋区○○町2丁目”までの情報を自動的に入力し、番地以降の情報は入力しなくてよい。その場合、番地以降の情報は、通常、受付部12を介して手入力される。この場合、属性種類情報“自動入力属性”は、例えば、“一部自動入力属性”および“一部自動入力属性”の2種類に細分化されてもよい。具体的には、スキーマ情報において、属性名“所有者の住所”と対になる属性種類情報“自動入力属性”を“一部自動入力属性”とし、属性名“所有者コード”と対になる属性種類情報“自動入力属性”を“全部自動入力属性”とすればよい。
【0074】
自動入力部135は、かかる主属性値および1以上の自動入力属性値を、通常、マスタテーブル(具体的には、当該簡易入力ボタンが生成されたとき、マスタレコード蓄積部136によって蓄積されたマスタレコード)から取得するが、例えば、ユーザテーブルから取得してもよく、その取得先は問わない。主属性値等の取得先は、通常、簡易入力ボタンに対する指示と対に受信された端末識別子に対応するマスタテーブルまたはユーザテーブルである。
【0075】
マスタレコード蓄積部136は、簡易入力ボタン生成部133が簡易入力ボタンを生成する場合に、一の主属性値と、一の主属性値と対になる1以上の自動入力属性値とを有するマスタレコードをマスタテーブル格納部113に蓄積する。その結果、自動入力部135は、簡易入力ボタンに対する指示の受け付けに応じて、当該簡易入力ボタンに対応する主属性値、および1以上の自動入力属性値を、マスタテーブルから取得し、画面内の対応する2以上の各フィールドに対して入力することができる。マスタレコード蓄積部136は、マスタレコードを、通常、端末識別子と対に蓄積する。
【0076】
頻度取得部137は、1以上の各簡易入力ボタンに対する指示の頻度を取得する。頻度とは、例えば、全ボタンに対する指示の総回数に占める各ボタンへの指示の回数の割合であるが、その表現形式は問わない。頻度取得部137は、指示の頻度を、端末識別子ごとに取得してもよい。
【0077】
文字列長取得部138は、1以上の各簡易入力ボタンの中の文字列の長さを取得する。長さとは、通常、文字列を構成する文字の数である。文字が、例えば、全角、半角、10ポイント、14ポイントといった属性値を有する場合、文字列長取得部138は、かかる属性値を考慮した文字数を取得することは好ましい。属性値を考慮した文字数とは、例えば、全角文字は1個1文字、半角文字は1個0.5文字として数えた文字数でもよいし、または、10ポイントの文字で構成された文字列は1倍、14ポイントの文字で構成された文字列は1.4倍といった、文字のサイズに応じた係数を、当該文字列の文字数に乗算したものでもよい。文字列長取得部138は、文字列の長さを、端末識別子ごとに取得してもよい。
【0078】
出力部14は、各種の情報を出力する。各種の情報とは、例えば、画面などである。一般に、出力とは、ディスプレイへの表示、スピーカーからの音出力、外部の装置への送信、プリンタでの印字、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。出力部14による画面の出力は、通常、端末装置2への送信であるが、ディスプレイ等の出力デバイスを介した出力でもよい。
【0079】
画面出力部141は、画面構成部134が構成した画面を出力する。画面出力部141は、画面を、通常、端末装置2に送信するが、画面生成装置1自身のディスプレイを介して出力してもよい。これによって、端末装置2のディスプレイまたは画面生成装置1のディスプレイに、例えば、1以上の簡易入力ボタン、2以上のフィールド等を有する画面が表示される。
【0080】
端末装置2を構成する端末格納部21は、各種の情報を格納し得る。各種の情報とは、例えば、端末識別子などである。端末識別子は、例えば、MACアドレス、IPアドレス、IDなどであるが、端末装置2のユーザを識別するユーザ識別子を端末識別子として用いることも可能であり、その種類は問わない。
【0081】
端末受付部22は、各種の情報を受け付ける。各種の情報とは、例えば、画面の出力の指示、ユーザレコード、簡易入力ボタンに対する指示などである。端末受付部22は、簡易入力ボタンに対する指示を、通常、ボタン識別子と対に受け付ける。
【0082】
端末送信部23は、各種の情報を送信する。各種の情報とは、例えば、画面の出力の指示、ユーザレコード、簡易入力ボタンに対する指示などである。端末送信部23は、端末受付部22が受け付けた画面の出力の指示およびユーザレコードを、通常、端末格納部21に格納されている端末識別子と対に送信する。また、端末送信部23は、端末受付部22が受け付けた簡易入力ボタンに対する指示を、通常、ボタン識別子および端末識別子と対に送信する。
【0083】
端末受信部24は、各種の情報を受信する。各種の情報とは、画面などである。端末受信部24は、通常、画面構成装置1から画面を受信する。
【0084】
端末出力部25は、各種の情報を出力する。各種の情報とは、画面などである。端末出力部25は、通常、端末受信部24が受信した画面を、ディスプレイ等の出力デバイスを介して出力する。ただし、受信された画面は、例えば、記録媒体に蓄積されたり、プリンタで印刷されたりしてもよく、その出力先は問わない。
【0085】
格納部11、ユーザテーブル格納部111、スキーマ情報格納部112、マスタテーブル格納部113、および端末格納部21は、例えば、ハードディスクやフラッシュメモリといった不揮発性の記録媒体が好適であるが、RAMなど揮発性の記録媒体でも実現可能である。
【0086】
格納部11等に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が格納部11等で記憶されるようになってもよく、ネットワークや通信回線等を介して送信された情報が格納部11等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部11等で記憶されるようになってもよい。入力デバイスは、例えば、キーボード、マウス、タッチパネル等、何でもよい。
【0087】
受付部12、および端末受付部22は、入力デバイスを含むと考えても、含まないと考えてもよい。受付部12等は、入力デバイスのドライバーソフトによって、または入力デバイスとそのドライバーソフトとで実現され得る。
【0088】
受付部12の受信機能、および端末受信部22は、通常、有線または無線の通信手段(例えば、ネットワークカードやモデム等の通信モジュール)で実現されるが、放送を送信する手段(例えば、放送受信モジュール)で実現されてもよい。
【0089】
処理部13、ユーザレコード蓄積部131、判断部132、簡易入力ボタン生成部133、画面構成部134、自動入力部135、マスタレコード蓄積部136、頻度取得部137、および文字列長取得部138は、通常、MPUやメモリ等から実現され得る。処理部13等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。ただし、処理手順は、ハードウェア(専用回路)で実現してもよい。
【0090】
出力部14、画面出力部141、および端末出力部25は、ディスプレイ等の出力デバイスを含むと考えても含まないと考えてもよい。出力部14等は、出力デバイスのドライバーソフトによって、または出力デバイスとそのドライバーソフトとで実現され得る。
【0091】
出力部14の送信機能、および端末送信部23は、通常、有線または無線の通信手段で実現されるが、放送手段(例えば、放送モジュール)で実現されてもよい。
【0092】
次に、画面生成装置1の動作について
図2のフローチャートを用いて説明する。なお、既出の事項に関する説明は、省略または簡略化している。
【0093】
(ステップS201)処理部13は、画面を構成するか否かを判別する。具体的には、処理部13は、例えば、受付部12が画面の出力の指示を受け付けたことに応じて、画面構成部134が画面情報を保持しているか否かを判別し、画面情報が保持されていない場合に、画面を構成すると判断し、画面情報が保持されている場合には、画面を構成しないと判断してもよい。なお、このフローチャートでいう受け付けは、通常、端末装置2からの受信であるが、キーボード等の入力デバイスを介した受け付けでもよい。受付部12は、通常、端末装置2から、画面の出力の指示を、端末識別子と対に受信する。画面を構成する場合はステップS202に進み、画面を構成しない場合はステップS205に進む。
【0094】
(ステップS202)画面構成部134は、主フィールド、および1以上の自動入力フィールドを有する画面を構成し、画面情報を保持する。画面は、1以上の手動入力フィールドをも有していてよい。
【0095】
(ステップS203)画面構成部134は、簡易入力ボタン生成部133が1以上のボタン情報を保持しているか否かを判別する。ここでいう1以上のボタン情報は、通常、端末識別子と対になる1以上のボタン情報である。簡易入力ボタン生成部133が1以上のボタン情報を保持している場合はステップS204に進み、保持していない場合はステップS201に戻る。
【0096】
(ステップS204)画面構成部134は、保持している画面情報と、保持されている1以上のボタン情報とを用いて、1以上の簡易入力ボタンを画面に付加する。その後、ステップS201に戻る。
【0097】
(ステップS205)処理部13は、画面を出力するか否かを判別する。具体的には、処理部13は、例えば、受付部12が画面の出力の指示を受け付けたことに応じて、画面構成部134が画面情報を保持しているか否かを判別し、画面情報が保持されている場合に、画面を出力すると判断し、画面情報が保持されていない場合には、画面を出力しないと判断してもよい。画面を出力する場合はステップS206に進み、出力しない場合はステップS207に進む。
【0098】
(ステップS206)画面出力部141は、画面構成部134が構成した画面を出力する。構成した画面とは、1以上の簡易入力ボタンを付加した画面も含む。なお、このフローチャートでいう出力は、通常、端末装置2への送信であるが、ディスプレイ等の出力デバイスを介した出力でもよい。画面出力部141は、構成された画面を、通常、画面の出力の指示と対に受信された端末識別子で識別される端末装置2に送信する。その後、ステップS201に戻る。
【0099】
(ステップS207)処理部13は、受付部12がユーザレコードを受け付けたか否かを判別する。受付部12が受け付けるユーザレコードは、通常、一の主属性値、および当該一の主属性値と対になる1以上の自動入力属性値を有する。なお、ユーザレコードは、さらに、当該一の主属性値と対になる1以上の手動入力属性値をも有していてよい。この場合、ユーザレコードを受け付けることは、主フィールド、1以上の自動入力フィールド、および1以上の手動入力フィールを有する画面に対し、自動入力部135による主フィールドおよび1以上の自動入力フィールドへの入力が行われた後、1以上の手動入力フィールドへの1以上の手動入力属性値の手入力を受け付ける場合も含む。受付部12は、通常、ユーザレコードを、端末装置2から端末識別子と対に受信する。受付部12がユーザレコードを受け付けた場合はステップS208に進み、受け付けていない場合はステップS209に進む。
【0100】
(ステップS208)ユーザレコード蓄積部131は、受付部12が受け付けたユーザレコードをユーザテーブル格納部111に蓄積する。ユーザレコード蓄積部131は、通常、受付部12が受信したユーザレコードを当該端末識別子と対にユーザテーブル格納部111に蓄積する。その後、ステップS201に戻る。
【0101】
(ステップS209)判断部132は、受け付けられた又は蓄積された又は格納されているユーザレコードであり、一の主属性値を有するユーザレコードの数が予め決められた条件を満たすほど多いか否かを判別する。予め決められた条件については、前述したので繰り返さない。判断部132は、かかる判断を、通常、端末識別子ごとに行う。受け付けられた又は蓄積された又は格納されているユーザレコードであり、一の主属性値を有するユーザレコードの数が条件を満たすほど多い場合はステップS210に進み、そうでない場合はステップS212に進む。
【0102】
(ステップS210)簡易入力ボタン生成部133は、当該一の主属性値に対応するボタンであり、当該一の主属性値、および当該一の主属性値と対になる1以上の自動入力属性値を入力するためのボタンである簡易入力ボタンを生成し、ボタン情報を保持する。簡易入力ボタン生成部133は、生成したボタン情報を、通常、端末識別子と対に保持する。
【0103】
(ステップS211)マスタレコード蓄積部136は、当該一の主属性値および当該1以上の自動入力属性値を有するマスタレコードを構成し、マスタテーブル格納部113に蓄積する。簡易入力ボタン生成部133は、構成したマスタレコードを、通常、端末識別子と対に蓄積する。その後、ステップS201に戻る。
【0104】
(ステップS212)処理部13は、受付部12が画面内の一の簡易入力ボタンに対する指示を受け付けたか否か否かを判別する。受付部12は、通常、一の簡易入力ボタンに対する指示を、端末装置2から端末識別子と対に受信する。受付部12が画面内の一の簡易入力ボタンに対する指示を受け付けた場合はステップS213に進み、受け付けていない場合はステップS201に戻る。
【0105】
(ステップS213)自動入力部135は、当該簡易入力ボタンに対応する一の主属性値、および当該一の主属性値と対になる1以上の自動入力属性値をマスタテーブルから取得する。自動入力部135は、一の主属性値等を、通常、一の簡易入力ボタンに対する指示と対に受信された端末識別子に対応するマスタテーブルから取得する。
【0106】
(ステップS214)自動入力部135は、取得した一の主属性値および1以上の自動入力属性値を、画面内の主フィールドおよび1以上の自動入力フィールドに入力する。その後、ステップS201に戻る。
【0107】
(ステップS215)処理部13は、簡易入力ボタンの表示を変更するか否かを判断する。具体的には、例えば、頻度取得部137が1以上の各簡易入力ボタンに対する指示の頻度を所定の時間間隔で取得し、当該1以上の簡易入力ボタンの間の頻度の順位が変化した場合に、簡易入力ボタンの表示を変更すると判断し、順位が変化していない場合には、簡易入力ボタンの表示を変更しないと判断してもよい。または、例えば、簡易入力ボタン生成部133が新たな簡易入力ボタンを生成したことに応じて、文字列長取得部138が、当該新たな簡易入力ボタンを含む2以上の各簡易入力ボタンの文字列長を取得し、取得した2以上の文字列長を合計し、合計値が閾値を超える又は閾値以上である場合に簡易入力ボタンの表示を変更すると判断し、合計値が閾値以下である又は閾値に満たない場合には簡易入力ボタンの表示を変更しないと判断してもよい。処理部13は、かかる判断を、通常、端末識別子ごとに行う。簡易入力ボタンの表示を変更する場合はステップS216に進み、変更しない場合はステップS201に戻る。
【0108】
(ステップS216)画面構成部134は、簡易入力ボタン生成部133が保持している1以上のボタン情報を変更する。具体的には、画面構成部134は、例えば、画面内の1以上の簡易ボタンが、最新に取得された頻度の順に並ぶように、1以上のボタン情報が有する位置情報を変更してもよい。または、画面構成部134は、例えば、新たな簡易入力ボタンを含む2以上の簡易ボタンが画面内の所定の領域内に収まるように、2以上の簡易ボタンのサイズを決定し、2以上のボタン情報を更新してもよい。画面構成部134は、かかる変更を、通常、端末識別子ごとに行う。その後、ステップS201に戻る。
【0109】
なお、
図2のフローチャートにおいて、画面生成装置1の電源オンやプログラムの起動に応じて処理が開始し、電源オフや処理終了の割り込みにより処理は終了する。ただし、処理の開始または終了のトリガは問わない。
【0110】
図3は、端末装置2の動作を説明するフローチャートである。
【0111】
(ステップS301)端末受付部22は、画面の出力の指示を受け付けたか否かを判別する。なお、このフローチャートでいう受け付けは、通常、キーボード等の入力デバイスを介した受け付けである。画面の出力の指示を受け付けた場合はステップS302に進み、受け付けていない場合はステップS303に進む。
【0112】
(ステップS302)端末送信部23は、受け付けられた指示を、通常、端末格納部21に格納されている端末識別子と対に、画面構成装置1に送信する。その後、ステップS301に戻る。
【0113】
(ステップS303)端末受信部24は、画面を受信したか否かを判別する。画面を受信した場合はステップS304に進み、受信していない場合はステップS305に進む。
【0114】
(ステップS304)端末出力部25は、受信された画面を、ディスプレイ等の出力デバイスを介して出力する。その後、ステップS301に戻る。
【0115】
(ステップS305)端末受付部22は、ユーザレコードを受け付けたか否かを判別する。ユーザレコードを受け付けた場合はステップS306に進み、受け付けていない場合はステップS307に進む。
【0116】
(ステップS306)端末送信部23は、受け付けられたユーザレコードを、通常、格納されている端末識別子と対に、画面構成装置1に送信する。その後、ステップS301に戻る。
【0117】
(ステップS307)端末受付部22は、画面内の1以上の簡易入力ボタンのうち、一の簡易入力ボタンに対する指示を受け付けたか否かを判別する。一の簡易入力ボタンに対する指示を受け付けた場合はステップS308に進み、受け付けていない場合はステップS301に戻る。
【0118】
(ステップS308)端末送信部23は、受け付けられた指示を、通常、当該一の簡易ボタンを識別するボタン識別子、および格納されている端末識別子と対に、画面構成装置1に送信する。その後、ステップS301に戻る。
【0119】
なお、
図3のフローチャートにおいて、端末装置2の電源オンやプログラムの起動に応じて処理が開始し、電源オフや処理終了の割り込みにより処理は終了する。ただし、処理の開始または終了のトリガは問わない。
【0120】
以下、本実施の形態における画面生成装置1の具体的な動作例について説明する。ただし、本例は、本発明を何ら限定するものではなく、適宜変更され得ることはいうまでもない。また、既出の事項に関する説明は、省略または簡略化している。
【0121】
本例の処理システムは、画面生成装置1、および2以上の端末装置2を備える。画面生成装置1と2以上の各端末装置2とは、ネットワークを介して通信可能に接続されている。画面生成装置1は、ある事務所のサーバであり、2以上の各端末装置2は、当該事務所のPCである。いま、この事務所の所員が、一の端末装置2を操作して、ユーザレコードの入力を行おうとしている。この所員が入力を行っている間、他の端末装置2は、ユーザレコードの入力には使われていないものとする。以下では、この所員によって操作されている端末装置2を、当該端末装置2、または単に端末装置2と記す場合がある。
【0122】
ユーザテーブル格納部111には、
図4に示すようなユーザテーブルが格納されている。このユーザテーブルは、当該端末装置2を識別する端末識別子に対応付いたユーザテーブルである。なお、ユーザテーブル格納部111には、このユーザテーブルに加えて、他の端末装置2を識別する端末識別子に対応付いたユーザテーブルも格納され得る。
【0123】
図4は、ユーザテーブルのデータ構造図である。このユーザテーブルは、IDに対応付いた3以上のユーザレコードで構成されている。各ユーザレコードは、受付部12によって受け付けられ、ユーザレコード蓄積部131によってユーザテーブル格納部111に蓄積されたものである。
【0124】
IDは、ユーザレコードを識別する情報であり、本例では、1,2,…といった番号である。ユーザレコードは、5以上の属性値を有する。5以上の属性値とは、属性“所有者の氏名又は名称”の値、属性“所有者の住所”の値、属性“所有者コード”の値、属性“使用者の氏名又は名称”の値、属性“使用者の住所”の値、…である。
【0125】
例えば、ID“1”に対応するユーザレコード(以下、ユーザレコード1と記す場合がある)は、属性“所有者の氏名又は名称”の値“株式会社オートバック○セブン”、属性“所有者の住所”の値“東京都江東区…”、属性“所有者コード”の値“11662”、属性“使用者の氏名又は名称”の値“鈴木○○”、属性“使用者の住所”の値“東京都港区…”、…を有する。また、ID“2”に対応するユーザレコード(ユーザレコード2)は、属性“所有者の氏名又は名称”の値“株式会社○DOM”、属性“所有者の住所”の値“東京都千代田区…”、属性“所有者コード”の値“11673”、属性“使用者の氏名又は名称”の値“山田○○”、属性“使用者の住所”の値“東京都世田谷区…”、…を有する。また、ユーザレコード3は、属性“所有者の氏名又は名称”の値“○○カーセンター”、属性“所有者の住所”の値“大阪市住之江区…”、属性“所有者コード”の値“11721”、属性“使用者の氏名又は名称”の値“中村○○”、属性“使用者の住所”の値“大阪市中央区…”などを有する。
【0126】
同様に、ユーザレコードiは、属性“所有者の氏名又は名称”の値“株式会社オートバック○セブン”、属性“所有者の住所”の値“東京都江東区…”、属性“所有者コード”の値“11662”、属性“使用者の氏名又は名称”の値“○○商事”、属性“使用者の住所”の値“東京都中央区…”、…を有する。また、ユーザレコードjは、属性“所有者の氏名又は名称”の値“株式会社○DOM”、属性“所有者の住所”の値“東京都千代田区…”、属性“所有者コード”の値“11673”、属性“使用者の氏名又は名称”の値“○○産業”、属性“使用者の住所”の値“東京都板橋区…”、…を有する。ただし、ユーザテーブルのデータ構造は問わない。
【0127】
スキーマ情報格納部112には、
図5に示すようなスキーマ情報が格納されている。このスキーマ情報は、属性名と属性種類情報との対の集合で構成される。対の集合とは、例えば、属性名“所有者の氏名又は名称”と属性種類情報“主属性”との対、属性名“所有者の住所”と属性種類情報“自動入力属性”との対、属性名“所有者コード”と属性種類情報“自動入力属性”との対、属性名“使用者の氏名又は名称”と属性種類情報“手動入力属性”との対、属性名“使用者の住所”と属性種類情報“手動入力属性”との対、…などである。ただし、スキーマ情報のデータ構造は問わない。
【0128】
マスタテーブル格納部113には、
図6に示すようなマスタテーブルが格納されている。このマスタテーブルは、端末装置2を識別する端末識別子に対応付いたマスタテーブルである。なお、マスタテーブル格納部113には、このマスタテーブルに加えて、他の端末装置2を識別する端末識別子に対応付いたマスタテーブルも格納され得る。
【0129】
図6は、マスタテーブルのデータ構造図である。このマスタテーブルは、IDに対応付いた2以上のマスタレコードで構成されている。IDは、マスタレコードを識別する情報であり、本例では、1,2,…といった番号である。マスタレコードは、3以上の属性値を有する。3以上の属性値とは、属性“所有者の氏名又は名称”の値、属性“所有者の住所”の値、属性“所有者コード”の値、…などである。
【0130】
具体的には、例えば、ID“1”に対応するマスタレコード(以下、マスタレコード1と記す場合がある)は、属性“所有者の氏名又は名称”の値“株式会社オートバック○セブン”、属性“所有者の住所”の値“東京都江東区…”、属性“所有者コード”の値“11662”、…を有する。また、ID“2”に対応するマスタレコード(マスタレコード2)は、属性“所有者の氏名又は名称”の値“株式会社○DOM”、属性“所有者の住所”の値“東京都千代田区…”、属性“所有者コード”の値“11673”、…を有する。たたし、マスタテーブルのデータ構造は問わない。
【0131】
ユーザテーブルが有するユーザレコードiは、一の主属性値である“株式会社オートバック○セブン”を有する2つ目のユーザレコードである。なお、“株式会社オートバック○セブン”を有する1つ目のユーザレコードは、ユーザレコード1である。同様に、ユーザレコードjは、もう一つの主属性値である“株式会社○DOM”を有する2つ目のユーザレコードである。なお、“株式会社○DOM”を有する1つ目のユーザレコードは、ユーザレコード2である。そして、別の一の主属性値である“○○カーセンター”を有するユーザレコードは、現時点では、ユーザレコード3だけである。
【0132】
判断部132は、予め決められた条件“閾値2以上であること”を保持している。マスタテーブルを構成するマスタレコード1は、ユーザレコード蓄積部131がユーザレコードiをユーザテーブル格納部111に蓄積したとき、判断部132が、一の主属性値“株式会社オートバック○セブン”を有するユーザレコードの数が予め決められた条件“閾値2以上であること”を満たすほど多いと判断したことに応じて、マスタレコード蓄積部136が、ユーザテーブルから取得し、マスタテーブル格納部113に蓄積したものである。同様に、マスタレコード2は、ユーザレコード蓄積部131がユーザレコードjをユーザテーブル格納部111に蓄積したとき、判断部132が、もう一つの主属性値“株式会社○DOM”を有するユーザレコードの数が予め決められた条件“閾値2以上であること”を満たすほど多いと判断したことに応じて、マスタレコード蓄積部136が、ユーザテーブルから取得し、マスタテーブル格納部113に蓄積したものである。
【0133】
簡易入力ボタン生成部133は、過去に生成した2つのボタン情報を保持している。この2つのボタン情報は、当該端末装置2を識別する端末識別子に対応付いたボタン情報である。なお、簡易入力ボタン生成部133は、この2つのボタン情報に加えて、他の端末装置2を識別する端末識別子に対応付いたボタン情報も保持し得る。
【0134】
保持されている2つのボタン情報のうち1番目のボタン情報は、文字列“オートバック○”、位置情報(x1,y1)、形状情報“矩形”、サイズ“縦10mm×横50mm”等を有する。文字列“オートバック○”は、ユーザレコード1等が有する主属性値“株式会オートバック○セブン”の省略形である。位置情報(x1,y1)は、重心座標である。なお、2番目以降のボタン情報や、フィールド情報、帳票情報等が有する位置情報も、重心座標である。同様に、2番目のボタン情報は、文字列“○DOM”、位置情報(x2,y2)、形状情報“矩形”、サイズ“縦10mm×横30mm”等を有する。文字列“○DOM”は、ユーザレコード2等が有する主属性値“株式会○DOM”の省略形である。
【0135】
2番目のボタン情報は、ユーザレコード蓄積部131がユーザレコードiをユーザテーブル格納部111に蓄積したとき、判断部132が、一の主属性値“株式会社オートバック○セブン”を有するユーザレコードの数が予め決められた条件“閾値2以上であること”を満たすほど多いと判断したことに応じて、簡易入力ボタン生成部133が生成したものである。同様に、保持されている2番目のボタン情報は、ユーザレコード蓄積部131がユーザレコードjをユーザテーブル格納部111に蓄積したとき、判断部132が、もう一つの主属性値“株式会社○DOM”を有するユーザレコードの数が予め決められた条件“閾値2以上であること”を満たすほど多いと判断したことに応じて、簡易入力ボタン生成部133が生成したものである。
【0136】
画面構成部134は、過去に生成した画面情報を保持している。この画面情報は、当該端末装置2を識別する端末識別子に対応付いたボタン情報である。なお、画面構成部134は、この画面情報に加えて、他の端末装置2を識別する端末識別子に対応付いた画面情報も保持し得る。
【0137】
この画面情報は、上記2つのボタン情報と、5以上のフィールド情報とを含む。5以上のフィールド情報のうち1番目のフールド情報は、属性“所有者の氏名又は名称”に対応する主フィールドの情報であり、位置情報(xa,ya)、形状情報“矩形”、サイズ“縦10mm×横100mm”等を有する。同様に、2番目のフールド情報は、属性“所有者の住所”に対応する自動入力フィールドの情報であり、位置情報(xb,yb)、形状情報“矩形”、サイズ“縦10mm×横150mm”等を有する。また、3番目のフールド情報は、属性“所有者コード”に対応する自動入力フィールドの情報であり、位置情報(xc,yc)、形状情報“矩形”、サイズ“縦10mm×横40mm”等を有する。4番目のフールド情報は、属性“使用者の氏名又は名称”に対応する手動入力フィールドの情報であり、位置情報(xd,yd)、形状情報“矩形”、サイズ“縦10mm×横100mm”等を有する。5番目のフールド情報は、属性“所有者コード”に対応する手動入力フィールドの情報であり、位置情報(xe,ye)、形状情報“矩形”、サイズ“縦10mm×横150mm”等を有する。
【0138】
また、画面情報は、帳票情報も含む。帳票情報は、位置情報、サイズ、および上記5以上のフィールド情報に対応する5以上の属性名情報を有する。サイズは、帳票のサイズ(例えば、縦150mm×横300mm等)である。5以上の各属性名情報は、属性名と、当該属性名の画面内における位置を示す位置情報を有する。属性名は、前述した属性(“所有者の氏名又は名称”、“所有者の住所”等)を示す文字列である。ただし、属性名情報のデータ構造は問わない。
【0139】
さらに、画面情報は、例えば、印刷ボタン、保存ボタンといった、簡易入力ボタン以外のボタンのボタン情報などをも含む。かかるボタンのボタン情報も、簡易入力ボタンのボタン情報と同様のデータ構造を有していてよい。
【0140】
受付部12が画面の出力の指示を受け付けると、画面出力部141は、画面構成部134が保持している上記画面情報を用いて、例えば、
図7に示すような画面を出力する。
図7は、画面の出力例を示す図である。この画面は、5以上の属性名(「所有者の氏名又は名称」、「所有者の住所」、「所有者コード」、「使用者の氏名又は名称」および「使用者の住所」など)と、当該5以上の属性名に対応付いた5以上のフィールドとを有する入力シート、2つの簡易入力ボタン(「オートバック○」および「○DOM」など)、印刷ボタン、および保存ボタンを有する。
【0141】
受付部12が画面内の簡易入力ボタン「オートバック○」に対する指示を受け付けると、自動入力部135は、当該簡易入力ボタンに対応する主属性値“株式会社オートバック○セブン”、および当該主属性値に対応する2以上の自動入力属性値“東京都江東区…”,“11662”,…をマスタテーブルから取得し、取得した主属性値および1以上の自動入力属性値を、画面内の主フィールド(属性名「所有者の氏名又は名称」に対応するフィールド)および2以上の自動入力フィールド(属性名「所有者の住所」に対応するフィールド、および属性名「所有者コード」に対応するフィールド)に入力する。これによって、
図7の画面は、例えば、
図8のように変化する。
【0142】
図8の画面では、2以上の手動入力フィールド(属性名「使用者の氏名又は名称」に対応するフィールド、および属性名「使用者の住所」に対応するフィールドなど)は空欄である。受付部12が属性名「使用者の氏名又は名称」に対応するフィールドに対する属性値“松田○○”をキーボード等で受け付けると、処理部13は、当該属性値を当該フィールドに入力する。同様に、受付部12が属性名「使用者の住所」に対応するフィールドに対する属性値“千葉県浦安市…”をキーボード等で受け付けると、処理部13は、当該属性値を当該フィールドに入力する。
【0143】
こうして2以上の手動入力フィールドへの手入力も完了し、受付部12が画面内の保存ボタンに対する指示を受け付けると、ユーザレコード蓄積部131は、入力された5以上の属性値“株式会社オートバック○セブン”,“東京都江東区…”,“11662”,“松田○○”,“千葉県浦安市…”,…を有する新たなユーザレコードを、ユーザレコード格納部111に蓄積する。蓄積が完了すると、画面出力部141は、
図8の画面を、再び
図7のように更新する。
【0144】
その後、受付部12が、
図7の画面内の5以上のフィールドに対して、5以上の属性値“○○カーセンター”,“大阪市住之江区…”,“11721”,“○○事務所”,“大阪市北区…”,…を順次受け付け、さらに、保存ボタンへの指示を受け付けると、ユーザレコード蓄積部131は、当該5以上の属性値を有する新たなユーザレコードを、ユーザレコード格納部111に蓄積する。これに応じて、判断部132が、別の一の主属性値“○○カーセンター”を有するユーザレコードの数が予め決められた条件“閾値2以上であること”を満たすほど多いと判断し、簡易入力ボタン生成部133は、3番目のボタン情報を生成する。3番目のボタン情報は、文字列“○○カーC”、位置情報(x3,y3)、形状情報“矩形”、サイズ“縦10mm×横40mm”等を有する。簡易入力ボタン生成部133は、当該別の一の主属性値“○○カーセンター”を示す文字列のうち、2以上の文字(センター)を別の1以上の文字(C)に置き換えることで、当該文字列の省略形“○○カーC”を取得する。
【0145】
上記3番目のボタン情報の生成に伴い、マスタレコード蓄積部136は、ユーザレコードから、当該別の一の主属性値“○○カーセンター”と、これに対応する2以上の自動入力属性値“大阪市住之江区…”,“11721”,…を取得し、取得した3以上の属性値を有する新たなマスタレコードを、例えばID“3”に対応付けてマスタレコード格納部113に蓄積する。こうして追加された新たなマスタレコード(マスタレコード3)は、属性“所有者の氏名又は名称”の値“○○カーセンター”、属性“所有者の住所”の値“大阪市住之江区…”、属性“所有者コード”の値“11721”、…などを有する。
【0146】
画面構成部134は、画面内の表示領域のサイズ“縦10mm×横100mm”を保持している。画面構成部134は、1番目から3番目番目までの3つの各ボタン情報から横方向のサイズを取得し、その合計値を“50mm+30mm+40mm=120mm”のように計算する。画面構成部134は、計算した合計値120mmが、保持している横方向のサイズ“100mm”を超えているため、3つの簡易入力ボタンが表示領域内に収まるように、それぞれのサイズを決定する。例えば、3つの各簡易入力ボタンの横サイズに“保持値/合計値”つまり“100/120”を乗算することで、3つの各簡易入力ボタンの新たな横サイズ“42mm”,“25mm”および“33mm”が得られる。
【0147】
なお、画面構成部134は、こうして得られた3つの横サイズを、例えば、“40mm”,“30mm”および“30mm”のように四捨五入したり、例えば、“40mm”,“25mm”および“35mm”のように丸めたりといった、適宜な端数処理を行ってもよい。
【0148】
また、画面構成部134は、各簡易入力ボタンのサイズ変更に伴い、各簡易入力ボタンの位置情報も変更することは好ましい。画面構成部134は、例えば、ボタン間の間隔が一定値(例えば、2mm、5mm等)となるように、各ボタンの新たな位置情報を取得してもよい。
【0149】
また、画面構成部134は、各簡易入力ボタンのサイズ変更に伴い、簡易入力ボタンが有する文字列のフォントサイズも変更することは好ましい。例えば、ボタンの横サイズが40mmから30mmに縮小された場合には、フォンサイズを12ポイントから9ポイントに変更してもよい。
【0150】
画面構成部134は、保持している3つの各ボタン情報が有する横方向のサイズを、こうして取得した新たな横サイズに変更する。画面出力部141は、変更後の3つのボタン情報を用いて、例えば、
図9に示すような画面を出力する。
図9の画面では、3つの簡易入力ボタン「オートバック○」、「○DOM」および「○○カーC」が既定の表示領域(点線で示した枠)内に配置されている。
【0151】
なお、上例は、一の端末装置2を操作してユーザレコードの入力を行う場合の処理であるが、2以上の端末装置2で入力が行われる場合には、画面生成装置1は、各端末装置2を識別する端末識別子ごとに、同様の処理を実行すればよい。
【0152】
以上、本実施の形態によれば、記録媒体は、主たる属性値である主属性値を含む2以上の属性値を有する1以上のユーザレコードを有するユーザテーブルが格納されるユーザテーブル格納部111を具備しており、画面生成装置1は、ユーザレコードを受け付け、受け付けたユーザレコードをユーザテーブル格納部111に蓄積し、一の主属性値を有する受け付けたユーザレコードの数、または一の主属性値を有する蓄積したユーザレコードの数、または一の主属性値を有するユーザテーブル格納部111に格納されているユーザレコードの数が予め決められた条件を満たすほど多いか否かを判断し、予め決められた条件を満たすほど多いと判断した場合、一の主属性値に対応するボタンであり、ユーザレコードを構成する1以上の属性値を入力するためのボタンである簡易入力ボタンを生成し、ユーザレコードを入力する画面であり、簡易入力ボタンを有する画面を構成し、画面を出力することにより、ユーザレコードを構成する1以上の属性値を簡易に入力できる。
【0153】
また、上記画面生成装置1において、ユーザレコードは、簡易入力ボタンに対応する主属性の値である主属性値、簡易入力ボタンの指示により自動的に画面に入力される自動入力属性の値である1以上の自動入力属性値、およびユーザレコードごとにユーザが手入力する手動入力属性の値である1以上の手動入力属性値を有することにより、簡易入力ボタンの指示により、主属性値および1以上の自動入力属性値を自動的に入力できる。
【0154】
また、記録媒体は、ユーザレコードを構成する3以上の各属性値に対応する属性を管理するスキーマ情報であり、主属性、自動入力属性、または手動入力属性のいずれであるかを示す属性種類情報を、属性ごとに有するスキーマ情報が格納されるスキーマ情報格納部112をさらに具備し、上記画面生成装置1は、属性種類情報が主属性である属性の属性値を用いて、簡易入力ボタンを生成し、一の簡易入力ボタンに対する指示を受け付け、指示の受け付けに応じて、簡易入力ボタンに対応する主属性値、および簡易入力ボタンに対応する主属性値と対になる1以上の属性値であり、属性種類情報が自動入力属性である1以上の各属性値を、画面内の対応する2以上の各フィールドに対して入力することにより、主属性値を用いて簡易ボタンを生成し、簡易ボタンの指示により、主属性値および1以上の自動入力属性値を2以上のフィールドに自動的に入力できる。
【0155】
また、記録媒体は、主属性値と1以上の自動入力属性値とを有する1以上のマスタレコードを有するマスタテーブルが格納されるマスタテーブル格納部113をさらに具備し、上記画面生成装置1は、簡易入力ボタンを生成する場合に、一の主属性値と、一の主属性値と対になる1以上の自動入力属性値とを有するマスタレコードをマスタテーブル格納部113に蓄積し、指示の受け付けに応じて、簡易入力ボタンに対応する主属性値、および1以上の自動入力属性値を、マスタテーブルから取得し、画面内の対応する2以上の各フィールドに対して入力することにより、簡易入力ボタンを生成する場合に、マスタレコードをも自動構成し、マスタテーブルに蓄積することで、簡易入力ボタンが指示された場合に、マスタテーブルから主属性値および1以上の自動入力属性値を取得し、2以上のフィールドに入力できる。
【0156】
また、上記画面生成装置1は、予め決められた条件に基づいて、生成した1以上の簡易入力ボタンの表示を変更した画面を構成することにより、条件に応じて表示を変えることで、1以上の簡易入力ボタンの操作性を高めることができる。
【0157】
また、上記画面生成装置1は、1以上の各簡易入力ボタンに対する指示の頻度を取得し、取得した指示の頻度を用いて、1以上の簡易入力ボタンの表示を変更することにより、指示の頻度に応じて表示を変えることで、特に、頻用される簡易入力ボタンの操作性を高めることができる。
【0158】
また、上記画面生成装置1は、1以上の各簡易入力ボタンの中の文字列の長さを取得し、1以上の各簡易入力ボタンの中の文字列の長さを用いて、1以上の簡易入力ボタンの表示を変更することにより、文字列の長さに応じて表示を変えることで、1以上の簡易入力ボタンの視認性を高めることができる。
【0159】
また、上記画面生成装置1は、一の主属性値の一部を省略した文字列を中に有する簡易入力ボタンを生成することにより、ボタン内の文字列を短くすることで、同時に表示可能な簡易入力ボタンの数の増加、文字列の視認性の向上、のうち1以上が実現され、その結果、1以上の簡易入力ボタンの操作性を高めることができる。
【0160】
さらに、本実施の形態における処理は、ソフトウェアで実現してもよい。そして、このソフトウェアをソフトウェアダウンロード等により配布してもよい。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布してもよい。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における画面生成装置1を実現するソフトウェアは、以下のようなプログラムである。つまり、コンピュータがアクセス可能な記録媒体は、主たる属性値である主属性値を含む2以上の属性値を有する1以上のユーザレコードを有するユーザテーブルが格納されるユーザテーブル格納部111を具備し、このプログラムは、前記コンピュータを、ユーザレコードを受け付ける受付部12と、前記受付部12が受け付けたユーザレコードを前記ユーザテーブル格納部111に蓄積するユーザレコード蓄積部131と、一の主属性値を有する前記受付部12が受け付けたユーザレコードの数、または一の主属性値を有する前記ユーザレコード蓄積部131が蓄積したユーザレコードの数、または一の主属性値を有する前記ユーザテーブル格納部111に格納されているユーザレコードの数が予め決められた条件を満たすほど多いか否かを判断する判断部132と、前記判断部132が前記予め決められた条件を満たすほど多いと判断した場合、前記一の主属性値に対応するボタンであり、ユーザレコードを構成する1以上の属性値を入力するためのボタンである簡易入力ボタンを生成する簡易入力ボタン生成部133と、ユーザレコードを入力する画面であり、前記簡易入力ボタンを有する画面を構成する画面構成部134と、前記画面を出力する画面出力部141として機能させるためのプログラムである。
【0161】
図10は、本実施の形態におけるプログラムを実行して、画面生成装置1を実現するコンピュータシステム900の外観図である。本実施の形態は、コンピュータハードウェアおよびその上で実行されるコンピュータプログラムによって実現され得る。
図10において、コンピュータシステム900は、ディスクドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、ディスプレイ904とを備える。なお、キーボード902やマウス903やディスプレイ904をも含むシステム全体をコンピュータと呼んでもよい。
【0162】
図11は、コンピュータシステム900の内部構成の一例を示す図である。
図11において、コンピュータ901は、ディスクドライブ905に加えて、MPU911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、アプリケーションプログラム、システムプログラム、およびデータを記憶するストレージ914と、MPU911、ROM912等を相互に接続するバス915と、外部ネットワークや内部ネットワーク等のネットワークへの接続を提供するネットワークカード916と、を備える。ストレージ914は、例えば、ハードディスク、SSD、フラッシュメモリなどである。
【0163】
コンピュータシステム900に、画面生成装置1の機能を実行させるプログラムは、例えば、DVD、CD−ROM等のディスク921に記憶されて、ディスクドライブ905に挿入され、ストレージ914に転送されてもよい。これに代えて、そのプログラムは、ネットワークを介してコンピュータ901に送信され、ストレージ914に記憶されてもよい。プログラムは、実行の際にRAM913にロードされる。なお、プログラムは、ディスク921、またはネットワークから直接、ロードされてもよい。また、ディスク921に代えて他の着脱可能な記録媒体(例えば、DVDやメモリカード等)を介して、プログラムがコンピュータシステム900に読み込まれてもよい。
【0164】
プログラムは、コンピュータの詳細を示す901に、画面生成装置1の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
【0165】
端末装置2も、同様のコンピュータシステム900で実現され得る。端末装置2がタブレット端末等の携帯端末である場合、例えば、キーボード902およびマウス903はタッチパネルに、ディスクドライブ905はメモリカードスロットに、ディスク921はメモリカードに、それぞれ置き換えられることが好ましい。図示しない外部装置も、基本的なハードウェア構成は、PCや携帯端末と同様でよい。ただし、以上は例示であり、画面生成装置1等を実現するコンピュータのハードウェア構成は問わない。
【0166】
なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
【0167】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【0168】
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【0169】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【解決手段】画面生成装置は、主属性値を含む2以上の属性値を有する1以上のユーザレコードを有するユーザテーブルが格納されるユーザテーブル格納部と、ユーザレコードを受け付ける受付部と、受け付けられたユーザレコードをユーザテーブル格納部に蓄積するユーザレコード蓄積部と、受け付けられた又は蓄積された又は格納されているユーザレコードの数が予め決められた条件を満たすほど多いか否かを判断する判断部と、当該数が当該条件を満たすほど多い場合、一の主属性値に対応するボタンであり、ユーザレコードを構成する1以上の属性値を入力するためのボタンである簡易入力ボタンを生成する簡易入力ボタン生成部と、ユーザレコードを入力する画面であり、簡易入力ボタンを有する画面を構成する画面構成部と、画面を出力する画面出力部とを具備する。