以下、添付図面を参照して本発明に係る好適な実施の形態を詳細に説明する。なお、本発明は、図示例に限定されるものではない。
先ず、図1〜図3を参照して本発明に係る実施の形態の装置構成を説明する。図1に、本実施の形態のデータ処理システム1の構成を示す。図2に、サーバ端末10の内部構成を示す。図3に、PC端末20Aの内部構成を示す。
図1に示す本実施の形態のデータ処理システム1は、各種の業務支援のためのデータ処理を行うシステムである。このデータ処理は、所定業務の各担当者によるデータ入力を受け付けるデータ入力処理や、入力されたデータの管理処理である。データ処理システム1は、データ処理装置としてのサーバ端末10、PC端末20A,20B,20C,20Dと、外部記憶装置30A,30B,30C,30D,30Eと、を備える。
サーバ端末10は、担当者のデータ入力を受け付けるとともに、サーバ端末10及びPC端末20A〜20Dにおいて入力されたデータを管理するサーバである。PC端末20A〜20Dは、それぞれ、担当者のデータ入力を受け付けるノートPC等のスタンドアロン端末である。
外部記憶装置30A〜30Eは、それぞれ、サーバ端末10及びPC端末20A〜20Dに接続可能な半導体メモリとしてのUSB(Universal Serial Bus)メモリである。USBメモリは、電気的にデータの読み出し及び書き込みが可能なメモリである。また、サーバ端末10、PC端末20A〜20Dの台数を、5台としたが、これに限定されるものではなく、他の複数の台数としてもよい。また、外部記憶装置30A〜30Eの台数を、5台としたが、これに限定されるものではなく、他の複数の台数としてもよい。
次いで、図2を参照して、サーバ端末10の内部構成を説明する。図2に示すように、サーバ端末10は、制御手段としてのCPU11、入力手段としての入力部12、RAM13、表示部14、データベース記憶手段としての記憶部15、識別情報記憶手段としての通信部16、接続手段としての接続部17、計時部18等を備え、各部がバス19を介して接続されている。
CPU11は、サーバ端末10の各部を中央制御する。CPU11は、記憶部15、又は接続中の外部記憶装置30A〜30Eに記憶されているシステムプログラム及び各種アプリケーションプログラムの中から指定されたプログラムをRAM13に展開し、RAM13に展開されたプログラムとの協働で、各種処理を実行する。
CPU11は、設定プログラムに基づいて、接続された外部記憶装置30A〜30Eから取得された第1の識別情報としてのシリアルNOと、入力部12により入力されたサーバ端末10、PC端末20A〜20Dの第2の識別情報としてのMACアドレスの組合せと、入力部12により入力された複数のMACアドレス、及び複数の処理内容の組合せと、の入力を受け付ける。そして、CPU11は、前記入力された複数のシリアルNO及び複数のMACアドレスの組合せから装置設定ファイルを生成し、前記入力された複数のMACアドレス及び複数の処理内容の組合せから処理設定ファイルを生成して外部記憶装置30A〜30Eに記憶する。
CPU11は、接続確認サービスプログラムに基づいて、外部記憶装置30A〜30Eが接続部17に接続されると、接続中の外部記憶装置から装置設定ファイル、処理設定ファイル及びシリアルNOを取得し、通信部16からMACアドレスを取得し、取得したシリアルNO及びMACアドレスの組合せが、装置設定ファイルに存在するか否かを判別する。CPU11は、組合せが存在する場合に、このMACアドレスに対応する処理内容を処理設定ファイルから取得し、この処理内容に応じて接続中の外部記憶装置にアクセスして、データ同期処理、メニュー起動処理又は業務アプリケーション起動処理を実行する。
入力部12は、文字等の入力キーを有するキーボードと、マウス等のポインティングデバイスとを備え、ユーザからの各種キー操作入力及び位置操作入力を受け付け、その操作入力情報をCPU11に出力する。
RAM13は、情報を一時的に格納する揮発性のメモリであり、実行される各種プログラムやこれら各種プログラムに係るデータ等を格納するワークエリアを有する。
表示部14は、LCD(Liquid Crystal Display)、ELD(ElectroLuminescent Display)等で構成され、CPU11からの表示信号に従って各種表示を行う。
記憶部15は、HDD(Hard Disc Drive)等により構成され、各種プログラム、各種データが記憶されるとともいに、読み出し及び書き込み可能である記憶部である。記憶部15は、後述する連番情報110、DB(データベース)120、設定プログラム130、接続認識サービスプログラム140を記憶する。
通信部16は、LAN(Local Area Network)、WAN(Wide Area Network)等の通信ネットワーク上の外部機器との通信を仲介するネットワークカード等の回路部である。しかし、この通信ネットワークには、PC端末20A〜20Dが接続されていないものとする。また、通信機器としての通信部16は、世界中の通信ネットワーク機器でユニークなMAC(Media Access Control )アドレスが予め設定されている。通信部16は、CPU11の要求に応じて、MACアドレスをCPU11に出力する。通信部16のMACアドレスは、サーバ端末10を識別するMACアドレスとなる。
接続部17は、外部記憶装置30A〜30Eが接続され、外部記憶装置30A〜30Eへのアクセスを仲介する回路部である。接続部17は、USBメモリとしての外部記憶装置30A〜30Eが接続されるUSBスロットを含む。
計時部18は、CPU11の要求により、現在の日付及び時刻を示す日時情報を生成してCPU11に出力する。
次いで、図3を参照して、PC端末20Aの内部構成を説明する。ここでは、PC端末20Aの内部構成について説明するが、PC端末20B〜20Dの内部構成についても同様である。
図3に示すように、PC端末20Aは、CPU21、入力部22、RAM23、表示部24、記憶部25、通信部26、接続部27、計時部28等を備え、各部がバス29を介して接続されている。
CPU21、入力部22、RAM23、表示部24、記憶部25、通信部26、接続部27、計時部28は、それぞれ、サーバ端末10のCPU11、入力部12、RAM13、表示部14、記憶部15、通信部16、接続部17、計時部18と同様の構成であり、説明の重複を避けるため、異なる部分を主として説明する。
CPU21は、記憶部25に記憶された接続認識サービスプログラム210との協働により、接続認識サービス処理が実行される。この接続認識サービス処理には、データ同期処理が含まれない。記憶部25は、後述する接続認識サービスプログラム210を記憶する。
通信部26は、通信ネットワーク上の外部機器との通信を仲介するネットワークカード等の回路部である。しかし、通信部26には、通信ネットワークが接続されていないものとする。また、通信機器としての通信部26は、MACアドレスが予め設定されており、CPU11の要求に応じて、このMACアドレスをCPU11に出力する。通信部26のMACアドレスは、PC端末20Aを識別するMACアドレスとなる。
次に、図4及び図5を参照して、サーバ端末10、PC端末20A、外部記憶装置30Aに記憶されるプログラム及びデータを説明する。図4(a)に、サーバ端末10に記憶されるプログラム及びデータを示す。図4(b)に、PC端末20Aに記憶されるプログラム及びデータを示す。図4(c)に、外部記憶装置30Aに記憶されるプログラム及びデータを示す。図5(a)に、装置設定ファイル330の構成を示す。図5(b)に、処理設定ファイル340の構成を示す。
ここでは、PC端末20Aに記憶されるプログラム及びデータを説明するが、PC端末20B〜20Dに記憶されるプログラム及びデータも同様である。また、外部記憶装置30Aに記憶されるプログラム及びデータを説明するが、外部記憶装置30B〜30Eに記憶されるプログラム及びデータも同様である。
図4(a)に示すように、サーバ端末10の記憶部15には、連番情報110、DB120、設定プログラム130、接続認識サービスプログラム140が記憶されている。
連番情報110は、DB120のデータ更新に対応する該当項目の連番の情報である。該当項目とは、データとして連番が付与される項目であり、例えば、得意先コード、システム伝票番号等の項目である。ここでは、連番情報110は、DB120の該当項目で次のデータ更新に発番が予約される連番の情報とする。しかし、これに限定されるものではなく、連番情報110は、DB120のデータ更新で発番された最新の連番の情報としてもよい。
DB120は、発注伝票入力データ、受注伝票入力データ等のユーザにより入力されたデータのデータベースである。DB120は、例えば、データ更新日時の日時設定ファイル、得意先マスタ、伝票合計、伝票明細等のファイルを有し、各ファイルがレコードを有するものとする。
設定プログラム130は、設定処理を実行するためのプログラムである。接続認識サービスプログラム140は、接続認識サービス処理を実行するためのプログラムである。
図4(b)に示すように、PC端末20Aの記憶部25には、接続認識サービスプログラム210が記憶されている。接続認識サービスプログラム210は、接続認識サービス処理を実行するためのプログラムである。
図4(c)に示すように、外部記憶装置30Aには、シリアルNO310、連番情報320、設定ファイル400、DB350、メニュー情報360、基本アプリケーションプログラム370、業務アプリケーションプログラム380が記憶されている。設定ファイル400は、第1のテーブルとしての装置設定ファイル330、第2のテーブルとしての処理設定ファイル340を含む。但し、シリアルNO310が、外部記憶装置30A内の書き換えが不可能な記憶領域に記憶されているものとし、他の情報は、外部記憶装置30A内の書き換えが可能な記憶領域に記憶されているものとする。
シリアルNO310は、外部記憶装置30Aの製造番号であり、外部記憶装置30Aを識別するためのユニークな情報である。連番情報320は、DB350のデータ更新に対応する該当項目の連番の情報である。ここでは、連番情報320は、DB350の該当項目で次のデータ更新に発番が予約される連番の情報とする。しかし、これに限定されるものではなく、連番情報320は、DB350のデータ更新で発番された最新の連番の情報としてもよい。
装置設定ファイル330、処理設定ファイル340は、ユーザの設定入力により生成される情報を含む。装置設定ファイル330は、外部記憶装置30A〜30Eと、外部記憶装置30A〜30E内の情報にそれぞれアクセス許可設定された装置(サーバ端末10、PC端末20A〜20D)と、の組合せを示す情報である。処理設定ファイル340は、外部記憶装置30A〜30Eと、外部記憶装置30A〜30Eにそれぞれ実行が許可設定された処理の処理内容と、の組合せを示す情報である。
DB350は、発注伝票入力データ、受注伝票入力データ等、ユーザにより操作入力されたデータのデータベースであり、DB120と同一のデータ内容を含む。しかし、外部記憶装置30A〜30Eを用いたデータ入力によるDB350のデータ内容の更新により、DB350とDB120とのデータ内容との差分が発生する。このため、データ同期処理により、DB350とDB120とが同期される。また、DB350は、前回のDB350更新日時のデータを含む前回更新日時ファイルが含まれる。
メニュー情報360は、各種業務アプリケーションのメニュー画面表示に用いる情報である。メニュー情報360は、例えば、発注伝票入力、受注伝票入力のメニュー画面表示に用いる情報である。メニュー情報360のメニューは、営業担当者、仕入担当者で別のメニュー画面が用意されているものとする。また、営業担当者のメニューは、営業担当者aと営業担当者bとで別のメニュー画面が用意されているものとする。
基本アプリケーションプログラム370は、メニュー画面表示や、業務アプリケーションプログラム380を実行するための基本となるプログラムである。業務アプリケーションプログラム380は、伝票データ入力処理、データ同期処理等の各種業務アプリケーションを実行するためのプログラムである。各種業務アプリケーションは、メニュー画面におけるユーザのメニュー選択入力に応じて実行される。
図5(a)に示すように、装置設定ファイル330は、シリアルNO331、MACアドレス332の項目を有する。シリアルNO331は、外部記憶装置30A〜30Eを識別する番号である。外部記憶装置30A,30B,30C,30D,30EのシリアルNOは、順に、SER123456-01,SER123457-01,SER9876543-01,SER0111111-01,SER0111112-01であるものとする。また、外部記憶装置30A,30B,30C,30D,30Eは、順に、営業担当者a用、営業担当者b用、仕入れ担当者c用、データ入力担当者d用、データ入力担当者e用の外部記憶装置とする。なお、一つのシリアルNO331に複数のMACアドレス332が対応してもよく、一つのMACアドレス332に複数のシリアルNO331が対応してもよい。
MACアドレス332は、シリアルNO331に対応する外部記憶装置30A〜30Eにアクセスが許可されている端末(サーバ端末10、PC端末20A〜20D)のMACアドレスである。サーバ端末10、PC端末20A,20B,20C,20DのMACアドレスは、順に、00:00:00:00:00:04、00:00:00:00:00:01、00:00:00:00:00:02、00:00:00:00:00:03、00:00:00:00:00:05である。
図5(b)に示すように、処理設定ファイル340は、MACアドレス341、処理内容342の項目を有する。MACアドレス341は、サーバ端末10、PC端末20A〜20Dを識別する情報である。処理内容342は、MACアドレス331に対応する端末(サーバ端末10、PC端末20A〜20D)に実行が許可された処理の内容を示す情報である。なお、一つのMACアドレス341に複数の処理内容342が対応してもよく、一つの処理内容342に複数のMACアドレス341が対応してもよい。
次に、図6〜図8を参照して、データ処理システム1の動作を説明する。図6に、サーバ端末10で実行される設定処理の流れを示す。図7に、サーバ端末10で実行される接続認識サービス処理の流れを示す。図8に、接続認識サービス処理のデータ同期処理の流れを示す。
図6を参照して、サーバ端末10で実行される設定処理を説明する。設定処理は、ユーザからの操作入力に応じて、設定ファイル400(装置設定ファイル330、処理設定ファイル340)を生成して外部記憶装置30A〜30Eに記憶する処理である。
サーバ端末10において、例えば、ユーザから入力部12を介して設定処理の実行指示が入力されたことをトリガとして、記憶部15から読み出されてRAM13に適宜展開された設定プログラム130と、CPU11との協働により、設定処理が実行される。
先ず、入力部12により、ユーザからの、サーバ端末10及びPC端末20A〜20DのMACアドレスの入力が受け付けられる(ステップS11)。ユーザは、サーバ端末10及びPC端末20A〜20Dの通信部16,26のMACアドレスを予め取得しておくものとする。
そして、入力部12により、ユーザからの、ステップS11で入力された各MACアドレスに対応する処理の内容の入力が受け付けられ、MACアドレスと処理内容との組合せとして設定される(ステップS12)。そして、全てのサーバ端末10及びPC端末20A〜20Dについて、MACアドレスと処理内容との組合せが設定されたか否かが判別される(ステップS13)。そして、全端末のMACアドレスと処理内容との組合せが設定されていない場合(ステップS13;NO)、ステップS11に移行される。
全端末のMACアドレスと処理内容との組合せが設定された場合(ステップS13;YES)、外部記憶装置30A〜30Eのうちの未接続の一つの外部記憶装置が接続部17に接続されたか否かが判別される(ステップS14)。未接続の一つの外部記憶装置が接続されていない場合(ステップS14;NO)、ステップS14に移行される。
ステップS14において、ユーザは、ステップS14で未接続の外部記憶装置30A〜30Eのいずれか一つを接続部17に接続する。
未接続の一つの外部記憶装置が接続された場合(ステップS14;YES)、接続中の外部記憶装置のシリアルNO310が読み出される(ステップS15)。そして、入力部12により、ユーザからの、ステップS15で読み出されたシリアルNOに対応するMACアドレスの選択入力が受け付けられ、シリアルNOとMACアドレスとの組合せとして設定される(ステップS16)。そして、全ての外部記憶装置30A〜30Eについて、シリアルNOとMACアドレスとの組合せが設定されたか否かが判別される(ステップS17)。全ての外部記憶装置のシリアルNOとMACアドレスとの組合せが設定されていない場合(ステップS17;NO)、ステップS14に移行される。
全ての外部記憶装置のシリアルNOとMACアドレスとの組合せが設定された場合(ステップS17;YES)、外部記憶装置30A〜30Eのうちの設定ファイル400が未記憶の一つの外部記憶装置が接続部17に接続されたか否かが判別される(ステップS18)。設定ファイル400が未記憶の一つの外部記憶装置が接続されていない場合(ステップS18;NO)、ステップS18に移行される。
つまり、ステップS14〜S17において、設定ファイル400(装置設定ファイル330)生成のために、ユーザにより、全ての外部記憶装置30A〜30Eが順に一つずつ接続部17に接続される。そして、ステップS18〜S20において、上記生成された設定ファイル400を記憶するために、ユーザにより、全ての外部記憶装置30A〜30Eが順に一つずつ接続部17に接続される。
設定ファイル400が未記憶の一つの外部記憶装置が接続された場合(ステップS18;YES)、ステップS12で設定されたMACアドレスと処理内容との組合せと、ステップS16で設定されたシリアルNOとMACアドレスとの組合せとが、それぞれ、処理設定ファイル340、装置設定ファイル330として、接続中の外部記憶装置に記憶される(ステップS19)。そして、全ての外部記憶装置30A〜30Eについて、設定ファイル400(装置設定ファイル330、処理設定ファイル340)が記憶されたか否かが判別される(ステップS20)。全ての外部記憶装置に設定ファイル400が記憶されていない場合(ステップS20;NO)、ステップS18に移行される。全ての外部記憶装置に設定ファイル400が記憶された場合(ステップS20;YES)、設定処理が終了する。
なお、処理設定ファイル340の処理内容342に対応する各種データ及び各種アプリケーションプログラムは、例えば、設定処理の後に、外部記憶装置30A〜30Eに記憶される。この各種データ及び各種アプリケーションプログラムは、全ての外部記憶装置30A〜30Eで同一のものとすることができる。具体的には、外部記憶装置30A〜30Eに、それぞれ同じ、連番情報320、DB350、メニュー情報360、基本アプリケーションプログラム370、業務アプリケーションプログラム380が記憶される。
次いで、図7及び図8を参照して、サーバ端末10で実行される接続認識サービス処理を説明する。接続認識サービス処理は、外部記憶装置30A〜30Eの一つが接続部17に接続され、接続された外部記憶装置が使用許可されたものである場合に、その外部記憶装置のアクセス許可された情報(データ及びアプリケーションプログラム)にアクセスして各種サービスを提供する処理である。
サーバ端末10において、例えば、電源がオンされたこと、又はユーザから入力部12を介して接続認識サービス処理の実行指示が入力されたことをトリガとして、記憶部15から読み出されてRAM13に適宜展開された接続認識サービスプログラム140と、CPU11との協働により、設定処理が実行される。
先ず、外部記憶装置が接続部17に接続開始されたか否かが判別される(ステップS31)。外部記憶装置が接続開始された場合(ステップS31;YES)、接続中の外部記憶装置に設定ファイル400が記憶されているか否かにより、接続中の外部記憶装置が処理対象である(外部記憶装置30A〜30Eである)か否かが判別される(ステップS32)。接続中の外部記憶装置が処理対象でない場合(ステップS32;NO)、ステップS31に移行される。
接続中の外部記憶装置が処理対象である場合(ステップS32;YES)、設定ファイル400から装置設定ファイル330及び処理設定ファイル340が読み出される(ステップS33)。そして、通信部16からMACアドレスが取得され、接続中の外部記憶装置からシリアルNO310が読み出され、取得したMACアドレスと、読み出したシリアルNO310との組合せが、ステップS33で読み出した装置設定ファイル330のシリアルNO331に対応するMACアドレス332として存在するか否かが確認される(ステップS34)。
そして、ステップS33の確認結果に応じて、自機のMACアドレスと、接続中の外部記憶装置のシリアルNO310との組合せが、装置設定ファイル330に存在するか否かが判別される(ステップS35)。MACアドレスとシリアルNO310との組合せが装置設定ファイル330に存在しない場合(ステップS35;NO)、ステップS31に移行される。
MACアドレスとシリアルNO310との組合せが装置設定ファイル330に存在する場合(ステップS35;YES)、このMACアドレスに対応する処理内容が、ステップS33で読み出した処理設定ファイル340のMACアドレス341に対応する処理内容342として記述されているか否かが確認される(ステップS36)。
そして、ステップS36の確認結果に応じて、処理内容342としてデータ同期処理が設定されているか否かが判別される(ステップS37)。データ同期処理が設定されている場合(ステップS37;YES)、データ同期処理が実行され(ステップS38)、ステップS31に移行される。ステップS38のデータ同期処理は、詳細に後述される。
データ同期処理が設定されていない場合(ステップS37;NO)、ステップS36の確認結果に応じて、処理内容342としてメニュー起動処理が設定されているか否かが判別される(ステップS39)。メニュー起動処理が設定されている場合(ステップS39;YES)、メニュー起動処理が実行され(ステップS40)、ステップS31に移行される。メニュー起動処理では、接続中の外部記憶装置から基本アプリケーションプログラム370及びメニュー情報360が読み出され、基本アプリケーションプログラム370の実行により、処理内容342に対応するメニュー情報360のデータを用いたメニュー画面が表示部14に表示され、入力部12によりメニュー選択入力が受け付けられる。
メニュー起動処理が設定されていない場合(ステップS39;NO)、ステップS36の確認結果に応じて、処理内容342として業務アプリケーション起動処理が設定されているか否かが判別される(ステップS41)。業務アプリケーション起動処理は、データ同期処理以外で、業務アプリケーションプログラム380を用いて業務アプリケーションを起動する処理であり、例えば、DB120のための伝票データ入力処理である。また、業務アプリケーションは、例えば、メニュー画面で選択入力されるメニューに対応する処理である。
業務アプリケーション起動処理が設定されている場合(ステップS41;YES)、業務アプリケーション起動処理が実行され(ステップS42)、ステップS31に移行される。業務アプリケーション起動処理が設定されていない場合(ステップS41;NO)、ステップS31に移行される。業務アプリ起動起動処理では、接続中の外部記憶装置から基本アプリケーションプログラム370及び業務アプリケーションプログラム380が読み出され、基本アプリケーションプログラム370及び業務アプリケーションプログラム380の実行により、処理内容342に対応する各種業務アプリケーション起動処理が実行される。
外部記憶装置が接続開始されていない場合(ステップS31;NO)、接続中の外部記憶装置が取り外されるか否かが判別される(ステップS43)。例えば、入力部12により、ユーザからの外部記憶装置の取り外しの指示入力が受け付けられたか否かにより判別される。
外部記憶装置が取り外されない場合(ステップS43;NO)、ステップS31に移行される。外部記憶装置が取り外される場合(ステップS43;YES)、接続中の外部記憶装置に設定ファイル400が記憶されているか否かにより、接続中の外部記憶装置が処理対象であるか否かが判別される(ステップS44)。接続中の外部記憶装置が処理対象でない場合(ステップS44;NO)、ステップS31に移行される。
接続中の外部記憶装置が処理対象である場合(ステップS44;YES)、ステップS42で起動された各種業務アプリケーション(ステップS38のデータ同期処理を含む)が実行中であるか否かが判別される(ステップS45)。業務アプリケーションが実行中でない場合(ステップS45;NO)、ステップS31に移行される。
業務アプリケーションが実行中である場合(ステップS45;YES)、実行中の業務アプリケーションを終了する旨が表示部14に表示され、当該実行中の業務アプリケーションプログラムの実行が終了され(ステップS46)、ステップS31に移行される。
ここで、ステップS38のデータ同期処理を詳細に説明する。図8に示すように、先ず、接続中の外部記憶装置に記憶されたDB350内の前回同期日時が読み出される(ステップS381)。そして、ステップS381で読み出された前回同期日時以降のデータが、同期データとして、接続中の外部記憶装置のDB350から読み出される(ステップS382)。同期データとは、DB350に記憶された伝票データ等の同期対象のデータである。同期データは、DB350のデータ構造と同様に、各ファイル内の項目毎のデータとして読み出される。
そして、ステップS382により読み出された同期データが各ファイルに分けられる(ステップS383)。そして、ステップS383で分けられたファイルのうち、ステップS388で選択されているファイル、又は最初のファイルが、選択中のファイルとして、各レコードに分けられる(ステップS384)。そして、記憶部15に記憶された連番情報110が読み出され、選択中のファイルのレコードのうち、ステップS386で選択されているレコード、又は最初のレコードが、選択中のレコードとして、連番情報110に応じて、該当項目の値が置換される(ステップS385)。選択中のレコードの項目が、文字情報等であり、連番情報110の該当項目でない場合は、変換されない。
そして、選択中のファイルの未選択の次のレコードが選択される(ステップS386)。そして、ステップS386で選択するレコードがないか否かが判別される(ステップS387)。選択するレコードがある場合(ステップS387;NO)、ステップS385に移行される。選択するレコードがない場合(ステップS387;YES)、同期データの未選択の次のファイルが選択される(ステップS388)。そして、ステップS388で選択するファイルがないか否かが判別される(ステップS389)。選択するファイルがある場合(ステップS389;NO)、ステップS384に移行される。
選択するファイルがない場合(ステップS389;YES)、同期データがDB120に追加されて更新され、この更新に応じて、連番情報110が最新の連番情報に更新される(ステップS390)。そして、同期データ追加後のDB120の各ファイルの各レコードが、接続中の外部記憶装置のDB350の各ファイルの各レコードに上書きされる(ステップS391)。
そして、同期データ追加後の連番情報110で、接続中の外部記憶装置の連番情報320が上書きされる(ステップS392)。そして、計時部18から現在日時情報が取得され、その現在日時情報が、DB350内の前回更新日時ファイルに上書きされ(ステップS393)、データ同期処理が終了する。
なお、サーバ端末10で実行される接続認識サービス処理を説明したが、PC端末20A〜20Dでも同様に、接続認識サービスプログラム210に基づいて接続認識サービス処理が実行される。但し、PC端末20A〜20Dでは、DBのデータ同期処理が実行されないので、接続認識サービス処理におけるステップS37及びステップS38が実行されない。
次いで、図9及び図10を参照して、接続認識サービス処理の具体例を説明する。図9(a)に、外部記憶装置30Aが接続されたPC端末20Aにおけるメニュー処理起動時のデータの流れを示す。図9(b)に、外部記憶装置30Dが接続されたPC端末20Dにおける伝票入力処理起動時のデータの流れを示す。図10に、外部記憶装置30Dが接続されたサーバ端末10におけるデータ同期処理実行時のデータの流れを示す。
図9(a)に示すように、PC端末20Aの接続部27に、外部記憶装置30Aが接続される場合を考える。図5(a),(b)の装置設定ファイル330及び処理設定ファイル340に示されるように、PC端末20A及び外部記憶装置30Aの組合せに対応して、処理内容342に、営業担当者aメニュー起動の処理が設定されている。そして、PC端末20Aで接続認識サービス処理が実行される。
PC端末20Aにおいて、ステップS33に対応して外部記憶装置30Aの設定ファイル400が読み出され、ステップS34に対応して通信部26からPC端末20AのMACアドレス501が取得され、ステップS36に対応して取得した情報に応じて処理内容が確認され、ステップS40が実行される。そして、ステップS40に対応して外部記憶装置30Aの基本アプリケーションプログラム370及びメニュー情報360が読み出され、これらの情報を用いて営業担当者a用のメニューが起動される。
また、図9(b)に示すように、PC端末20Dの接続部27に、外部記憶装置30Dが接続される場合を考える。図5(a),(b)の装置設定ファイル330及び処理設定ファイル340に示されるように、PC端末20D及び外部記憶装置30Dの組合せに対応して、売上伝票入力アプリケーション起動の処理が設定されている。そして、PC端末20Dで接続認識サービス処理が実行される。
PC端末20Dにおいて、ステップS33に対応して外部記憶装置30Dの設定ファイル400が読み出され、ステップS34に対応して通信部26からPC端末20DのMACアドレス502が取得され、ステップS36に対応して取得した情報に応じて処理内容が確認され、ステップS42が実行される。そして、ステップS42に対応して外部記憶装置30Dの基本アプリケーションプログラム370及び業務アプリケーションプログラム380が読み出され、これらの情報を用いて、DB350の売上伝票データを更新するための伝票入力担当者d用の業務アプリケーションの一つである売上伝票入力アプリケーションが起動される。売上伝票入力アプリケーションにより、伝票入力担当者dにより売上伝票データが入力され、その入力データがDB350に記憶される。
また、図10に示すように、サーバ端末10の接続部17に、図9(b)で売上伝票データ入力によりDB350が更新された外部記憶装置30Dが接続される場合を考える。図5(a),(b)の装置設定ファイル330及び処理設定ファイル340に示されるように、サーバ端末10及び外部記憶装置30Dの組合せに対応して、データ同期処理が設定されている。そして、サーバ端末10で接続認識サービス処理が実行される。
サーバ端末10において、ステップS33に対応して外部記憶装置30Dの設定ファイル400が読み出され、ステップS34に対応してサーバ端末10のMACアドレス503が取得され、ステップS36に対応して取得した情報に応じて処理内容が確認され、ステップS38が実行される。そして、ステップS38に対応して外部記憶装置30Dの基本アプリケーションプログラム370及び業務アプリケーションプログラム380が読み出され、これらの情報を用いて、伝票入力担当者d用のデータ同期処理が実行される。サーバ端末10において、データ同期処理では、連番情報110に基づいてDB350の同期データの連番が変更され、同期データの内容がDB120に追加され、連番情報110が変更され、そのデータ追加後のDB120でDB350が上書きされ変更後の連番情報110で連番情報320が変更される。
次いで、図11及び図12を参照して、データ同期処理の具体例を説明する。図11(a)に、データ同期処理実行前の外部記憶装置30DのDB350のファイル及び連番情報320を示す。図11(b)に、データ同期処理実行後のサーバ端末10のDB120のファイル及び連番情報110を示す。図12に、データ同期処理実行後の外部記憶装置30DのDB350のファイル及び連番情報320を示す。
予め、外部記憶装置30D,30Eが順にサーバ端末10に接続され、外部記憶装置30D,30Eの各DB350がサーバ端末10のDB120とデータ同期がとられたものとする。そして、外部記憶装置30EがPC端末20Dに接続され、売上伝票データ入力が行われてDB350が更新され、その外部記憶装置30Eがサーバ端末10に接続され、外部記憶装置30EのDB350がサーバ端末10のDB120とデータ同期がとられたものとする。その後、外部記憶装置30DがPC端末20Dに接続されて売上伝票データ入力が行われDB350が更新されたものとする。
このとき、図11(a)に示すように、外部記憶装置30DのDB350に、日時設定ファイル610、ファイルとしての得意先マスタ620、伝票合計630、伝票明細640が記憶されているものとする。データ入力により、得意先マスタ620、伝票合計630、伝票明細640の該当項目の得意先コード、売上伝票番号のレコードは、順に、連番000020、100010まで発番されている。連番情報320の該当項目としての得意先コード、売上伝票番号は、順に、000021、100011(発番+1)にカウントアップされている。但し、図11(a)では、データ入力に応じて、追加、更新されたレコードのみ示されているものとし、図11(b)、図12でも同様とする。
また、サーバ端末10の記憶部15には、上記のような外部記憶装置30Eによるデータ入力及びデータ同期により、更新されたDB120及び連番情報110が記憶されている。このデータ入力及びデータ同期により、DB120の該当項目として得意先コード、売上伝票番号は、順に、000022、100014まで発番されているものとする。このため、連番情報110の該当項目の得意先コード、売上伝票番号は、順に、000023、100015(発番+1)にカウントアップされているものとする。
その後、サーバ端末10で接続認識サービス処理が実行され、外部記憶装置30Dがサーバ端末10に接続され、ステップS42のデータ同期処理が実行されたものとする。サーバ端末10において、ステップS381に対応してDB350から日時設定ファイル610の前回同期日時が読み出される。そして、ステップS382に対応して前回同期日時以降の得意先マスタ620、伝票合計630、伝票明細640のレコードが同期データとしてDB350から読み出される。
そして、ステップS385に対応して、連番情報110に応じて、同期データの得意先マスタ620、伝票合計630、伝票明細640の該当項目としての得意先コード、売上伝票番号は、順に、000023、100015にカウントアップされる。そして、ステップS390に対応して、図12に示すように、サーバ端末10のDB120に同期データが追加され、サーバ端末10のDB120には、得意先マスタ710、伝票合計720、伝票明細730が記憶され、連番情報110が更新される。得意先マスタ710、伝票合計720、伝票明細730の該当項目としての得意先コード、売上伝票番号は、順に、000023、100015にカウントアップされる。また、連番情報110の該当項目としての得意先コード、売上伝票番号は、順に、000024、100016にカウントアップされる。
そして、ステップS391に対応して、DB350のデータ内容が、DB120のデータ内容で上書きされ、図12に示す得意先マスタ620、伝票合計630、伝票明細640に更新される。得意先マスタ620、伝票合計630、伝票明細640の該当項目としての得意先コード、売上伝票番号は、順に、000023、100015にカウントアップされる。
そして、ステップS392に対応して、連番情報110に応じて、図12に示す連番情報320が更新される。連番情報320の該当項目としての得意先コード、売上伝票番号は、順に、000024、100016にカウントアップされる。そして、ステップS393に対応して、DB350の日時設定ファイル610の前回同期日時が、計時部18からの現在日時情報に更新される。
以上、本実施の形態によれば、サーバ端末10は、外部記憶装置30A〜30Eが接続されると、接続中の外部記憶装置から装置設定ファイル330、処理設定ファイル340、及びシリアルNOを取得し、通信部16からMACアドレスを取得し、取得したシリアルNO及びMACアドレスの組合せが装置設定ファイル330に含まれる(存在する)か否かを判別する。サーバ端末10は、その組合せが存在する場合に、このMACアドレスに対応する処理内容を処理設定ファイル340から取得し、この処理内容に応じて接続中の外部記憶装置にアクセスしてメニュー起動、業務アプリケーション起動又はデータ同期処理を行う。例えば、取得した処理内容がメニュー起動処理である場合に、接続中の外部記憶装置から基本アプリケーションプログラム370及びメニュー情報360が読み出され、基本アプリケーションプログラム370が実行され、メニュー情報360を用いてメニュー画面が表示部14に表示される。データ同期処理以外は、PC端末20A〜20Dでも同様である。
このため、装置設定ファイル330により、外部記憶装置30A〜30Eに対して、各外部記憶装置にアクセス許可されたサーバ端末10、PC端末20A〜20Dがアクセスできる。また、外部記憶装置30A〜30Eに記憶された情報を別の外部記憶装置にコピーしても第三者がコピー先の外部記憶装置へアクセスができないため、外部記憶装置の不正コピーを防止できる。また、外部記憶装置30A〜30Eに同じ情報(連番情報320、設定ファイル400、メニュー情報360、基本アプリケーションプログラム370、業務アプリケーションプログラム380、装置設定ファイル330)を記憶すればよいため、ユーザによる外部記憶装置30A〜30Eへの情報記憶の作業負担を低減できる。
また、サーバ端末10、PC20A〜20Dにおいて、処理設定ファイル340により、MACアドレス341(サーバ端末10、PC端末20A〜20D)毎に、接続中の外部記憶装置の異なる情報へのアクセスを伴う処理内容342のデータ処理を実行できる。
また、サーバ端末10は、設定処理により、接続された外部記憶装置30A〜30Eから取得されたシリアルNO310、及び入力部12により入力された外部記憶装置30A〜30Eにアクセスが許可されたサーバ端末10、PC端末20A〜20DのMACアドレスの組合せと、入力部12により入力された複数のMACアドレス、及びサーバ端末10、PC端末20A〜20Dに実行が許可された複数の処理内容の組合せと、の入力を受け付ける。そして、サーバ端末10は、前記入力された複数のシリアルNO及び複数のMACアドレスの組合せから装置設定ファイル330を生成し、前記入力された複数のMACアドレス及び複数の処理内容の組合せから処理設定ファイル340を生成して外部記憶装置30A〜30Eに記憶する。このため、設定ファイル400を容易に生成できて、外部記憶装置30A〜30Eに記憶できる。
また、サーバ端末10は、データ同期処理により、外部記憶装置30Dが接続された場合に、連番情報110に応じてDB350の前回同期日時以降の同期データの該当項目のレコードの連番を更新し、DB120に同期データを追加して更新し、DB120の更新に応じて連番情報110を更新し、DB350をDB120のデータ内容で上書きし、連番情報110に応じて連番情報320を更新する。このため、ユーザがデータの重複の確認をすることなく、外部記憶装置30DのDB350及び連番情報320と、サーバ端末10のDB120及び連番情報110と、を容易且つ確実に同期させることができる。
なお、上記実施の形態における記述は、本発明に係るデータ処理装置及びプログラムの一例であり、これに限定されるものではない。
例えば、上記実施の形態では、外部記憶装置30A〜30Eに、設定ファイル400として装置設定ファイル330及び処理設定ファイル340を記憶する構成としたが、これに限定されるものではない。例えば、設定ファイル400として装置設定ファイル330のみを記憶する構成してもよい。この場合にも、装置設定ファイル330により、外部記憶装置30A〜30Eに対して、各外部記憶装置にアクセス許可されたサーバ端末10、PC端末20A〜20Dがアクセスできるとともに、外部記憶装置の不正コピーを防止できる。さらに、外部記憶装置30A〜30Eで、同一の装置設定ファイル330を記憶すればよいため、外部記憶装置30A〜30Eへの情報記憶の作業負担を低減できる。特に、アクセス対象のプログラム及びデータを同一とすれば、外部記憶装置30A〜30Eに同じ情報を記憶すればよいため、ユーザによる外部記憶装置30A〜30Eへの情報記憶の作業負担をさらに低減できる。
また、外部記憶装置30A〜30Eに記憶されるアクセス対象の情報は、プログラム及びデータの少なくとも一つとしてもよい。また、設定処理において、サーバ端末10のCPU11は、設定ファイル400と、DB350等のアクセス対象の情報と、の少なくとも一つを暗号化して外部記憶装置30A〜30Eに記憶することが好ましい。さらに、外部記憶装置30A〜30Eに記憶する情報全てを暗号化する構成としてもよい。サーバ端末10、PC端末20A〜20Dにおいて、外部記憶装置30A〜30Eから暗号化された情報を読み出す場合には、復号化が行われる。
また、設定処理は、サーバ端末10で実行される構成としたが、PC20A〜20Dで実行される構成としてもよい。
また、上記実施の形態では、接続部17又は27に、外部記憶装置が同時に1台接続されるものとしたが、これに限定されるものではなく、同時に複数台接続される構成としてもよい。特に、データ同期処理において、外部記憶装置を同時に複数台同期する場合に、データを入力した日時の順に連番を再割り当てすることで、連番と、データ入力日時との順序を合致させることができる。
また、上記実施の形態では、処理設定ファイル340において、一つのMACアドレス341に一つの処理内容342を対応させる構成としたが、これに限定されるものではなく、一つのMACアドレスに複数の処理の処理内容を対応させる構成としてもよい。また、MACアドレスに処理のパラメータを対応させる構成としてもよい。例えば、データ同期処理において、同期するDBの種類や範囲等を、端末毎や、外部記憶装置毎に設定できるようにすることによって、必要なデータのみの同期を行わせることが可能となる。
また、上記実施の形態の説明では、本発明に係るプログラムのコンピュータ読み取り可能な媒体として記憶部15,25を使用した例を開示したが、この例に限定されない。
その他のコンピュータ読み取り可能な媒体として、フラッシュメモリ等の不揮発性メモリ、CD-ROM等の可搬型記録媒体を適用することが可能である。
また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も本発明に適用される。
また、上記実施の形態における、データ処理システム1の各構成要素の細部構成及び細部動作に関しては、本発明の趣旨を逸脱することのない範囲で適宜変更可能であることは勿論である。