(57)【要約】【課題】従来、通信量を抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことは容易でなかった。【解決手段】画面情報が格納される端末画面情報格納部と、１以上のマスタが格納される端末マスタ格納部と、２以上の予め決められたタイミングで、マスタのダウンロードを要求する指示をサーバ装置に送信する端末指示送信部と、指示の送信に応じて、マスタを受信する端末マスタ受信部と、受信したマスタを端末マスタ格納部に蓄積する端末マスタ蓄積部と、端末画面情報格納部の端末画面情報と端末マスタ格納部のマスタとを用いて、伝票情報を入力する画面を出力する端末画面出力部と、画面に対する伝票情報の入力を受け付ける端末受付部と、受け付けた伝票情報をサーバ装置に送信する端末伝票送信部とを具備する端末装置により、通信量を抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことができる。【選択図】図１
2018097784.tif 000002
【特許請求の範囲】
【請求項１】
伝票情報を管理するサーバ装置と、伝票情報の入力を行う端末装置とを具備する会計情報システムを構成する端末装置であって、
前記サーバ装置は、
伝票情報が格納される伝票格納部と、
２以上のマスタが格納されるマスタ格納部と、
前記端末装置からの指示を受信する指示受信部と、
前記指示に応じたタイミングに対応するマスタを前記マスタ格納部から取得するマスタ取得部と、
前記マスタ取得部が取得したマスタを前記端末装置に送信するマスタ送信部とを具備し、
前記端末装置は、
伝票情報を入力する画面である画面情報が格納される端末画面情報格納部と、
１以上のマスタが格納される端末マスタ格納部と、
２以上の予め決められたタイミングで、マスタのダウンロードを要求する指示を前記サーバ装置に送信する端末指示送信部と、
前記指示の送信に応じて、マスタを受信する端末マスタ受信部と、
前記端末マスタ受信部が受信したマスタを前記端末マスタ格納部に蓄積する端末マスタ蓄積部と、
前記端末画面情報格納部の端末画面情報と前記端末マスタ格納部のマスタとを用いて、伝票情報を入力する画面を出力する端末画面出力部と、
前記画面に対する伝票情報の入力を受け付ける端末受付部と、
前記端末受付部が受け付けた伝票情報を前記サーバ装置に送信する端末伝票送信部とを具備する会計情報システムを構成する端末装置。
【請求項２】
前記指示受信部は、
前記端末装置の起動時に、当該端末装置からの指示を受信し、
前記マスタ取得部は、
前記指示に応じて、起動時にダウンロードすべきマスタを前記マスタ格納部から取得する請求項１記載の端末装置。
【請求項３】
前記予め決められたタイミングは、製品の起動時、画面を構成するメニューの選択時、マスタの使用時のうちの２以上である請求項１または請求項２記載の端末装置。
【請求項４】
前記端末装置は、
会計情報の処理のアプリケーションが格納される端末アプリ格納部と、
会計情報の処理のアプリケーションの起動指示を受け付ける端末起動指示受付部とをさらに具備し、
前記端末指示送信部は、
前記起動指示の受け付けに応じて、製品の起動時に対応するマスタのダウンロードを要求する指示を前記サーバ装置に送信する請求項１から請求項３いずれか一項に記載の端末装置。
【請求項５】
前記端末画面出力部が、出力すべきマスタが端末マスタ格納部に存在しないと判断した場合、前記端末指示送信部は当該、出力すべきマスタを要求する指示を前記サーバ装置に送信し、
前記端末画面出力部は、
前記出力すべきマスタをも用いて、伝票情報を入力する画面を出力する請求項１から請求項４いずれか一項に記載の端末装置。
【請求項６】
前記指示に応じたタイミングは、製品の起動時であり、
前記端末指示送信部は、
起動指示の受け付けに応じて、前記端末マスタ格納部の対応するマスタの更新時刻を含む指示を前記サーバ装置に送信し、
前記マスタ取得部は、
製品の起動時に対応するマスタであり、前記指示が有する更新時刻より新しい更新時刻に対応するマスタを前記マスタ格納部から取得する請求項１から請求項５いずれか一項に記載の端末装置。
【請求項７】
前記２以上の予め決められたタイミングのうちの一のタイミングは、メニューの選択時であり、
前記端末指示送信部は、
メニュー選択の受け付けに応じて、前記端末マスタ格納部の対応するマスタの更新時刻を含む指示を前記サーバ装置に送信し、
前記マスタ取得部は、
前記指示に対応するマスタであり、前記指示が有する更新時刻より新しい更新時刻に対応するマスタを前記マスタ格納部から取得する請求項１から請求項６いずれか一項に記載の端末装置。
【請求項８】
前記２以上の予め決められたタイミングのうちの一のタイミングは、マスタの使用時であり、
前記端末指示送信部は、
前記端末装置においてマスタを使用する際に、前記端末マスタ格納部の対応するマスタの更新時刻を含む指示を前記サーバ装置に送信し、
前記マスタ取得部は、
前記指示に対応するマスタであり、前記指示が有する更新時刻より新しい更新時刻に対応するマスタを前記マスタ格納部から取得する請求項１から請求項７いずれか一項に記載の端末装置。
【請求項９】
前記端末装置は、
前記端末受付部がマスタを構成する一のデータの入力の受け付けた際に、当該一のデータが存在するか否かの問い合わせを送信する端末問合送信部と、
前記問い合わせの送信に応じて、一のデータが存在しない旨の情報を受信する端末結果受信部と、
前記一のデータが存在しない旨の情報が受信された場合に、前記一のデータが存在しない旨のエラー出力を行うエラー出力部とをさらに具備し、
前記サーバ装置は、
前記問い合わせを受信する問合受信部と、
前記問い合わせに応じて、前記マスタ格納部の中に前記一のデータが存在するか否かを判断する判断部とを具備し、
前記判断部の判断結果を前記端末装置に送信する判断結果送信部とをさらに具備する請求項１から請求項８いずれか一項に記載の端末装置。
【請求項１０】
伝票情報が格納される伝票格納部と、
２以上のマスタが格納されるマスタ格納部と、
端末装置からの指示を受信する指示受信部と、
前記指示に応じたタイミングに対応するマスタを前記マスタ格納部から取得するマスタ取得部と、
前記マスタ取得部が取得したマスタを前記端末装置に送信するマスタ送信部とを具備するサーバ装置。
【請求項１１】
伝票情報を入力する画面である画面情報が格納される端末画面情報格納部と、
１以上のマスタが格納される端末マスタ格納部と、
２以上の予め決められたタイミングで、マスタのダウンロードを要求する指示をサーバ装置に送信する端末指示送信部と、
前記指示の送信に応じて、マスタを受信する端末マスタ受信部と、
前記端末マスタ受信部が受信したマスタを前記端末マスタ格納部に蓄積する端末マスタ蓄積部と、
前記端末画面情報格納部の端末画面情報と前記端末マスタ格納部のマスタとを用いて、伝票情報を入力する画面を出力する端末画面出力部と、
前記画面に対する伝票情報の入力を受け付ける端末受付部と、
前記端末受付部が受け付けた伝票情報を前記サーバ装置に送信する端末伝票送信部とを具備する端末装置。
【請求項１２】
サーバ装置の記録媒体は、
伝票情報が格納される伝票格納部と、
２以上のマスタが格納されるマスタ格納部とを具備し、
前記サーバ装置が具備する指示受信部、マスタ取得部、およびマスタ送信部によって実行される会計情報処理方法であって、
前記指示受信部が、端末装置からの指示を受信する指示受信ステップと、
前記マスタ取得部が、前記指示に応じたタイミングに対応するマスタを前記マスタ格納部から取得するマスタ取得ステップと、
戦記マスタ送信部が、前記マスタ取得部が取得したマスタを前記端末装置に送信するマスタ送信ステップとを含む会計情報処理方法。
【請求項１３】
端末装置の記録媒体は、
伝票情報を入力する画面である画面情報が格納される端末画面情報格納部と、
１以上のマスタが格納される端末マスタ格納部とを具備し、
前記端末装置が具備する端末指示送信部、端末マスタ受信部、端末マスタ蓄積部、端末画面出力部、端末受付部、および端末伝票送信部によって実現される会計情報処理方法であって、
前記端末指示送信部が、２以上の予め決められたタイミングで、マスタのダウンロードを要求する指示をサーバ装置に送信する端末指示送信ステップと、
前記端末マスタ受信部が、前記指示の送信に応じて、マスタを受信する端末マスタ受信ステップと、
前記端末マスタ蓄積部が、前記端末マスタ受信部が受信したマスタを前記端末マスタ格納部に蓄積する端末マスタ蓄積ステップと、
前記端末画面出力部が、前記端末画面情報格納部の端末画面情報と前記端末マスタ格納部のマスタとを用いて、伝票情報を入力する画面を出力する端末画面出力ステップと、
前記端末受付部が、前記画面に対する伝票情報の入力を受け付ける端末受付ステップと、
前記端末伝票送信部が、前記端末受付部が受け付けた伝票情報を前記サーバ装置に送信する端末伝票送信ステップとを含む会計情報処理方法。
【請求項１４】
サーバ装置のコンピュータがアクセス可能な記録媒体は、
伝票情報が格納される伝票格納部と、
２以上のマスタが格納されるマスタ格納部とを具備し、
前記サーバ装置のコンピュータを、
端末装置からの指示を受信する指示受信部と、
前記指示に応じたタイミングに対応するマスタを前記マスタ格納部から取得するマスタ取得部と、
前記マスタ取得部が取得したマスタを前記端末装置に送信するマスタ送信部として機能させるためのプログラム。
【請求項１５】
端末装置のコンピュータがアクセス可能な記録媒体は、
伝票情報を入力する画面である画面情報が格納される端末画面情報格納部と、
１以上のマスタが格納される端末マスタ格納部とを具備し、
前記端末装置のコンピュータを、
２以上の予め決められたタイミングで、マスタのダウンロードを要求する指示をサーバ装置に送信する端末指示送信部と、
前記指示の送信に応じて、マスタを受信する端末マスタ受信部と、
前記端末マスタ受信部が受信したマスタを前記端末マスタ格納部に蓄積する端末マスタ蓄積部と、
前記端末画面情報格納部の端末画面情報と前記端末マスタ格納部のマスタとを用いて、伝票情報を入力する画面を出力する端末画面出力部と、
前記画面に対する伝票情報の入力を受け付ける端末受付部と、
前記端末受付部が受け付けた伝票情報を前記サーバ装置に送信する端末伝票送信部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、会計情報を処理するシステムを構成する端末装置等に関するものである。
【背景技術】
【０００２】
従来、サーバ側に格納されているマスタをダウンロードし、ダウンロードしたマスタに基づいて、請求書の自動支払い等を行うシステムが存在した（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２７１８２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上記従来のシステムでは、ダウンロードしたマスタに対応するサーバ側のマスタが更新されると、ダウンロードしたマスタがサーバ側のマスタに対して古くなるため、的確な自動支払い等が行えなくなる。一方、サーバ側のマスタが更新されるたびに再ダウンロードを行ったのでは、通信量が多くなる。このように、従来の端末装置では、通信量を抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことは容易でなかった。
【課題を解決するための手段】
【０００５】
本第一の発明の端末装置は、伝票情報を管理するサーバ装置と、伝票情報の入力を行う端末装置とを具備する会計情報システムを構成する端末装置であって、サーバ装置は、伝票情報が格納される伝票格納部と、２以上のマスタが格納されるマスタ格納部と、端末装置からの指示を受信する指示受信部と、指示に応じたタイミングに対応するマスタをマスタ格納部から取得するマスタ取得部と、マスタ取得部が取得したマスタを端末装置に送信するマスタ送信部とを具備し、端末装置は、伝票情報を入力する画面である画面情報が格納される端末画面情報格納部と、１以上のマスタが格納される端末マスタ格納部と、２以上の予め決められたタイミングで、マスタのダウンロードを要求する指示をサーバ装置に送信する端末指示送信部と、指示の送信に応じて、マスタを受信する端末マスタ受信部と、端末マスタ受信部が受信したマスタを端末マスタ格納部に蓄積する端末マスタ蓄積部と、端末画面情報格納部の端末画面情報と端末マスタ格納部のマスタとを用いて、伝票情報を入力する画面を出力する端末画面出力部と、画面に対する伝票情報の入力を受け付ける端末受付部と、端末受付部が受け付けた伝票情報をサーバ装置に送信する端末伝票送信部とを具備する会計情報システムを構成する端末装置である。
【０００６】
かかる構成により、通信量を抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことができる。
【０００７】
また、本第二の発明の端末装置は、第一の発明に対して、指示受信部は、端末装置の起動時に、端末装置からの指示を受信し、マスタ取得部は、指示に応じて、起動時にダウンロードすべきマスタをマスタ格納部から取得する端末装置である。
【０００８】
かかる構成により、マスタの種類によって、一部のマスタを起動時にダウンロードし、他のマスタを適時ダウンロードすることで、各マスタのダウンロードのタイミングを好適に遅らせることができる。
【０００９】
また、本第三の発明の端末装置は、第一または第二の発明に対して、予め決められたタイミングは、製品の起動時、画面を構成するメニューの選択時、マスタの使用時のうちの２以上である端末装置である。
【００１０】
かかる構成により、通信量を抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことができる。
【００１１】
また、本第四の発明の端末装置は、第一から第三いずれか１つの発明に対して、端末装置は、会計情報の処理のアプリケーションが格納される端末アプリ格納部と、会計情報の処理のアプリケーションの起動指示を受け付ける端末起動指示受付部とをさらに具備し、端末指示送信部は、起動指示の受け付けに応じて、製品の起動時に対応するマスタのダウンロードを要求する指示をサーバ装置に送信する端末装置である。
【００１２】
かかる構成により、通信量を抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことができる。
【００１３】
また、本第五の発明の端末装置は、第一から第四いずれか１つの発明に対して、端末画面出力部が、出力すべきマスタが端末マスタ格納部に存在しないと判断した場合、端末指示送信部は、出力すべきマスタを要求する指示をサーバ装置に送信し、端末画面出力部は、出力すべきマスタをも用いて、伝票情報を入力する画面を出力する端末装置である。
【００１４】
かかる構成により、出力すべきマスタが端末側に存在しない場合にだけ当該マスタのダウンロードを要求し、出力すべきマスタが端末側に存在する場合にはダウンロードを要求しないことで、通信量をいっそう抑制しつつ、最新のマスタを用いた画面の出力を行うことができる。
【００１５】
また、本第六の発明の端末装置は、第一から第五いずれか１つの発明に対して、指示に応じたタイミングは、製品の起動時であり、端末指示送信部は、起動指示の受け付けに応じて、端末マスタ格納部の対応するマスタの更新時刻を含む指示をサーバ装置に送信し、マスタ取得部は、製品の起動時に対応するマスタであり、指示が有する更新時刻より新しい更新時刻に対応するマスタをマスタ格納部から取得する端末装置である。
【００１６】
かかる構成により、製品起動時にダウンロードすべきマスタが、既にダウンロード済みであり、かつ更新されていない場合には、当該マスタのダウンロードを行わないので、通信量をいっそう抑制できる。
【００１７】
また、本第七の発明の端末装置は、第一から第六いずれか１つの発明に対して、２以上の予め決められたタイミングのうちの一のタイミングは、メニューの選択時であり、端末指示送信部は、メニュー選択の受け付けに応じて、端末マスタ格納部の対応するマスタの更新時刻を含む指示をサーバ装置に送信し、マスタ取得部は、指示に対応するマスタであり、指示が有する更新時刻より新しい更新時刻に対応するマスタをマスタ格納部から取得する端末装置である。
【００１８】
かかる構成により、メニュー選択時にダウンロードすべきマスタが、既にダウンロード済みであり、かつ更新されていない場合には、当該マスタのダウンロードを行わないので、通信量をいっそう抑制できる。
【００１９】
また、本第八の発明の端末装置は、第一から第七いずれか１つの発明に対して、２以上の予め決められたタイミングのうちの一のタイミングは、マスタの使用時であり、端末指示送信部は、端末出力部がマスタを使用する際に、端末マスタ格納部の対応するマスタの更新時刻を含む指示をサーバ装置に送信し、マスタ取得部は、指示に対応するマスタであり、指示が有する更新時刻より新しい更新時刻に対応するマスタをマスタ格納部から取得する端末装置である。
【００２０】
かかる構成により、マスタ使用時にダウンロードすべきマスタが、既にダウンロード済みであり、かつ更新されていない場合には、当該マスタのダウンロードを行わないので、通信量をいっそう抑制できる。
【００２１】
また、本第九の発明の端末装置は、第一から第八いずれか１つの発明に対して、端末装置は、端末受付部がマスタを構成する一のデータの入力の受け付けた際に、一のデータが存在するか否かの問い合わせを送信する端末問合送信部と、問い合わせの送信に応じて、一のデータが存在しない旨の情報を受信する端末結果受信部と、一のデータが存在しない旨の情報が受信された場合に、一のデータが存在しない旨のエラー出力を行うエラー出力部とをさらに具備し、サーバ装置は、問い合わせを受信する問合受信部と、問い合わせに応じて、マスタ格納部の中に一のデータが存在するか否かを判断する判断部とを具備し、判断部の判断結果を端末装置に送信する判断結果送信部とをさらに具備する端末装置である。
【００２２】
かかる構成により、サーバ側で消去または変更されて、存在しなくなったデータが端末側で入力された場合、エラーを出力するので、適切なマスタデータを使用した入力が可能になる。
【発明の効果】
【００２３】
本発明によれば、通信量を抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことができる。
【図面の簡単な説明】
【００２４】
【図１】実施の形態における会計情報システムの概念図
【図２】同端末装置のブロック図
【図３】同サーバ装置の動作を説明するフローチャート
【図４】同マスタ取得処理を説明するフローチャート
【図５】同端末装置の動作の一部を説明するフローチャート
【図６】同端末装置の動作の他の部分を説明するフローチャート
【図７】同マスタ管理情報のデータ構造図
【図８】同ローカルマスタ管理情報のデータ構造図
【図９】同メニューの出力例を示す図
【図１０】同伝票情報を入力する画面の一例を示す図
【図１１】同プルダウンリストの出力例を示す図
【図１２】同コンピュータシステムの外観図
【図１３】同コンピュータシステムの内部構成の一例を示す図
【発明を実施するための形態】
【００２５】
以下、会計情報システムを構成する端末装置等の実施形態について、図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００２６】
本実施の形態において、伝票情報を管理するサーバ装置と、伝票情報の入力を行う端末装置とを具備する会計情報システムであって、サーバ装置が、「製品起動時」を含む２種類以上の種類識別子をマスタに対応付けて管理しており、端末装置が、製品起動時に、種類識別子「製品起動時」に対応するマスタをサーバからダウンロードし、ローカルな不揮発性記録媒体に蓄積し、使用する会計情報システムについて説明する。
【００２７】
また、上記構成において、種類識別子は、「製品起動時」、「メニュー選択時」または「マスタ使用時」の１以上を含む会計情報システムについて説明する。
【００２８】
また、端末装置が起動時にマスタを要求する会計情報システムについて説明する。
【００２９】
また、ローカルにマスタが無ければ、端末装置がサーバ装置に取得しに行く会計情報システムについて説明する。
【００３０】
また、端末装置が、製品起動時に、種類識別子「製品起動時」に対応するローカルのマスタの更新時刻を送信し、ローカルのマスタの更新時刻がサーバ側の対応するマスタの更新時刻より古ければ、当該マスタをサーバ装置から受信し、蓄積する会計情報システムについて説明する。
【００３１】
また、端末装置が、メニュー選択時に、種類識別子「メニュー選択時」に対応するローカルのマスタの更新時刻を送信し、ローカルのマスタの更新時刻がサーバ側の対応するマスタの更新時刻より古ければ、当該マスタをサーバ装置から受信し、蓄積する会計情報システムについて説明する。
【００３２】
また、端末装置が、マスタ使用時に、種類識別子「マスタ使用時」に対応するローカルのマスタの更新時刻を送信し、ローカルのマスタの更新時刻がサーバ側の対応するマスタの更新時刻より古ければ、当該マスタをサーバ装置から受信し、蓄積する会計情報システムについて説明する。
【００３３】
また、端末装置が、マスタを構成する一のデータ入力を受け付けた際、サーバ装置に当該データが存在するか否かを問い合わせ、存在しない場合、エラー出力する会計情報システムについて説明する。
【００３４】
図１は、本実施の形態における会計情報システムの概念図である。会計情報システムは、サーバ装置１、および１または２以上の端末装置２を備える。サーバ装置１と１以上の各端末装置２とは、例えば、ＬＡＮやインターネット等のネットワーク、無線または有線の通信回線などを介して、通信可能に接続される。端末装置２は、伝票情報の入力を受け付け、サーバ装置１は、入力された伝票情報を管理する。
【００３５】
サーバ装置１は、例えば、会社や会計事務所等のサーバであるが、クラウドサーバでもよく、そのタイプや所在は問わない。端末装置２は、例えば、会社等のＰＣであるが、携帯端末（タブレット端末、スマートフォン等）などでもよく、そのタイプや所在は問わない。
【００３６】
サーバ装置１のブロック図は、図１に含まれている。サーバ装置１は、格納部１１、処理部１２、受信部１３、および送信部１４を備える。格納部１１は、伝票格納部１１１、およびマスタ格納部１１２を備える。処理部１２は、マスタ取得部１２１、および判断部１２２を備える。受信部１３は、指示受信部１３１、および問合受信部１３２を備える。送信部１４は、マスタ送信部１４１、および判断結果送信部１４２を備える。
【００３７】
図２は、端末装置２のブロック図である。端末装置２は、端末格納部２１、端末受付部２２、端末送信部２３、端末受信部２４、端末処理部２５、および端末出力部２６を備える。端末格納部２１は、端末画面情報格納部２１１、端末マスタ格納部２１２、および端末アプリ格納部２１３を備える。端末受付部２２は、端末起動指示受付部２２１を備える。端末送信部２３は、端末指示送信部２３１、端末伝票送信部２３２、および端末問合送信部２３３を備える。端末受信部２４は、端末マスタ受信部２４１、および端末結果受信部２４２を備える。端末処理部２５は、端末マスタ蓄積部２５１を備える。端末出力部２６は、端末画面出力部２６１、およびエラー出力部２６２を備える。
【００３８】
サーバ装置１を構成する格納部１１は、各種の情報を格納し得る。各種の情報とは、例えば、後述する伝票情報、後述するマスタなどである。
【００３９】
伝票格納部１１１には、伝票情報が格納される。伝票情報とは、伝票の情報である。伝票は、例えば、入金伝票、出金伝票などであるが、その種類は問わない。伝票情報は、例えば、伝票番号、取引先、金額、および日付などを有するが、そのデータ形式や内容は問わない。
【００４０】
マスタ格納部１１２には、２以上のマスタが格納される。マスタは、通常、伝票情報の入力の際に参照されるテーブルである。また、会計処理の基本となるデータの集合である、と言っても良い。基本となるデータとは、例えば、取引先に関する情報（例えば、会社名、住所等）、科目に関する情報（例えば、通信費、消耗品費等）などであってもよい。マスタは、１以上のレコードを有する。１以上の各レコードは、１以上の属性値を有する。マスタは、例えば、処理部１２によって、随時、更新されてよい。
【００４１】
マスタ格納部１１２には、２以上のマスタが格納される。マスタ格納部１１２には、通常、マスタのダウンロードのタイミングを示す情報（以下、タイミング情報と記す場合がある）に対応付けて、格納される。なお、対応付けて格納されることは、マスタがタイミング情報を有する場合も含む。タイミング情報は、例えば、種類識別子であるが、例えば、後述する項目識別子、後述するフィールド識別子、後述する画面識別子なども、タイミング情報となり得る。タイミング情報は、マスタをダウンロードするタイミングを特定する情報であれば良い。また、タイミング情報は、ダウンロードするマスタを特定する情報であることもあっても良い。ダウンロードするマスタを特定する情報は、例えば、マスタ識別子、項目識別子、フィールド識別子、画面識別子等である。
【００４２】
種類識別子とは、マスタの種類を識別する情報である。種類識別子は、マスタのダウンロードのタイミングを示す情報であることは好適である。種類識別子は、例えば、「製品起動時」、「メニュー選択時」、「マスタ使用時」等である。
【００４３】
種類識別子「製品起動時」は、製品の起動時にダウンロードされることを示す情報である。製品は、例えば、端末装置２にインストールされているアプリケーションであってもよい。製品の起動時とは、例えば、端末装置２でアプリケーションの起動指示が受け付けられた時でもよい。これに応じて、「製品起動時」に対応するマスタがダウンロードされ、そのマスタを用いて、メニューの画面が出力されてもよい。なお、種類識別子のデフォルトの値が「製品起動時」でも良い。
【００４４】
種類識別子「メニュー選択時」は、画面を構成するメニューの選択時にダウンロードされることを示す情報である。メニューは、例えば、「伝票入力」ボタン、「売上管理」ボタンといった２以上のメニュー項目で構成されていてもよい。メニューは、例えば、プルダウンメニューであり、２以上のメニュー項目で構成されていてもよい。メニューの選択時とは、例えば、メニューのいずれかのメニュー項目が指定された時であってもよい。これに応じて、当該画面の当該メニュー項目に対応するマスタがダウンロードされ、そのマスタを用いて、伝票入力等の画面が出力されてもよい。また、メニューの選択時とは、次の画面への遷移時でも良い。さらに、種類識別子「メニュー選択時」と同等の情報として、メニュー項目を識別する項目識別子、画面を識別する画面識別子等がある。
【００４５】
種類識別子「マスタ使用時」は、マスタの使用時にダウンロードされることを示す情報である。マスタ使用時とは、例えば、伝票入力の画面が表示された状態で、その画面が有する１以上の入力フィールドのうちのいずれかにカーソルが当てられた時でもよい。カーソルが当てられることは、当該カーソルにフォーカスが移動すること、当該カーソルがカレントカーソルになること等と言っても良い。これに応じて、当該画面の当該入力フィールドに対応するマスタがダウンロードされ、そのマスタを用いて、入力候補のリスト（例えば、プルダウンリストなど）が出力されてもよい。
【００４６】
種類識別子は、「製品起動時」、「メニュー選択時」、および「マスタ使用時」のうちの２以上のうちの一の種類識別子を採り得る。つまり、種類識別子は、「製品起動時」、「メニュー選択時」のうち一の種類識別子でもよいし、または、「メニュー選択時」、「マスタ使用時」のうち一の種類識別子でもよいし、または、「製品起動時」、「メニュー選択時」、「マスタ使用時」のうち一の種類識別子でもよい。
【００４７】
マスタには、通常、マスタ識別子、更新時刻なども対応付いている。マスタ識別子とは、マスタを識別する情報である。マスタ識別子は、例えば、ＩＤであるが、マスタを識別し得る情報であれば何でもよい。更新時刻とは、マスタが更新された時刻である。更新時刻は、一のマスタが２回以上更新された場合には、通常、最後に更新された時刻であるが、２回以上の更新に対応する２以上の時刻を含んでいてもよい。
【００４８】
なお、格納部１１には、通常、マスタ管理情報も格納されている。マスタ管理情報とは、マスタ格納部１１２に格納されている２以上のマスタを管理するための情報である。マスタ管理情報は、例えば、マスタ識別子、タイミング情報、および更新時刻の組の集合で構成される。なお、タイミング情報は、上述した種類識別子でも良いし、メニュー項目識別子や画面識別子でも良いし、フィールド識別子やマスタ識別子でも良い。また、タイミング情報がメニュー項目識別子や画面識別子である場合、当該タイミング情報に対応するマスタはメニュー選択時にダウンロードされる。また、タイミング情報がフィールド識別子やマスタ識別子である場合、当該タイミング情報に対応するマスタはマスタ使用時にダウンロードされる。
【００４９】
処理部１２は、各種の処理を行う。各種の処理とは、例えば、後述するマスタ取得部１２１、後述する判断部１２２などの処理である。各種の処理には、フローチャートで説明する各種の判別なども含まれてよい。
マスタ取得部１２１は、端末装置２からの指示に応じて、マスタ格納部１１２からマスタを取得する。
【００５０】
端末装置２からの指示とは、通常、マスタのダウンロードを要求する指示である。かかる指示は、通常、マスタのダウンロードのタイミングを示す情報を有する。マスタのダウンロードのタイミングを示す情報はタイミング情報であり、例えば、種類識別子であるが、上述したメニュー項目識別子や画面識別子等である。
【００５１】
マスタ取得部１２１は、指示に応じたタイミングに対応するマスタを取得する。マスタ取得部１２１は、例えば、端末装置２からの指示に応じて、当該指示が有する種類識別子に対応する１以上のマスタを取得する。マスタ取得部１２１は、当該指示が有する種類識別子に対応する１以上のマスタを、通常、格納部１１に格納されているマスタ管理情報を用いて取得する。
【００５２】
具体的には、マスタ取得部１２１は、例えば、種類識別子「製品起動時」を有する指示が受信された場合、マスタ管理情報から、種類識別子「製品起動時」に対応するマスタ識別子を取得し、取得したマスタ識別子に対応するマスタをマスタ格納部１１２から取得する。また、ダウンロードのデフォルトが「製品起動時」である場合、製品起動時にダウンロードされるマスタに対応するタイミング情報はＮＵＬＬでも良い。
【００５３】
同様にして、マスタ取得部１２１は、種類識別子「メニュー選択時」を有する指示に応じて、種類識別子「メニュー選択時」に対応するマスタを取得する。ただし、種類識別子「メニュー選択時」を有する指示は、選択された項目を識別する項目識別子も有していてよい。また、指示が種類識別子を有さずに、項目識別子を有しても良い。マスタ取得部１２１は、例えば、項目識別子と１以上のマスタ識別子との組の集合である対応情報を保持しており、指示が有する項目識別子に対応する１以上のマスタを取得してもよい。また、種類識別子「メニュー選択時」を有する指示は、例えば、項目が選択された画面を識別する画面識別子をも有していてよい。また、指示が種類識別子を有さずに、画面識別子を有しても良い。その場合、マスタ取得部１２１は、例えば、画面識別子または項目識別子と１以上のマスタ識別子との組の集合である対応情報を保持しており、指示が有する画面識別子または当該項目識別子に対応する１以上のマスタを取得することは好適である。
【００５４】
また、マスタ取得部１２１は、例えば、種類識別子「マスタ使用時」を有する指示に応じて、種類識別子「マスタ使用時」に対応するマスタを取得する。ただし、種類識別子「マスタ使用時」を有する指示は、使用するマスタを識別するマスタ識別子をも有していてよく、その場合、マスタ取得部１２１は、当該マスタ識別子で識別されるマスタを取得すればよい。また、指示は、種類識別子を有さずに、マスタ識別子をも有していてよく、その場合、マスタ取得部１２１は、当該マスタ識別子で識別されるマスタを取得する。または、指示は、前述したフィールド識別子も有していてよく、その場合、マスタ取得部１２１は、例えば、フィールド識別子と１以上のマスタ識別子との組の集合である対応情報を保持しており、指示が有するフィールド識別子に対応するマスタ識別子で識別されるマスタを取得することは好適である。
【００５５】
すなわち、端末装置２からの指示は、例えば、端末装置２が出力すべきマスタを要求する指示であってもよい。かかる指示は、通常、マスタ識別子を有している。または、かかる指示は、フィールド識別子を有していてもよい。マスタ取得部１２１は、指示が有するマスタ識別子で識別されるマスタを取得することは好適である。マスタ取得部１２１は、指示が有するフィールド識別子に対応するマスタ識別子で識別されるマスタを取得することは好適である。
【００５６】
端末装置２からの指示は、種類識別子、マスタ識別子、画面識別子、項目識別子、またはフィールド識別子のうち１種類以上の情報に加えて、更新時刻を有していてもよい。更新時刻とは、マスタが更新された時刻である。指示が有する更新時刻は、ローカルに存在するマスタの更新時刻である。ローカルに存在するマスタとは、サーバ装置１からダウンロードされて、端末マスタ格納部２１２に格納されているマスタである。ローカルに存在するマスタは、サーバ側の対応するマスタが更新されても、通常、更新されない。このため、マスタのダウンロードを要求する指示が有する更新時刻は、サーバ側の対応するマスタの更新時刻よりも古い場合がある。なお、ダウンロードされるマスタが２以上の可能性がある場合、当該２以上の各マスタに対して、指示は更新時刻を有することは好適である。
【００５７】
マスタ取得部１２１は、受信された指示に含まれるタイミング情報に対応するマスタの中で、端末装置２の当該マスタの更新時刻より新しい更新時刻に対応するマスタをマスタ格納部１１２から取得することは好適である。マスタ取得部１２１は、例えば、受信された指示が有する更新時刻を取得し、また、マスタ格納部１１２の対応するマスタの更新時刻を取得し、指示が有する更新時刻が、マスタ格納部１１２の対応するマスタの更新時刻より古ければ、更新後のマスタをマスタ格納部１１２から取得する。指示が有する更新時刻が、マスタ格納部１１２の対応するマスタの更新時刻と同じであれば、マスタ取得部１２１は、マスタの取得を行わない。
【００５８】
判断部１２２は、マスタを構成する一のデータの入力を受け付けた端末装置２からの問い合わせに応じて、マスタ格納部１１２の中に当該一のデータが存在するか否かを判断する。マスタを構成する一のデータの入力とは、マスタを用いて出力されたプルダウンリストからの一のデータの選択でもよい。当該一のデータは、通常、マスタ格納部１１２の中に存在するが、マスタ格納部１１２から削除された結果、存在しない場合もあり得る。なお、問い合わせは、マスタを構成する一のデータまたは当該一のデータの識別子に加えて、マスタ識別子を有しても良い。判断部１２２は、問い合わせが有するマスタ識別子で識別されるマスタの中に、問い合わせが有する一のデータまたは問い合わせが有する一のデータの識別子に対応するデータが存在するか否かを判断する。
【００５９】
受信部１３は、各種の情報を受信する。各種の情報とは、例えば、端末装置２からの指示や問い合わせや伝票情報などである。受信部１３は、端末装置２からの指示等を、通常、当該端末装置２を識別する端末識別子と対に受信する。端末識別子は、例えば、ＭＡＣアドレス、ＩＰアドレスなどであるが、その種類は問わない。なお、対に受信または送信することは、指示等が端末識別子を有する場合も含む（以下同様）。
【００６０】
指示受信部１３１は、端末装置２からの指示を受信する。指示は、通常、タイミング情報を有する。指示受信部１３１は、例えば、端末装置２の起動時に、当該端末装置２からの指示を受信する。端末装置２の起動時に送信される指示は、例えば、種類識別子「製品起動時」を有する。指示受信部１３１は、例えば、メニュー選択時またはマスタ使用時にも指示を受信する。メニュー選択時に送信される指示は、例えば、項目識別子または画面識別子、または、種類識別子「メニュー選択時」を有する。マスタ使用時に送信される指示は、例えば、マスタ識別子またはフィールド識別子、または、種類識別子「マスタ使用時」を有する。指示は、当該指示が有するタイミング情報に対応するスタであり、端末マスタ格納部２１２に格納されているローカルのマスタの更新時刻をも有することは好適である。なお、フィールド識別子はフィールドを識別する情報である。また、フィールドとは、画面上のフィールドであり、画面上のテーブルの列でも良い。
【００６１】
問合受信部１３２は、端末装置２からの問い合わせを受信する。問い合わせとは、例えば、マスタを構成する一のデータの入力を受け付けた端末装置２からの問い合わせであり、その入力された一のデータがサーバ側に存在するか否かの問い合わせである。問い合わせは、例えば、その入力された一のデータを含んでもよいし、または、その入力された一のデータを識別する識別情報を含んでいてもよい。識別情報は、例えば、その入力された一のデータが属するマスタを識別するマスタ識別子、当該マスタにおける当該一のデータが属するレコードを識別するレコード識別子の組であってもよい。
【００６２】
送信部１４は、各種の情報を送信する。各種の情報とは、例えば、マスタ、判断結果などである。
【００６３】
マスタ送信部１４１は、マスタ取得部１２１が取得した１または２以上のマスタを端末装置２に送信する。マスタ送信部１４１は、例えば、指示受信部１３１が端末識別子と対に受信した指示に応じて、マスタ取得部１２１が取得したマスタを、当該端末識別子で識別される端末装置２に送信してもよい。
【００６４】
判断結果送信部１４２は、判断部１２２の判断結果を端末装置２に送信する。判断結果送信部１４２は、例えば、指示受信部１３１が端末識別子と対に受信した問い合わせに応じて、判断部１２２がマスタ格納部１１２の中に当該一のデータが存在するか否かを判断した結果を、当該端末識別子で識別される端末装置２に送信してもよい。判断結果は、例えば、エラーか否かを示す情報、エラーであることを示す情報である。
【００６５】
端末装置２を構成する端末格納部２１は、各種の情報を格納し得る。各種の情報とは、例えば、後述する画面情報、マスタ、後述するアプリケーション、当該端末装置２を識別する端末識別子などである。また、端末格納部２１には、通常、ローカルマスタ管理情報も格納されている。ローカルマスタ管理情報とは、端末マスタ格納部２１２に格納されている２以上のマスタを管理するための情報である。ローカルマスタ管理情報は、例えば、マスタ識別子、タイミング情報、および更新時刻の組の集合で構成される。タイミング情報は、種類識別子でも良いし、マスタが使用される画面識別子、フィールド識別子等でも良い。
【００６６】
端末画面情報格納部２１１には、画面情報が格納される。画面情報とは、画面を構成するための情報である。画面は、伝票情報を入力する画面を含む。伝票情報を入力する画面は、例えば、ダイアログ、フォーム、ウィンドウなどであるが、その種類は問わない。以下では、伝票情報を入力する画面を単に画面と記す場合がある。画面は、１以上の入力フィールドを有することは好適である。入力フィールドとは、伝票情報等のデータが入力されるユーザインターフェースである。入力フィールドは、例えば、テキストボックス、表、表が有する１以上の各セルなどであってもよい。入力フィールドは、上述したフィールドを含む。また、画面には、通常、ボタン、メニュー、アイコンなど、入力フィールド以外の部品も配置されている。画面情報は、例えば、各部品の画像、部品の内部または外部に表示されるテキスト、画面内における各部品の位置（例えば、座標）を示すレイアウト情報などを含む。画面情報は、例えば、プログラムであってもよいし、ＨＴＭＬであってもよく、そのデータ形式は問わない。
【００６７】
なお、画面情報は、予め端末画面情報格納部２１１に格納されていてもよいし、または、例えば、端末受信部２４によってサーバ装置１から受信され、端末処理部２５によって端末画面情報格納部１１に蓄積されても構わない。
【００６８】
端末マスタ格納部２１２には、１以上のマスタが格納される。１以上の各マスタは、通常、端末指示送信部２３１が送信した指示に応じて、端末マスタ受信部２４１がサーバ装置１から受信したマスタである。端末マスタ格納部２１２は、例えば、ハードディスク、ＳＳＤ、フラッシュメモリ等の不揮発性の記録媒体で構成されることは好適である。
【００６９】
端末アプリ格納部２１３には、会計情報の処理のアプリケーション（以下、会計処理アプリと記す場合がある）が格納される。ただし、端末アプリ格納部２１３は、会計処理アプリ以外のアプリケーションも格納し得る。なお、会計処理アプリは、いわゆる製品である。
【００７０】
端末受付部２２は、各種の情報を受け付ける。各種の情報とは、例えば、マスタのダウンロードを要求する指示、出力すべきマスタを要求する指示、会計処理アプリの起動指示、メニュー選択などである。端末受付部２２は、画面に対する伝票情報の入力も受け付ける。端末受付部２２は、各種の情報を、通常、キーボードやマウスやタッチパネルなどの入力デバイスを介して受け付ける、ただし、受け付けは、入力デバイスから入力された情報の受け付けに限らず、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスクや半導体メモリなどの記録媒体から読み出された情報の受け付けなども含み得る。
【００７１】
端末起動指示受付部２２１は、会計処理アプリの起動指示（以下、単に起動指示、または製品の起動指示と記す場合がある）を受け付ける。ただし、端末起動指示受付部２２１は、端末アプリ格納部２１３に格納されている各種のアプリケーションの起動指示も受け付け得る。
【００７２】
端末送信部２３は、各種の情報を送信する。各種の情報とは、例えば、マスタのダウンロードを要求する指示、出力すべきマスタを要求する指示、起動指示などである。なお、送信される指示は、受け付けられた指示とデータ構造が異なっていてもよい。端末送信部２３は、各種の情報を、通常、端末格納部２１に格納されている端末識別子と対に送信する。
【００７３】
端末指示送信部２３１は、２以上の予め決められたタイミングで、マスタのダウンロードを要求する指示をサーバ装置１に送信する。２以上の予め決められたタイミングとは、例えば、製品起動時、メニュー選択時、およびマスタ使用時のうちの２以上のタイミングである。ただし、２以上の予め決められたタイミングは、製品起動時を含むことは好適である。つまり、端末指示送信部２３１は、マスタのダウンロードを要求する指示を、例えば、製品起動時、およびメニュー選択時に送信してもよいし、または、製品起動時、およびマスタ使用時に送信してもよいし、または、製品起動時、メニュー選択時、およびマスタ使用時に送信してもよい。
【００７４】
端末指示送信部２３１は、例えば、端末起動指示受付部２２１による起動指示の受け付けに応じて、マスタのダウンロードを要求する指示をサーバ装置１に送信する。その際、端末指示送信部２３１は、マスタのダウンロードを要求する指示に、種類識別子「製品起動時」を含めて送信することは好適である。また、端末指示送信部２３１は、かかる指示に、端末マスタ格納部２１２の対応するマスタの更新時刻をも含めて送信することは、より好適である。この場合の対応するマスタとは、種類識別子「製品起動時」に対応するマスタ識別子で識別されるマスタである。
【００７５】
また、端末指示送信部２３１は、例えば、端末受付部２２によるメニュー選択の受け付けに応じて、マスタのダウンロードを要求する指示をサーバ装置１に送信してもよい。その際、端末指示送信部２３１は、マスタのダウンロードを要求する指示に、種類識別子「メニュー選択時」、項目識別子、画面識別子のうち１種類以上の情報を含めて送信することは好適である。また、端末指示送信部２３１は、かかる指示に、端末マスタ格納部２１２の対応するマスタの更新時刻をも含めて送信することは、より好適である。この場合の対応するマスタとは、種類識別子「メニュー選択時」、項目識別子、画面識別子のうち１種類以上の情報に対応するマスタ識別子で識別されるマスタである。
【００７６】
また、端末指示送信部２３１は、例えば、マスタ使用時に、マスタのダウンロードを要求する指示をサーバ装置１に送信してもよい。その際、端末指示送信部２３１は、マスタのダウンロードを要求する指示に、種類識別子「マスタ使用時」、マスタ識別子、またはフィールド識別子のうちの１以上の情報を含めて送信することは好適である。また、端末指示送信部２３１は、かかる指示に、端末マスタ格納部２１２の対応するマスタの更新時刻をも含めて送信することは、より好適である。この場合の対応するマスタとは、種類識別子「マスタ使用時」、マスタ識別子、またはフィールド識別子に対応するマスタ識別子で識別されるマスタである。
【００７７】
端末伝票送信部２３２は、端末受付部２２が受け付けた伝票情報をサーバ装置１に送信する。
【００７８】
端末問合送信部２３３は、端末受付部２２がマスタを構成する一のデータの入力の受け付けた際に、当該一のデータがサーバ側に存在するか否かの問い合わせをサーバ装置１に送信する。マスタを構成する一のデータの入力の受け付けたことは、例えば、マスタを用いて出力されたプルダウンリストから、一のデータが選択されたことでもよい。
【００７９】
端末受信部２４は、サーバ装置１から各種の情報を受信する。各種の情報とは、例えば、マスタ、一のデータが存在しない旨の情報などである。各種の情報には、画面情報も含まれていてよい。つまり、画面情報は、サーバ装置１から送信された情報でも良い。
【００８０】
端末マスタ受信部２４１は、端末指示送信部２３１による指示の送信に応じて、サーバ装置１からマスタを受信する。指示とは、具体的には、マスタのダウンロードを要求する指示、または出力すべきマスタを要求する指示である。端末マスタ受信部２４１は、例えば、マスタのダウンロードを要求する指示の送信に応じて、当該指示が有する種類識別子に対応するマスタを受信する。また、端末マスタ受信部２４１は、例えば、出力すべきマスタを要求する指示の送信に応じて、当該指示が有するマスタ識別子に対応するマスタを受信する。
【００８１】
端末結果受信部２４２は、端末問合送信部２３３による問い合わせの送信に応じて、サーバ装置１から、判断部１２２による判断結果を受信する。判断結果とは、マスタ格納部１１２の中に当該一のデータが存在しない旨の情報、または、マスタ格納部１１２の中に当該一のデータが存在する旨の情報である。
【００８２】
端末処理部２５は、各種の処理を行う。各種の処理とは、例えば、端末マスタ蓄積部２５１の処理である。各種の処理には、フローチャートで説明する各種の判別なども含まれる。
【００８３】
端末マスタ蓄積部２５１は、端末マスタ受信部２４１が受信したマスタを端末マスタ格納部２１２に蓄積する。蓄積は、上書きも含む。すなわち、端末マスタ蓄積部２５１は、端末マスタ受信部２４１が、端末マスタ格納部２１２に格納されているマスタに対応するマスタであり、更新されたマスタをサーバ装置１から受信した場合、格納されているマスタを、受信されたマスタで上書きしてもよい。
【００８４】
端末出力部２６は、各種の情報を出力する。各種の情報とは、例えば、メニュー、伝票情報を入力する画面などである。メニューは、２以上のメニュー項目を含む。メニュー項目とは、選択される項目である。選択される項目は、例えば、ボタン、ハイパーリンクなどでもよい。
【００８５】
端末出力部２６は、各種の情報を、通常、ディスプレイを介して出力する。ただし、出力は、ディスプレイへの表示に限らず、例えば、スピーカーからの音出力、プリンタでの印字、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなども含み得る。
【００８６】
端末画面出力部２６１は、画面を出力する。画面とは、例えば、伝票情報を入力する画面である。端末画面出力部２６１は、通常、端末画面情報格納部２１１に格納されている画面情報と、端末マスタ格納部２１２に格納されているマスタとを用いて、伝票情報を入力する画面を構成し、出力する。詳しくは、端末画面出力部２６１は、画面情報を用いて、例えば、伝票情報が入力される１以上の入力フィールドを有する画面を構成し、ディスプレイに出力してもよい。また、端末画面出力部２６１は、画面内の一の入力フィールドにカーソルが当てられたとき、マスタを用いてプルダウンリストを出力することは好適である。
【００８７】
端末画面出力部２６１は、出力すべきマスタが端末マスタ格納部２１２に格納されていない場合に、端末指示送信部２３１が送信した指示に応じて、端末マスタ受信部２４１が受信した当該出力すべきマスタをも用いて、伝票情報を入力する画面を構成し、出力することは好適である。
【００８８】
エラー出力部２６２は、端末結果受信部２４２によって一のデータが存在しない旨の情報が受信された場合に、一のデータが存在しない旨のエラー出力を行う。エラー出力は、例えば、一のデータが存在しない旨を記述したテキストの表示でもよいし、かかるテキストを音声に変換した音声の出力でもよいし、一のデータが存在しない旨を示す図柄の表示または警告音の出力でもよく、その表現形式は問わない。
【００８９】
格納部１１、伝票格納部１１１、マスタ格納部１１２、端末格納部２１、端末画面情報格納部２１１、端末マスタ格納部２１２、および端末アプリ格納部２１３は、例えば、ハードディスクなど不揮発性の記録媒体が好適であるが、ＲＡＭなど揮発性の記録媒体でも実現可能である。
【００９０】
格納部１１等に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が格納部１１等で記憶されるようになってもよく、ネットワークや通信回線等を介して送信された情報が格納部１１等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部１１等で記憶されるようになってもよい。入力デバイスは、例えば、キーボード、マウス、タッチパネル等、何でもよい。
【００９１】
処理部１２、マスタ取得部１２１、判断部１２２、端末処理部２５、および端末マスタ蓄積部２５１は、通常、ＭＰＵやメモリ等から実現され得る。処理部１２等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。ただし、処理手順は、ハードウェア（専用回路）で実現してもよい。
【００９２】
受信部１３、指示受信部１３１、問合受信部１３２、端末受信部２４、端末マスタ受信部２４１、および端末結果受信部２４２は、通常、有線または無線の通信手段（例えば、ネットワークカードやモデム等の通信モジュール）で実現されるが、放送を受信する手段（例えば、放送受信モジュール）で実現されてもよい。
【００９３】
送信部１４、マスタ送信部１４１、判断結果送信部１４２、端末送信部２３、端末指示送信部２３１、端末伝票送信部２３２、および端末問合送信部２３３は、通常、有線または無線の通信手段で実現されるが、放送手段（例えば、放送モジュール）で実現されてもよい。
【００９４】
端末受付部２２、および端末起動指示受付部２２１は、入力デバイスを含むと考えても、含まないと考えてもよい。端末受付部２２等は、入力デバイスのドライバーソフトによって、または入力デバイスとそのドライバーソフトとで実現され得る。
【００９５】
端末出力部２６、端末画面出力部２６１、およびエラー出力部２６２は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えてもよい。端末出力部２６等は、出力デバイスのドライバーソフトによって、または出力デバイスとそのドライバーソフトとで実現され得る。
【００９６】
次に、会計情報システムの動作について、図３〜図６のフローチャートを用いて説明する。なお、既出の事項に関する説明は、省略または簡略化している。
【００９７】
図３は、サーバ装置１の動作例を説明するフローチャートである。
【００９８】
（ステップＳ３０１）処理部１２は、指示受信部１３１が端末装置２から指示を受信したか否かを判別する。指示受信部１３１が端末装置２から指示を受信した場合はステップＳ３０２に進み、受信していない場合はステップＳ３０６に進む。
【００９９】
（ステップＳ３０２）マスタ取得部１２１は、マスタ格納部１１２から１以上のマスタを取得する処理であるマスタ取得処理を実行する。その後、ステップＳ３０１に戻る。なお、マスタ取得処理については、図４を用いて説明する。
【０１００】
（ステップＳ３０３）処理部１２は、マスタ取得部１２１が取得したマスタの更新時刻を、格納部１１に格納されているマスタ管理情報を用いて取得する。
【０１０１】
（ステップＳ３０４）処理部１２は、指示受信部１３１が受信した指示に含まれる更新時刻が、マスタ取得部１２１が取得したマスタの更新時刻よりも古いか否かを判別する。指示に含まれる更新時刻が取得されたマスタの更新時刻よりも古いマスタが存在する場合はステップＳ３０５に進み、そうでない場合はステップＳ３０１に戻る。なお、２以上のマスタが存在する場合、処理部１２は、マスタごとに、指示に含まれる更新時刻とマスタ取得部１２１が取得したマスタの更新時刻とを比較する。
【０１０２】
（ステップＳ３０５）マスタ送信部１４１は、マスタ取得部１２１が取得したマスタであり、指示に含まれる更新時刻が古い１以上のマスタを端末装置２に送信する。その後、ステップＳ３０１に戻る。
【０１０３】
（ステップＳ３０６）処理部１２は、問合受信部１３２が端末装置２から問い合わせを受信したか否かを判別する。問合受信部１３２が端末装置２から問い合わせを受信した場合はステップＳ３０７に進み、受信していない場合はステップＳ３１１に進む。
【０１０４】
（ステップＳ３０７）処理部１２は、問合受信部１３２が受信した問い合わせに含まれる一のデータまたはその識別情報を取得する。なお、問い合わせは、通常、マスタ識別子を有する。
【０１０５】
（ステップＳ３０８）判断部１２２は、マスタ格納部１１２の中の該当するマスタの中に当該一のデータが存在するか否かを判別する。マスタ格納部１１２の中に当該一のデータが存在する場合はステップＳ３０９に進み、存在しない場合はステップＳ３１０に進む。
【０１０６】
（ステップＳ３０９）判断結果送信部１４２は、マスタ格納部１１２の中に当該一のデータが存在する旨の判断結果を端末装置２に送信する。その後、ステップＳ３０１に戻る。
【０１０７】
（ステップＳ３１０）判断結果送信部１４２は、マスタ格納部１１２の中に当該一のデータが存在しない旨の判断結果を端末装置２に送信する。その後、ステップＳ３０１に戻る。
【０１０８】
（ステップＳ３１１）処理部１２は、受信部１３が端末装置２から伝票情報を受信したか否かを判別する。受信部１３が端末装置２から伝票情報を受信した場合はステップＳ３１２に進み、受信していない場合はステップＳ３０１に戻る。
【０１０９】
（ステップＳ３１２）処理部１２は、受信部１３が受信した伝票情報を伝票格納部１１１に蓄積する。その後、ステップＳ３０１に戻る。
【０１１０】
なお、図３のフローチャートにおいては、ステップＳ３０９で、一のデータが存在する旨の判断結果を送信しているが、何も送信しなくてもよい。
【０１１１】
なお、図３のフローチャートにおいて、サーバ装置１の電源オンやプログラムの起動に応じて処理が開始し、電源オフや処理終了の割り込みにより処理は終了する。ただし、処理の開始または終了のトリガは問わない。
【０１１２】
図４は、上記ステップＳ３０２のマスタ取得処理の例を説明するフローチャートである。
【０１１３】
（ステップＳ４０１）処理部１２は、当該指示が種類識別子「製品起動時」を含むか否かを判別する。当該指示が種類識別子「製品起動時」を含む場合はステップＳ４０２に進み、含まない場合はステップＳ４０３に進む。
【０１１４】
（ステップＳ４０２）マスタ取得部１２１は、種類識別子「製品起動時」に対応するマスタをマスタ格納部１１２から取得する。その後、上位処理にリターンする。
【０１１５】
（ステップＳ４０３）処理部１２は、当該指示が、メニュー選択時に対応するタイミング情報を含むか否かを判別する。メニュー選択時に対応するタイミング情報を含む場合はステップＳ４０４に進み、含まない場合はステップＳ４０５に進む。
【０１１６】
（ステップＳ４０４）マスタ取得部１２１は、指示に対応するマスタをマスタ格納部１１２から取得する。その後、上位処理にリターンする。
【０１１７】
（ステップＳ４０５）処理部１２は、当該指示が、マスタ使用時に対応するタイミング情報を含むか否かを判別する。マスタ使用時に対応するタイミング情報を含む場合はステップＳ４０６に進み、含まない場合はステップＳ４０７に進む。
【０１１８】
（ステップＳ４０６）マスタ取得部１２１は、指示に対応するマスタをマスタ格納部１１２から取得する。その後、上位処理にリターンする。
【０１１９】
（ステップＳ４０７）マスタ取得部１２１は、当該指示に含まれるマスタ識別子に対応するマスタをマスタ格納部１１２から取得する。その後、上位処理にリターンする。
【０１２０】
図５および図６は、端末装置２の動作例を説明するフローチャートである。
【０１２１】
（ステップＳ５０１）端末処理部２５は、端末起動指示受付部２２１が起動指示を受け付けたか否かを判別する。起動指示を受け付けた場合はステップＳ４１０に進み、受け付けていない場合は上位処理にリターンする。
【０１２２】
（ステップＳ５０２）端末処理部２５は、端末アプリ格納部２１３に格納されている会計処理アプリを起動する。
【０１２３】
（ステップＳ５０３）端末指示送信部２３１は、マスタのダウンロードを要求する指示をサーバ装置１に送信する。ここで送信される指示は、種類識別子「製品起動時」を含む。また、指示は、端末マスタ格納部２１２に格納されているマスタ（以下、ローカルのマスタと記す場合がある）であり、種類識別子「製品起動時」に対応するマスタ識別子で識別されるマスタの更新時刻をも含む。
【０１２４】
（ステップＳ５０４）端末処理部２５は、端末マスタ受信部２４１がマスタを受信したか否かを判別する。端末マスタ受信部２４１がマスタを受信した場合はステップＳ５０５に進み、受信していない場合はステップＳ５０４に戻る。
【０１２５】
（ステップＳ５０５）端末マスタ蓄積部２５１は、端末マスタ受信部２４１が受信したマスタを端末マスタ格納部２１２に蓄積する。
【０１２６】
（ステップＳ５０６）端末出力部２６は、例えば、メニューを含む画面を出力する。その後、ステップＳ５０１に戻る。
【０１２７】
（ステップＳ５０７）端末処理部２５は、端末受付部２２がメニュー選択を受け付けたか否かを判別する。メニュー選択を受け付けた場合はステップＳ５１０に進み、受け付けていない場合はステップＳ５０７に戻る。
【０１２８】
（ステップＳ５０８）端末指示送信部２３１は、マスタのダウンロードを要求する指示をサーバ装置１に送信する。ここで送信される指示は、例えば、選択されたメニュー項目を識別する項目識別子を含む。また、指示は、ローカルのマスタであり、選択されたメニュー項目を識別する項目識別子に対応するマスタ識別子で識別されるマスタの更新時刻をも含む。
【０１２９】
（ステップＳ５０９）端末処理部２５は、端末マスタ受信部２４１がサーバ装置１からマスタを受信したか否かを判別する。マスタを受信した場合はステップＳ５１０に進み、受信していない場合はステップＳ５０９に戻る。
【０１３０】
（ステップＳ５１０）端末マスタ蓄積部２５１は、端末マスタ受信部２４１が受信したマスタを端末マスタ格納部２１２に蓄積する。
【０１３１】
（ステップＳ５１１）端末画面出力部２６１は、端末画面情報格納部２１１に格納されている画面情報と、端末マスタ格納部２１２に格納されているマスタとを用いて、伝票情報を入力する画面を構成し、出力する。ここで出力される画面は、１以上の入力フィールドを有する。または、画面は、ＯＫボタン、キャンセルボタンなども有する。
【０１３２】
（ステップＳ５１２）端末処理部２５は、マスタを使用するか否かを判断する。具体的には、端末処理部２５は、例えば、画面の入力フィールドにカーソルが当てられた場合にマスタを使用すると判断し、そうでない場合はマスタを使用しないと判断してもよい。マスタを使用する場合はステップＳ５１５に進み、使用しない場合はステップＳ５１９に進む。
【０１３３】
（ステップＳ５１３）端末指示送信部２３１は、マスタのダウンロードを要求する指示をサーバ装置１に送信する。ここで送信される指示は、例えば、フィールド識別子を含む。また、指示は、ローカルのマスタであり、フィールド識別子に対応するマスタ識別子で識別されるマスタの更新時刻をも含む。
【０１３４】
（ステップＳ５１４）端末処理部２５は、端末マスタ受信部２４１がマスタを受信したか否かを判別する。マスタを受信した場合はステップＳ５１５に進み、受信していない場合はステップＳ５１４に戻る。
【０１３５】
（ステップＳ５１５）端末マスタ蓄積部２５１は、端末マスタ受信部２４１が受信したマスタを端末マスタ格納部２１２に蓄積する。
【０１３６】
（ステップＳ５１６）端末出力部２６は、端末マスタ格納部２１２に格納されているマスタであり、出力すべきマスタを用いて、リストを出力する。その後、ステップＳ５０１に戻る。なお、リストは、通常、２以上の選択可能な項目を含む。リストは、例えば、プルダウンメニューである。
【０１３７】
（ステップＳ５１７）端末処理部２５は、マスタを構成する一のデータの入力を受け付けたか否かを判別する。具体的には、端末処理部２５は、例えば、出力されたプルダウンリストから一のデータが選択された場合に、かかるデータの入力を受け付けたと判断し、そうでない場合には、受け付けていないと判断してもよい。マスタを構成する一のデータの入力を受け付けた場合はステップＳ５１８に進み、受け付けていない場合はステップＳ５２３に進む。
【０１３８】
（ステップＳ５１８）端末問合送信部２３３は、当該一のデータがサーバ側に存在するか否かの問い合わせをサーバ装置１に送信する。問い合わせは、その入力された一のデータを含んでいてもよいし、その入力された一のデータを識別する識別情報を含んでいてもよい。
【０１３９】
（ステップＳ５１９）端末処理部２５は、端末結果受信部２４２が判断結果を受信したか否かを判別する。判断結果を受信した場合はステップＳ５２０に進み、受信していない場合はステップＳ５１９に戻る。
【０１４０】
（ステップＳ５２０）端末処理部２５は、受信された判断結果が当該一のデータは存在しない旨の判断結果であるか否かを判別する。当該一のデータは存在しない旨を示す旨の判断結果である場合はステップＳ５２１に進み、そうでない場合はステップＳ５２２に進む。
【０１４１】
（ステップＳ５２１）エラー出力部２６２は、当該一のデータが存在しない旨のエラー出力を行う。その後、ステップＳ５１２に戻る。
【０１４２】
（ステップＳ５２２）端末出力部２６は、当該一のデータを画面の入力フィールド内に出力する。その後、ステップＳ５１２に戻る。
【０１４３】
（ステップＳ５２３）端末処理部２５は、端末受付部２２が伝票情報の入力を受け付けたか否かを判別する。伝票情報の入力を受け付けた場合はステップＳ５２４に進み、受け付けていない場合はステップＳ５２５に進む。
【０１４４】
（ステップＳ５２４）端末伝票送信部２３２は、端末受付部２２が受け付けた伝票情報をサーバ装置１に送信する。その後、ステップＳ５１２に戻る。
【０１４５】
（ステップＳ５２５）端末処理部２５は、ＯＫボタンまたはキャンセルボタンが押されたか否かを判別する。ＯＫボタンまたはキャンセルボタンが押された場合はステップＳ５０７に戻り、押されていない場合はステップＳ５１７に戻る。
【０１４６】
なお、図５および図６のフローチャートにおいて、ステップＳ５０５とステップＳ５０６の間に、次の２つのステップを追加することは好適である。
【０１４７】
（ステップＳ５０６ａ）端末画面出力部２６１は、出力すべきマスタが端末マスタ格納部２１２に格納されているか否かを判断する。出力すべきマスタが端末マスタ格納部２１２に格納されていない場合はステップＳ５０６ｂに進み、格納されている場合はステップＳ５０７に進む。
【０１４８】
（ステップＳ５０６ｂ）端末指示送信部２３１は、出力すべきマスタを要求する指示をサーバ装置１に送信する。ここで送信される指示は、出力すべきマスタを識別するマスタ識別子を有する。その後、ステップＳ５０４に戻る。
【０１４９】
また、ステップＳ５１０とステップＳ５１１の間に、次の２つのステップを追加することは好適である。
【０１５０】
（ステップＳ５１０ａ）端末画面出力部２６１は、出力すべきマスタが端末マスタ格納部２１２に格納されているか否かを判断する。出力すべきマスタが端末マスタ格納部２１２に格納されていない場合はステップＳ５１０ｂに進み、格納されている場合はステップＳ５１１に進む。
【０１５１】
（ステップＳ５１０ｂ）端末指示送信部２３１は、出力すべきマスタを要求する指示をサーバ装置１に送信する。ここで送信される指示は、出力すべきマスタを識別するマスタ識別子を有する。その後、ステップＳ５０９に戻る。
【０１５２】
さらに、ステップＳ５１５とステップＳ５１６の間に、次の２つのステップを追加することは好適である。
【０１５３】
（ステップＳ５１５ａ）端末画面出力部２６１は、出力すべきマスタが端末マスタ格納部２１２に格納されているか否かを判断する。出力すべきマスタが端末マスタ格納部２１２に格納されていない場合はステップＳ５１５ｂに進み、格納されている場合はステップＳ５１６に進む。
【０１５４】
（ステップＳ５１５ｂ）端末指示送信部２３１は、出力すべきマスタを要求する指示をサーバ装置１に送信する。ここで送信される指示は、出力すべきマスタを識別するマスタ識別子を有する。その後、ステップＳ５１４に戻る。
【０１５５】
なお、図５および図６のフローチャートにおいて、端末装置２の電源オンやプログラムの起動に応じて処理が開始し、電源オフや処理終了の割り込みにより処理は終了する。ただし、処理の開始または終了のトリガは問わない。
【０１５６】
以下、本実施の形態における会計情報システムの具体的な動作について説明する。なお、以下の説明は、例示に過ぎず、種々の変更が可能であり、本発明を何ら限定するものではない。また、既出の事項に関する説明は、省略または簡略化している。
【０１５７】
サーバ装置１を構成する伝票格納部１１１には、１以上の伝票情報が格納されている。また、マスタ格納部１１２には、２以上のマスタが格納されている。２以上のマスタとは、例えば、マスタＭ１、マスタＭ２、マスタＭ３、…などである。さらに、格納部１１には、図７に示すようなマスタ管理情報が格納されている。
【０１５８】
図７は、マスタ管理情報のデータ構造図である。マスタ管理情報は、マスタ識別子とタイミング情報と更新時刻との組の集合で構成される。マスタ識別子とタイミング情報と更新時刻との組の集合とは、例えば、マスタ識別子「Ｍ１」と種類識別子であるタイミング情報「製品起動時」と更新時刻「２０１６／１２／２  １１:１６」との組、マスタ識別子「Ｍ２」とタイミング情報「製品起動時」と更新時刻「２０１６／１１／２５  １０:０９」との組、マスタ識別子「Ｍ３」とタイミング情報「項目Ｘ」と更新時刻「２０１６／１１／２２  １５:４７」との組、マスタ識別子「Ｍ４」とタイミング情報「フィールドＹ，フィールドＺ」と更新時刻「２０１６／１０／１３  １６:３０」との組、マスタ識別子「Ｍ５」と種類識別子「−」と更新時刻「２０１６／１２／３  １１:４３」との組、…などである。なお、種類識別子「−」は、当該マスタが種類識別子を有さないこと（例えば、Ｎｕｌｌ）を示す。また、タイミング情報「項目Ｘ」は、メニュー選択時を示すタイミング情報の例であり、種類識別子「メニュー選択時」または画面識別子等でも良い。さらに、タイミング情報「フィールドＹ，フィールドＺ」は、マスタ使用時を示すタイミング情報の例であり、種類識別子「マスタ使用時」、マスタ識別子であってもよい。こうした事項は、後述するローカルマスタ管理情報にも当てはまる。また、タイミング情報「フィールドＹ，フィールドＺ」のように、一のマスタに対応して、２以上のタイミング情報が存在しても良い。
【０１５９】
端末装置２を構成する端末画面情報格納部２１１には、画面情報が格納されている。また、端末マスタ格納部２１２には、１以上のマスタが格納されている。１以上の各マスタは、端末指示送信部２３１が送信した指示に応じて、端末マスタ受信部２４１がサーバ装置１から受信し、端末マスタ蓄積部２５１が端末マスタ格納部２１２に蓄積したマスタであり、ローカルのマスタと記す場合がある。また、端末マスタ格納部２１２は、例えば、ハードディスクで構成されている。また、端末アプリ格納部２１３には、会計処理アプリが格納されている。さらに、端末格納部２１には、図８に示すようなローカルマスタ管理情報が格納されている。
【０１６０】
図８は、ローカルマスタ管理情報のデータ構造図である。ローカルマスタ管理情報は、マスタ識別子と種類識別子と更新時刻との組の集合で構成される。マスタ識別子と種類識別子と更新時刻との組の構造は、上述した図７のマスタ管理情報と同様である。
【０１６１】
端末装置２において、端末起動指示受付部２２１が起動指示を受け付けると、端末処理部２５は、端末アプリ格納部２１３に格納されている会計処理アプリを起動する。また、端末処理部２５は、端末マスタ格納部２１２に格納されているローカルのマスタであり、種類識別子「製品起動時」に対応するマスタ識別子で識別されるマスタの更新時刻を、端末格納部２１に格納されているローカルマスタ管理情報を用いて取得する。本例では、種類識別子「製品起動時」に対応するマスタ識別子Ｍ１，Ｍ２で識別されるマスタＭ１，Ｍ２の更新時刻「２０１６／１１／２６  １３：２３」，「２０１６／１１／２５  １０：０９」が取得される。そして、端末指示送信部２３１は、種類識別子「製品起動時」、およびマスタＭ１，Ｍ２の更新時刻「２０１６／１２／２  １１：１６」，「２０１６／１１／２５  １０：０９」を含む指示をサーバ装置１に送信する。なお、かかる場合、指示は、例えば、「マスタダウンロード  タイミング情報＝製品起動時  （Ｍ１，２０１６／１２／２  １１：１６）（Ｍ２，２０１６／１１／２５  １０：０９）」である。
【０１６２】
サーバ装置１において、指示受信部１３１が端末装置２から上記指示を受信すると、マスタ取得部１２１は、当該指示が有する種類識別子「製品起動時」に対応するマスタＭ１およびマスタＭ２をマスタ格納部１１２から取得する。また、マスタ取得部１２１は、当該マスタＭ１の更新時刻「２０１６／１２／２  １１：１６」、および当該マスタＭ２の更新時刻「２０１６／１１／２５  １０：０９」を、格納部１１に格納されているマスタ管理情報を用いて取得する。
【０１６３】
次に、処理部１２は、当該指示に含まれる更新時刻が、マスタ取得部１２１が取得した更新時刻よりも古いか否かを判別する。本例では、当該指示に含まれるマスタＭ１の更新時刻「２０１６／１１／２６  １３：２３」は、マスタ取得部１２１が取得したマスタＭ１の更新時刻「２０１６／１２／２  １１：１６」よりも古いと判別される。また、当該指示に含まれるマスタＭ２の更新時刻「２０１６／１１／２５  １０：０９」は、マスタ取得部１２１が取得したマスタＭ２の更新時刻「２０１６／１１／２５  １０：０９」よりも古くないと判別される。
【０１６４】
マスタ送信部１４１は、取得されたマスタＭ１およびマスタＭ２のうち、当該指示に含まれる更新時刻が、取得された更新時刻よりも古いと判別されたマスタＭ１を、端末装置２に送信する。取得されたマスタＭ２については、当該指示に含まれる更新時刻が、取得された更新時刻と同じであり、ローカルのマスタＭ２に対して更新されていないと判断されるため、マスタ送信部１４１は、マスタＭ２の送信は行わない。なお、マスタ送信部１４１は、マスタＭ１の更新時刻「２０１６／１２／２  １１：１６」も、マスタＭ１と対にして、端末装置２に送信しても良い。
【０１６５】
端末装置２において、端末マスタ受信部２４１が、マスタＭ１を更新時刻「２０１６／１２／２  １１：１６」と対に受信し、端末マスタ蓄積部２５１は、受信されたマスタＭ１をマスタ識別子Ｍ１に対応付けて端末マスタ格納部２１２に蓄積する。これに伴い、端末処理部２５は、ローカルマスタ管理情報が有する更新時刻であり、マスタ識別子Ｍ１に対応する更新時刻「２０１６／１１／２６  １３：２３」を、マスタＭ１と対に受信された更新時刻「２０１６／１２／２  １１：１６」に更新する。
【０１６６】
端末出力部２６は、端末画面情報格納部２１１に格納されている画面情報（例えば、各種のテキスト、ボタン等の部品の画像、およびレイアウト情報など）を用いて、図９に示すようなメニューの画面を構成し、ディスプレイを介して出力する。この画面は、テキスト「会計処理メニュー」、メニュー項目「伝票入力」が記された第一のボタン、およびメニュー項目「売上管理」が記された第二のボタンなどを有する。この画面上で、例えば、第一のボタンの押下によってメニュー項目「伝票入力」が選択されると、端末処理部２５は、当該メニュー項目の項目識別子「項目Ｘ」に対応する１以上のマスタ識別子で識別されるローカルのマスタの更新時刻を、ローカルマスタ管理情報を用いて取得する。本例では、項目識別子「項目Ｘ」に対応するマスタ識別子Ｍ３で識別されるマスタＭ３の更新時刻「２０１６／１１／１４  １０：１７」が取得される。そして、端末指示送信部２３１は、タイミング情報である項目識別子「項目Ｘ」、およびマスタＭ３の更新時刻「２０１６／１１／１４  １０：１７」を含む指示をサーバ装置１に送信する。
【０１６７】
サーバ装置１において、指示受信部１３１が端末装置２から上記指示を受信すると、マスタ取得部１２１は、当該指示が有する項目識別子「項目Ｘ」に対応するマスタＭ３をマスタ格納部１１２から取得する。また、マスタ取得部１２１は、当該マスタＭ３の更新時刻「２０１６／１１／２２  １５：４７」を、マスタ管理情報を用いて取得する。
【０１６８】
次に、処理部１２は、当該指示に含まれる更新時刻が、マスタ取得部１２１が取得した更新時刻よりも古いか否かを判別する。本例では、当該指示に含まれるマスタＭ３の「２０１６／１１／１４  １０：１７」は、マスタ取得部１２１が取得したマスタＭ３の更新時刻「２０１６／１１／２２  １５：４７」よりも古いと判別される。そこで、マスタ送信部１４１は、取得されたマスタＭ３を、当該マスタＭ３の更新時刻「２０１６／１１／２２  １５：４７」と対に、端末装置２に送信する。
【０１６９】
端末装置２において、端末マスタ受信部２４１が上記マスタＭ３を更新時刻「２０１６／１１／２２  １５：４７」と対に受信し、端末マスタ蓄積部２５１は、受信されたマスタＭ３をマスタ識別子Ｍ３に対応付けて端末マスタ格納部２１２に蓄積する。これに伴い、端末処理部２５は、ローカルマスタ管理情報が有する更新時刻であり、マスタ識別子Ｍ３に対応する更新時刻「２０１６／１１／１４  １０：１７」を、こうしてマスタＭ３と対に受信された更新時刻「２０１６／１１／２２  １５：４７」に更新する。端末画面出力部２６１は、端末画面情報格納部２１１に格納されている画面情報（例えば、各種のテキスト、ボタン等の部品の画像、２以上の入力フィールドを有する表の情報（例えば、列の数、各列の幅など）、およびレイアウト情報等）と、端末マスタ格納部２１２に格納されているマスタＭ３とを用いて、伝票情報を入力する画面を構成し、ディスプレイを介して出力する。
【０１７０】
伝票情報を入力する画面の一例を、図１０に示す。この画面は、例えば、１番目の入力フィールドである「Ｎｏ．」フィールド、２番目の入力フィールドである「取引先」フィールド、３番目の入力フィールドである「金額」フィールド、および４番目の入力フィールドである「科目」フィールドなどを有する。「Ｎｏ．」フィールドには、伝票の番号が入力される。「取引先」フィールドには、伝票に記載の取引先の情報が入力される「金額」フィールドには、伝票に記載の金額が入力される。「科目」フィールドには、伝票に記載の科目が入力される。または、この画面は、「ＯＫ」ボタン、「キャンセル」ボタンなども有する。
【０１７１】
この画面上で、いずれかの入力フィールドにカーソルが当てられたとき、端末処理部２５は、マスタを使用すると判断する。本例では、「取引先」フィールドに対してカーソルが当てられたとする。端末処理部２５は、フィールド識別子「取引先」に対応するマスタ識別子Ｍ４で識別されるローカルのマスタＭ４の更新時刻「２０１６年１０月１３日  １６：３０」を、ローカルマスタ管理情報を用いて取得する。端末指示送信部２３１は、フィールド識別子「取引先」と、マスタＭ４の更新時刻「２０１６／１０／１３  １６：３０」とを含む指示を、サーバ装置１に送信する。
【０１７２】
サーバ装置１において、指示受信部１３１が端末装置２から上記指示を受信すると、マスタ取得部１２１は、当該指示が有するフィールド識別子「取引先」に対応するマスタＭ４をマスタ格納部１１２から取得する。また、マスタ取得部１２１は、当該マスタＭ４の更新時刻「２０１６／１０／１３  １６：３０」を、マスタ管理情報を用いて取得する。
【０１７３】
次に、処理部１２は、当該指示に含まれる更新時刻が、マスタ取得部１２１が取得した更新時刻よりも古いか否かを判別する。本例では、当該指示に含まれるマスタＭ４の更新時刻「２０１６／１０／１３  １６：３０」は、マスタ取得部１２１が取得したマスタＭ３の更新時刻「２０１６／１０／１３  １６：３０」よりも古くないと判別される。このため、マスタ送信部１４１は、取得されたマスタＭ４の送信は行わない。
【０１７４】
端末装置２において、端末画面出力部２６１は、カーソルが当てられた「取引先」フィールドに対してリストとして出力すべきマスタが、端末マスタ格納部２１２に格納されているか否かを判断する。例えば、端末画面出力部２６１は、フィールド識別子「取引先」と２つのマスタ識別子Ｍ４およびＭ５との対を保持しており、マスタ識別子Ｍ５で識別されるマスタＭ５が端末マスタ格納部２１２に格納されていないとする。この場合、端末指示送信部２３１は、当該マスタ識別子Ｍ５を有する指示を、サーバ装置１に送信する。
【０１７５】
サーバ装置１において、指示受信部１３１が上記指示を受信すると、マスタ取得部１２１は、当該指示が有するマスタ識別子Ｍ５で識別されるマスタＭ５をマスタ格納部１１２から取得する。マスタ送信部１４１は、取得されたマスタＭ５を、当該マスタ５の更新時刻と対に端末装置２に送信する。
【０１７６】
端末装置２において、端末マスタ受信部２４１がサーバ装置１からマスタＭ５を更新時刻と対に受信し、端末マスタ蓄積部２５１は、受信されたマスタＭ５をマスタ識別子Ｍ５に対応付けて端末マスタ格納部２１２に蓄積する。これに伴い、端末処理部２５は、ローカルマスタ管理情報に、当該マスタ識別子Ｍ５と更新時刻との対を追加する。端末出力部２６は、端末マスタ格納部２１２に格納されているローカルのマスタであり、出力すべきマスタＭ４およびＭ５を用いて、リストを構成し、ディスプレイを介して出力する。
【０１７７】
リストの出力例を図１１に示す。このリストは、マスタＭ４またはＭ５を構成するデータであり、「株式会社○○」、「○○商事（株）」、…といった１以上のデータを有する。リストは、伝票情報を入力する画面上に、カーソルが当てられた「取引先」フィールドに対応付けて表示される。なお、図１１には、「取引先」フィールドにカーソルが当てられたとき表示されるリストに加えて、「科目」フィールドにカーソルが当てられたとき表示される別のリストも示されているが、後者については後述する。
【０１７８】
このリスト上で、一のデータが選択されると、端末問合送信部２３３は、当該一のデータがサーバ側に存在するか否かの問い合わせをサーバ装置１に送信する。問い合わせは、その入力された一のデータを識別する識別情報を含む。この識別情報は、当該一のデータが属するマスタを識別するマスタ識別子、および当該マスタにおける当該一のデータが属するレコードを識別するレコード識別子の組であってもよい。本例では、プルダウンリスト上の「株式会社○○」が選択されたとする。
【０１７９】
サーバ装置１において、問合受信部１３２が端末装置２からの上記問い合わせを受信すると、処理部１２は、その問い合わせに含まれる一のデータの識別情報を取得する。判断部１２２は、マスタ格納部１１２の中に当該識別情報で識別される一のデータ「株式会社○○」が存在するか否かを判別する。マスタ格納部１１２の中に当該一のデータ「株式会社○○」が存在する場合、判断結果送信部１４２は、当該一のデータが存在する旨の判断結果を端末装置２に送信する。マスタ格納部１１２の中に当該一のデータ「株式会社○○」が存在しない場合、判断結果送信部１４２は、当該一のデータが存在しない旨の判断結果を端末装置２に送信する。本例では、当該一のデータ「株式会社○○」は、マスタ格納部１１２から削除されており、判断結果送信部１４２は、当該一のデータが存在しない旨の判断結果を端末装置２に送信する。
【０１８０】
端末装置２において、端末結果受信部２４２が上記判断結果を受信し、受信された判断結果が、当該一のデータは存在しない旨を示すため、エラー出力部２６２は、当該一のデータが存在しない旨のエラー出力を行う。なお、当該一のデータ「株式会社○○」がマスタ格納部１１２に存在する場合、判断結果送信部１４２は、当該一のデータが存在する旨の判断結果を端末装置２に送信し、端末出力部２６は、当該一のデータ「株式会社○○」を当該「取引先」フィールド内に出力する。
【０１８１】
当該「取引先」フィールドに対し、リストから一のデータが選択される代わりに、端末受付部２２が、リストにない伝票情報の入力を受け付けると、端末伝票送信部２３２は、当該伝票情報を、当該「取引先」フィールドを識別するフィールド識別情報と対に、サーバ装置１に送信する。
【０１８２】
サーバ装置１において、受信部１３が上記伝票情報をフィールド識別情報と対に受信すると、処理部１２は、当該伝票情報をフィールド識別情報と対に伝票格納部１１１に蓄積する。端末装置２において、端末画面出力部２６１は、上記リストを消去し、再び図１０の画面を出力する。
【０１８３】
なお、図１０の画面上で、「科目」フィールドに対してカーソルが当てられたとすると、端末処理部２５は、フィールド識別子「科目」に対応するマスタ識別子で識別されるローカルのマスタの更新時刻を取得し、端末指示送信部２３１は、フィールド識別子「科目」と、当該マスタの更新時刻とを含む指示を、サーバ装置１に送信する。
【０１８４】
サーバ装置１において、指示受信部１３１が端末装置２から上記指示を受信すると、マスタ取得部１２１は、当該指示が有するフィールド識別子「科目」に対応するマスタをマスタ格納部１１２から取得し、また、当該マスタの更新時刻を、マスタ管理情報を用いて取得する。処理部１２は、当該指示に含まれる更新時刻が、取得された更新時刻よりも古いか否かを判別する。本例では、当該指示に含まれるマスタの更新時刻は、マスタ取得部１２１が取得したマスタの更新時刻よりも古いと判別され、マスタ送信部１４１は、取得されたマスタを送信する。
【０１８５】
端末装置２において、端末マスタ受信部２４１が上記マスタを受信し、端末マスタ蓄積部２５は、受信された上記マスタを端末マスタ格納部２１２に蓄積する。次に、端末画面出力部２６１は、カーソルが当てられた「科目」フィールドに対してリストとして出力すべきマスタが、端末マスタ格納部２１２に格納されているか否かを判断する。本例では、出力すべきマスタは、上記マスタであり、端末マスタ格納部２１２に格納されている。端端末画面出力部２６１は、格納されている上記マスタを用いてリストを構成し、ディスプレイを介して出力する。これにより、例えば、図１１に示したように、「通信費」、「消耗品費」、…といった１以上のデータを有するリストが、伝票情報を入力する画面上に、カーソルが当てられた「取引先」フィールドに対応付けて表示される。このリストから一のデータが指定されると、端端末画面出力部２６１は、指定されたデータを「取引先」フィールド内に出力する。
【０１８６】
端末装置２において、画面のＯＫボタンまたはキャンセルボタンが押されると、端末画面出力部２６１は、再び図９のようなメニュー画面を出力する。
【０１８７】
以上、本実施の形態によれば、端末装置２は、２以上のマスタを異なる適切なタイミングでダウンロードすることにより、通信量を抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことができる画面を出力できる。
【０１８８】
また、端末装置２は、マスタの種類によって、一部のマスタを起動時にダウンロードし、他のマスタを適時ダウンロードすることで、各マスタのダウンロードのタイミングを好適に遅らせることができる。
【０１８９】
また、端末装置２は、マスタの種類によって、一部のマスタを起動時にダウンロードし、他のマスタをメニュー選択時またはマスタ使用時にダウンロードすることで、各マスタのダウンロードのタイミングを極力遅らせることができる。それによって、再ダウンロードの回数がいっそう減る結果、端末装置２は、通信量を大幅に抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことができる。
【０１９０】
また、端末装置２は、会計処理アプリの起動時に、マスタのダウンロードを要求することで、端末装置２の起動時に要求を行う場合と比べて、ダウンロードのタイミングを遅らせることができるので、通信量を抑制しつつ、マスタを用いた会計処理を行うことができる。
【０１９１】
また、端末装置２は、出力すべきマスタが端末側に存在しない場合にだけ当該マスタのダウンロードを要求し、出力すべきマスタが端末側に存在する場合にはダウンロードを要求しないことで、通信量をいっそう抑制しつつ、最新のマスタを用いた画面の出力を行うことができる。
【０１９２】
また、端末装置２は、製品起動時にダウンロードすべきマスタが、既にダウンロード済みであり、かつ更新されていない場合には、当該マスタのダウンロードを行わないので、通信量をいっそう抑制できる。
【０１９３】
また、端末装置２は、メニュー選択時にダウンロードすべきマスタが、既にダウンロード済みであり、かつ更新されていない場合には、当該マスタのダウンロードを行わないので、通信量をいっそう抑制できる。
【０１９４】
また、端末装置２は、マスタ使用時にダウンロードすべきマスタが、既にダウンロード済みであり、かつ更新されていない場合には、当該マスタのダウンロードを行わないので、通信量をいっそう抑制できる。
【０１９５】
また、端末装置２は、サーバ側のデータと異なるデータが入力された場合、エラーを出力するので、端末側でマスタが改変されることを防止できる。
【０１９６】
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態におけるサーバ装置１を実現するソフトウェアは、以下のようなプログラムである。
【０１９７】
つまり、コンピュータがアクセス可能な記録媒体は、伝票情報が格納される伝票格納部と、２以上のマスタが格納されるマスタ格納部とを具備し、コンピュータを、端末装置からの指示を受信する指示受信部と、前記指示に応じたタイミングに対応するマスタを前記マスタ格納部から取得するマスタ取得部と、前記マスタ取得部が取得したマスタを前記端末装置に送信するマスタ送信部として機能させるためのプログラムである。
【０１９８】
また、本実施の形態における端末装置２を実現するソフトウェアは、以下のようなプログラムである。
【０１９９】
つまり、コンピュータがアクセス可能な記録媒体は、伝票情報を入力する画面である画面情報が格納される端末画面情報格納部と、１以上のマスタが格納される端末マスタ格納部とを具備し、コンピュータを、２以上の予め決められたタイミングで、マスタのダウンロードを要求する指示をサーバ装置に送信する端末指示送信部と、前記指示の送信に応じて、マスタを受信する端末マスタ受信部と、前記端末マスタ受信部が受信したマスタを前記端末マスタ格納部に蓄積する端末マスタ蓄積部と、前記端末画面情報格納部の端末画面情報と前記端末マスタ格納部のマスタとを用いて、伝票情報を入力する画面を出力する端末画面出力部と、前記画面に対する伝票情報の入力を受け付ける端末受付部と、前記端末受付部が受け付けた伝票情報を前記サーバ装置に送信する端末伝票送信部として機能させるためのプログラムである。
【０２００】
また、図１２は、本実施の形態におけるプログラムを実行して、サーバ装置１または端末装置２を実現するコンピュータシステム９００の外観図である。本実施の形態は、コンピュータハードウェアおよびその上で実行されるコンピュータプログラムによって実現され得る。図１２において、コンピュータシステム９００は、ディスクドライブ９０５を含むコンピュータ９０１と、キーボード９０２と、マウス９０３と、ディスプレイ９０４とを備える。なお、キーボード９０２やマウス９０３やディスプレイ９０４をも含むシステム全体をコンピュータと呼んでもよい。
【０２０１】
図１３は、コンピュータシステム９００の内部構成の一例を示す図である。図１３において、コンピュータ９０１は、ディスクドライブ９０５に加えて、ＭＰＵ９１１と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ９１２と、ＭＰＵ９１１に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するＲＡＭ９１３と、アプリケーションプログラム、システムプログラム、およびデータを記憶するストレージ９１４と、ＭＰＵ９１１、ＲＯＭ９１２等を相互に接続するバス９１５と、外部ネットワークや内部ネットワーク等のネットワークへの接続を提供するネットワークカード９１６と、を備える。ストレージ９１４は、例えば、ハードディスク、ＳＳＤ、フラッシュメモリなどである。
【０２０２】
コンピュータシステム９００に、端末装置２等の機能を実行させるプログラムは、例えば、ＤＶＤ、ＣＤ−ＲＯＭ等のディスク９２１に記憶されて、ディスクドライブ９０５に挿入され、ストレージ９１４に転送されてもよい。これに代えて、そのプログラムは、ネットワークを介してコンピュータ９０１に送信され、ストレージ９１４に記憶されてもよい。プログラムは、実行の際にＲＡＭ９１３にロードされる。なお、プログラムは、ディスク９２１、またはネットワークから直接、ロードされてもよい。また、ディスク９２１に代えて他の着脱可能な記録媒体（例えば、ＤＶＤやメモリカード等）を介して、プログラムがコンピュータシステム９００に読み込まれてもよい。
【０２０３】
プログラムは、コンピュータの詳細を示す９０１に、端末装置２等の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム９００がどのように動作するのかについては周知であり、詳細な説明は省略する。
【０２０４】
なお、上述したコンピュータシステム９００は、据え置き型のＰＣであるが、端末装置２は、例えば、タブレット端末やスマートフォンやノートＰＣといった、携帯端末で実現されてもよい。この場合、例えば、キーボード９０２およびマウス９０３はタッチパネルに、ディスクドライブ９０５はメモリカードスロットに、ディスク９２１はメモリカードに、それぞれ置き換えられることが望ましい。サーバ装置１も、基本的には、上記と同様のハードウェア構成でよい。ただし、以上は例示であり、端末装置２等を実現するコンピュータのハードウェア構成は問わない。
【０２０５】
なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理（ハードウェアでしか行われない処理）は含まれない。
【０２０６】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、一のコンピュータが集中処理を行ってもよく、あるいは複数のコンピュータが分散処理を行ってもよい。
【０２０７】
また、上記実施の形態において、一の装置に存在する２以上の通信手段（受信部１３、送信部１４など）は、物理的に一の媒体で実現されてもよいことは言うまでもない。
【０２０８】
また、上記実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０２０９】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０２１０】
以上のように、本発明にかかる会計情報システムは、通信量を抑制しつつ、最新のマスタを用いた的確な伝票情報の入力を行うことができるという効果を有し、会計情報システム等として有用である。
【符号の説明】
【０２１１】
１  サーバ装置
２  端末装置
１１  格納部
１２  処理部
１３  受信部
１４  送信部
２１  端末格納部
２２  端末受付部
２３  端末送信部
２４  端末受信部
２５  端末処理部
２６  端末出力部
１１１  伝票格納部
１１２  マスタ格納部
１２１  マスタ取得部
１２２  判断部
１３１  指示受信部
１３２  問合受信部
１４１  マスタ送信部
１４２  判断結果送信部
２１１  端末画面情報格納部
２１２  端末マスタ格納部
２１３  端末アプリ格納部
２２１  端末起動指示受付部
２３１  端末指示送信部
２３２  端末伝票送信部
２３３  端末問合送信部
２４１  端末マスタ受信部
２４２  端末結果受信部
２５１  端末マスタ蓄積部
２６１  端末画面出力部
２６２  エラー出力部
【図１】
2018097784.tif 000003
【図２】
2018097784.tif 000004
【図３】
2018097784.tif 000005
【図４】
2018097784.tif 000006
【図５】
2018097784.tif 000007
【図６】
2018097784.tif 000008
【図７】
2018097784.tif 000009
【図８】
2018097784.tif 000010
【図９】
2018097784.tif 000011
【図１０】
2018097784.tif 000012
【図１１】
2018097784.tif 000013
【図１２】
2018097784.tif 000014
【図１３】
2018097784.tif 000015