JP3615150B2 - データ処理サーバ及び方法並びにデータ処理プログラムを記録した記録媒体 - Google Patents

データ処理サーバ及び方法並びにデータ処理プログラムを記録した記録媒体 Download PDF

Info

Publication number
JP3615150B2
JP3615150B2 JP2001023005A JP2001023005A JP3615150B2 JP 3615150 B2 JP3615150 B2 JP 3615150B2 JP 2001023005 A JP2001023005 A JP 2001023005A JP 2001023005 A JP2001023005 A JP 2001023005A JP 3615150 B2 JP3615150 B2 JP 3615150B2
Authority
JP
Japan
Prior art keywords
record
recorded
data
value
received
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001023005A
Other languages
English (en)
Other versions
JP2002229833A (ja
Inventor
忠志 川野辺
Original Assignee
株式会社オービック
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社オービック filed Critical 株式会社オービック
Priority to JP2001023005A priority Critical patent/JP3615150B2/ja
Publication of JP2002229833A publication Critical patent/JP2002229833A/ja
Application granted granted Critical
Publication of JP3615150B2 publication Critical patent/JP3615150B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データを処理するためのデータ処理方法に関し、さらに、そのようなデータ処理方法を用いるデータ処理サーバ、及び、データ処理プログラムを記録した記録媒体に関する。
【0002】
【従来の技術】
従来より、種々のデータをレコードとして格納し、レコードに対して各種の操作等を行うデータベースシステムが用いられている。
このようなデータベースシステムに格納されたあるレコードに対して、複数のユーザが重複して更新する場合がある。例えば、あるレコードに対して、第1のユーザが読み出し操作を行い、第2のユーザが読み出し操作を行い、第1のユーザが更新操作を行い、第2のユーザが更新操作を行う場合である。この場合には、第1のユーザの更新操作の結果が、第2のユーザの更新操作の結果によって上書きされ、失われてしまうこととなる。
【0003】
このような同一レコードに対する複数のユーザの重複更新を防止するため、従来のデータベースシステムにおいて、レコードロック、ページロック、テーブルロック、データベースロック等を含むロック法等の排他制御が行われていた。
しかしながら、従来のロック法は、多くの計算時間(処理時間)を必要とする。また、あるレコードがレコードロックされている場合に、所定の条件(例えば、更新ページが所定数を超える等)を満たすことによりレコードロックからテーブルロック等に移行し(ロックエスカレーション)、ひいては他のデータベース操作との間でデッドロックを招く場合があった。更に、あるユーザの操作によってロックされているレコードに対し、他のユーザが更新操作のみならず読み出し操作をも行うことができない場合があった。
【0004】
一方、上記のようなデータベースシステムが、企業等の会計業務に用いられている。このようにデータベースシステムが会計業務に用いられている場合に、企業等の第k期会計期間から第(k+1)期会計期間への移行時から所定の期間(一般に、会計期間の移行時から数日〜十数日程度)において、多数の伝票データ(第k期会計期間の伝票データと第(k+1)期会計期間の伝票データとの双方を含む)の入力、決算処理等が集中し、円滑な会計業務を遂行できない場合があった。
【0005】
そのため、従来のデータベースシステムを用いた会計業務では、会計期間の移行時から所定の期間内における伝票データの入力を一切禁止し、第k期会計期間の決算処理が終了した後に伝票データの入力を再開するか、又は会計期間の移行時から所定の期間内に入力された伝票データを仮の記録領域に記録しておき、第k期会計期間の決算処理が終了した後に仮の記録領域に記録されていた伝票データを会計業務用の記録領域に転送していた。
【0006】
【発明が解決しようとする課題】
そこで、上記の点に鑑み、本発明は、同一レコードに対する複数ユーザの重複読み出しを可能にしつつ、重複更新を防止することができるデータ処理サーバ及びデータ処理方法、並びにデータ処理プログラムを記録した記録媒体を提供することを目的とする。また、本発明は、データの入力とデータに対する処理を並行して行うことができるデータ処理サーバ及びデータ処理方法、並びにデータ処理プログラムを記録した記録媒体を提供することを更なる目的とする。
【0007】
【課題を解決するための手段】
以上の課題を解決するため、本発明の第1の観点に係るデータ処理サーバは、複数の装置と通信することによりデータを処理するサーバであって、複数のレコードを記録する記録手段と、所定の起算日から現在までの累積日数を計数してその値を出力する累積日数計数手段と、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、累積日数計数手段が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するナンバー生成手段と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録手段に書き込むレコード作成手段と、複数の装置の内のいずれかの装置から記録手段に記録されたレコードを読み出す旨の要求を受信した場合に、要求されたレコードを記録手段から読み出して装置に出力するレコード読出し手段と、複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと記録手段に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと記録手段に記録されている更新対象のレコード内のナンバーとが一致する場合に、ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーをナンバー生成手段から出力されたナンバーで置き換えたレコードを記録手段に書き込むレコード更新手段とを具備する。
【0008】
また、本発明の第2の観点に係るデータ処理サーバは、複数の装置と通信することによりデータを処理するサーバであって、複数のレコードを記録する記録手段と、所定の起算日から現在までの累積日数を計数してその値を出力する累積日数計数手段と、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、累積日数計数手段が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成して出力するナンバー生成手段と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録手段に書き込むレコード作成手段と、記録手段に記録されているレコードの内で複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行うレコード処理手段とを具備する。
【0009】
また、本発明の第1の観点に係るデータ処理方法は、複数の装置と通信することによりデータを処理する方法であって、所定の起算日から現在までの累積日数を計数してその値を出力するステップ(a)と、ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、ステップ(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップ()と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に記録するステップ()と、複数の装置の内のいずれかの装置からレコードを読み出す旨の要求を受信した場合に、要求されたレコードを記録媒体から読み出して装置に出力するステップ()と、複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーをナンバー生成手段から出力されたナンバーで置き換えたレコードを記録媒体に書き込むステップ()とを具備する。
【0010】
また、本発明の第2の観点に係るデータ処理方法は、複数の装置と通信することによりデータを処理する方法であって、所定の起算日から現在までの累積日数を計数してその値を出力するステップ(a)と、ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、ステップ(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップ()と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に書き込むステップ()と、記録媒体に記録されているレコードの内で複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行うステップ()とを具備する。
【0011】
また、本発明の第1の観点に係るデータ処理プログラムを記録した記録媒体は、複数の装置と通信することによりデータを処理するためにCPUで読み取り可能な記録媒体であって、所定の起算日から現在までの累積日数を計数してその値を出力する手順(a)と、ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、手順(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成する手順()と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に記録する手順()と、複数の装置の内のいずれかの装置からレコードを読み出す旨の要求を受信した場合に、要求されたレコードを記録媒体から読み出して装置に出力する手順()と、複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーをナンバー生成手段から出力されたナンバーで置き換えたレコードを記録媒体に書き込む手順()とをCPUに実行させる。
【0012】
また、本発明の第2の観点に係るデータ処理プログラムを記録した記録媒体は、複数の装置と通信することによりデータを処理するためにCPUで読み取り可能な記録媒体であって、所定の起算日から現在までの累積日数を計数してその値を出力する手順(a)と、ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、手順(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成する手順()と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に書き込む手順()と、記録媒体に記録されているレコードの内で複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行う手順()とをCPUに実行させる。
【0013】
本発明の第1の観点によれば、データが編集されたレコード内のナンバーと更新対象レコード内のナンバーとが一致する場合にのみレコードを更新するので、同一レコードに対する複数ユーザの重複読み出しを可能にしつつ、重複更新を防止することができる。また、本発明の第2の観点によれば、複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを含むレコードにのみ集計処理を行うので、データの入力とデータに対する処理とを並行して行うことができる。
【0014】
【発明の実施の形態】
以下、図面に基づいて本発明の実施の形態について説明する。なお、同一の構成要素には同一の参照番号を付して説明を省略する。
まず、本発明の第1の実施形態に係るデータ処理方法について説明する。図1は、本発明の第1の実施形態に係るデータ処理方法を実施するためのシステムを示す図である。
図1に示すように、このシステム1は、クライアント端末11〜1nと、サーバ21とを備えている。
クライアント端末11〜1n及びサーバ21は、LAN、公衆回線網、インターネット等のネットワーク31によって相互に接続されている。
クライアント端末11〜1nは、ユーザがサーバ21を利用するためのPC等である。
【0015】
図2は、サーバ21を示す図である。図2に示すように、サーバ21は、システムデート管理部22と、システムイベントナンバー生成部23と、レコード作成部24と、レコード読出し部25と、レコード更新部26と、記録媒体27とを含んでいる。
システムデート管理部22は、サーバ21のシステムデートの管理を行い、所定の起算日を”00001”とした場合のシステムデートまでの日数(以下、「累積日数」ともいう)をカウントし、その数値を出力する。例えば、1999年1月1日が起算日であり、システムデートが2001年1月1日である場合には、累積日数は731日となり、システムデート管理部22は”00731”を出力する。
【0016】
システムイベントナンバー生成部23は、レコード作成部24及びレコード更新部26からの要求に応じて、18桁の数であるSEN(システムイベントナンバー、以下においては単に「ナンバー」ともいう)を生成して出力する。また、システムイベントナンバー生成部23は、生成したナンバーを所定時に記録媒体27に書き込む。
ここで、ナンバーについて詳しく説明する。図3は、ナンバーのフォーマットを示す図である。図3に示すように、ナンバーは、上位5桁(D)、中位4桁(S)、及び、下位9桁(C)を結合した数である。
【0017】
ナンバーの上位5桁(D)は、このナンバーが生成された日の累積日数を示す数値である。従って、システムイベントナンバー生成部23は、起算日から99,999日目まで、即ち起算日から約270年後まで、ナンバーを生成することができる。
【0018】
ナンバーの下位9桁(C)は、ナンバー生成要求毎にインクリメントされた数である。なお、ナンバーの下位9桁(C)からキャリーが発生した場合には、そのキャリーがナンバーの中位4桁(S)に伝搬される。
【0019】
ナンバーの中位4桁(S)は、原則として、サーバ21が同一日内でリブート(停電、故障等によりサーバ21が停止し、その後再起動した場合等を含む)された回数とナンバーの下位9桁(C)からのキャリーとの和である。但し、後にナンバー生成処理の説明において述べるように、ナンバーの中位4桁(S)は、システムデート管理部22によって管理されているシステムデートが正しい日付よりも古い日付に誤設定されている状態でサーバ21が起動又はリブートされた場合には、インクリメントされる。従って、システムイベントナンバー生成部23は、サーバ21が同一日内でリブートされた回数と、システムデートが古い日付に誤設定されている状態でサーバ21が起動又はリブートされた回数と、下位9桁(C)からのキャリーとの合計が9,999となるまで、ナンバーを生成することができる。
【0020】
なお、システムイベントナンバー生成部23は、サーバ21が同一日内に一度もリブートされていない場合には、中位4桁(S)と下位9桁(C)を合わせて、同一日内に9,999,999,999,999回までナンバーを生成できることとなる。
一方、動作周波数が600MHzのCPUとソフトウェアとを用いてナンバーを生成するために必要な時間を実測したところ、10,000回のナンバー生成処理に0.7秒の時間が必要であった。すなわち、ナンバー生成1回当たり0.00007秒の時間が必要であった。
【0021】
従って、9,999,999,999,999回のナンバー生成処理には、0.00007(秒/回)に9,999,999,999,999(回)を乗じた約7億秒(約8100日)が必要となる。更に、ナンバーの生成とともに各種のデータベース操作処理を行うことをも考慮すると、ナンバーは実用上十分な桁数を有することとなる。また、上記したように、サーバ21が同一日内にリブートされ又はシステムデートが古い日付に誤設定されている状態でリブートされた場合には、ナンバーの中位4桁(S)がインクリメントされるため、同一日内にナンバーを生成することができる回数が1,000,000,000回ずつ減って行くことになる。しかし、このような事態を考慮しても、ナンバーは実用上十分な桁数を有すると考えられる。
【0022】
レコード作成部24は、クライアント端末11〜1nからデータを受信し、受信したデータ及びナンバーを含むレコードを新規レコードとして記録媒体27内のデータベースに書き込む。
レコード読出し部25は、クライアント端末11〜1nからの要求に応じて、記録媒体27内のデータベースからレコードを読み出して出力する。
レコード更新部26は、クライアント端末11〜1nからレコードを受信し、受信したレコード内のナンバーと記録媒体27内の更新対象レコード内のナンバーとが一致する場合に、受信したレコードによって記録媒体27内のデータベースに格納されている更新対象レコードを更新(上書き)する。
【0023】
記録媒体27は、データベース、システムイベントナンバー生成部23によって生成されたナンバー等を記録する。記録媒体27としては、ハードディスク、フロッピーディスク、MO、MT、RAM、CD−ROM、DVD−ROM等が該当する。
なお、図2に示すシステムデート管理部22、システムイベントナンバー生成部23、レコード作成部24、レコード読出し部25、及び、レコード更新部26は、CPUとソフトウェア(プログラム)で構成することができる。このプログラムと、各種データベース及びアプリケーションデータファイルの各々は、ハードディスク、フロッピーディスク、MO、MT、RAM、CD−ROM、又は、DVD−ROM等の記録媒体に記録することができる。
【0024】
次に、サーバ21の動作について説明する。
まず、レコード作成部24、レコード読出し部25、及び、レコード更新部26によるレコード操作の説明に先だって、システムイベントナンバー生成部23の動作について説明する。
図4は、システムイベントナンバー生成部23の起動処理動作の概要を示すフローチャートである。以下、システムイベントナンバー生成部23の起動処理動作について、図4を参照しながら説明する。
【0025】
サーバ21が起動又はリブートされると、システムイベントナンバー生成部23は、図4の処理を開始する。
図4の処理を開始すると、システムイベントナンバー生成部23は、記録媒体27に記録されているナンバーを読み出す(ステップS101)。
【0026】
次に、システムイベントナンバー生成部23は、ステップS101にて読み出したナンバー(以下、「最終記録ナンバー」ともいう)の上位5桁(D)がシステムデート管理部22によって管理されている現在の累積日数の数値以上であるか否か、即ち最終記録ナンバーを記録した日と同一日内にリブートされ又はシステムデート管理部22によって管理されているシステムデートが古い日付に誤設定されているか否かをチェックする。そして、システムイベントナンバー生成部23は、最終記録ナンバーの上位5桁(D)が現在の累積日数より小さければ処理をステップS103に移し、最終記録ナンバーの上位5桁(D)が現在の累積日数以上であれば処理をステップS104に移す(ステップS102)。
【0027】
ステップS102にて最終記録ナンバーの上位5桁(D)が現在の累積日数より小さいと判断した場合、即ち最終記録ナンバーを記録した日と同一日内にリブートされておらず且つシステムデートが誤設定されていないと判断した場合には、システムイベントナンバー生成部23は、起動時の初期値として新規に生成しようとするナンバー(以下、「起動時ナンバー」ともいう)の上位5桁(D)を現在の累積日数の数値に、中位4桁(S)を”0000”に、それぞれ設定する(ステップS103)。
【0028】
一方、ステップS102にて最終記録ナンバーの上位5桁(D)が現在の累積日数以上であると判断した場合、即ち最終記録ナンバーを記録した日と同一日内にリブートされ又はシステムデートが古い日付に誤設定されていると判断した場合には、システムイベントナンバー生成部23は、起動時ナンバーの上位5桁(D)を最終記録ナンバーの上位5桁(D)と同じ値に、起動時ナンバーの中位4桁(S)を最終記録ナンバーの中位4桁(S)をインクリメントした値に、それぞれ設定する(ステップS104)。
【0029】
次に、システムイベントナンバー生成部23は、起動時ナンバーの下位9桁(C)を”000000000”に設定する(ステップS105)。そして、システムイベントナンバー生成部23は、起動時ナンバーを記録媒体27に書き込む(ステップS106)。このようにシステムイベントナンバー生成部23が起動時ナンバーを記録媒体27に書き込むことにより、起動時ナンバーが新たな最終記録ナンバーとなる。なお、システムイベントナンバー生成部23が、記録媒体27ではなく、EEPROM等にナンバーを記録するようにしても良い。
【0030】
このように、最終記録ナンバーを記録した日と同一日内にリブートされ又はシステムデートが誤って古い日付に設定されている場合であっても、起動時ナンバーの中位4桁(S)を最終記録ナンバーの中位4桁(S)をインクリメントした値に設定することにより、最終記録ナンバーより大きな数値である起動時ナンバーを生成することができる。
【0031】
次に、レコード作成部24又はレコード更新部26からナンバー生成要求を受けた場合のシステムイベントナンバー生成部22の動作について説明する。図5は、システムイベントナンバー生成部23のナンバー生成処理動作の概要を示すフローチャートである。以下、システムイベントナンバー生成部23のナンバー生成処理動作について、図5を参照しながら説明する。
【0032】
レコード作成部24又はレコード更新部26からナンバー生成要求を受けると、システムイベントナンバー生成部23は、図5の処理を開始する。
まず、システムイベントナンバー生成部23は、前回生成したナンバー(サーバ21の起動後最初にナンバー生成要求を受けた場合には、起動時ナンバーが該当する。以下、「前回ナンバー」ともいう)の下位9桁(C)が”999999999”であるか否か、即ち前回ナンバーの下位9桁(C)をインクリメントするとキャリーが発生するか否かをチェックし、前回ナンバーの下位9桁(C)が”999999999”であれば処理をステップS112に移し、そうでなければ処理をステップS115に移す(ステップS111)。
【0033】
ステップS111にて前回ナンバーの下位9桁(C)が”999999999”であると判断した場合、即ち前回ナンバーの下位9桁(C)をインクリメントするとキャリーが発生すると判断した場合には、システムイベントナンバー生成部23は、更に前回ナンバーの中位4桁(S)が”9999”であるか否か、即ち前回ナンバーの下位9桁(C)からのキャリーを加算すると前回ナンバーの中位4桁(S)が桁あふれを発生するか否かをチェックする。そして、システムイベントナンバー生成部23は、前回ナンバーの中位4桁(S)が”9999”でなければ処理をステップS113に移し、前回ナンバーの中位4桁(S)が”9999”であれば処理をステップS116に移す(ステップS112)。
【0034】
ステップS112にて前回ナンバーの中位4桁(S)が”9999”でないと判断した場合には、システムイベントナンバー生成部23は、新規に生成しようとするナンバー(以下、「新規生成ナンバー」ともいう)の中位4桁(S)を前回ナンバーの中位4桁(S)をインクリメント(前回ナンバーの下位9桁(C)からのキャリーの加算に相当)した値に、新規生成ナンバーの下位9桁(C)を”000000000“に、それぞれ設定する(ステップS113)。更に、システムイベントナンバー生成部23は、この時点における新規生成ナンバーを記録媒体27に書き込む(ステップS114)。システムイベントナンバー生成部23がこの時点における新規生成ナンバーを記録媒体27に書き込むことにより、この時点における新規生成ナンバーが新たな最終記録ナンバーとなる。
【0035】
ステップS111にて前回ナンバーの下位9桁(C)が”999999999”ではないと判断した場合、又はステップS114の処理を終了した場合には、システムイベントナンバー生成部23は、新規生成ナンバーの下位9桁(C)をインクリメントし、この新規生成ナンバーをナンバー生成を要求したレコード作成部24又はレコード更新部26に出力する(ステップS115)。
【0036】
一方、ステップS112にて前回ナンバーの中位4桁(S)が”9999”であると判断した場合には、システムイベントナンバー生成部23は、新規ナンバーの生成を停止し、処理を終了する(ステップS116)。この場合には、サーバ21がオペレータに警告文を表示するようにしても良い。
なお、ステップS116の処理が実行される場合とは、システムイベントナンバー生成部23が、ステップS111にて前回ナンバーの下位9桁(C)が”999999999”であると判断し、且つステップS112にて前回ナンバーの中位4桁(S)が”9999”であると判断した場合である。しかしながら、先に説明したように、同一日内に9,999,999,999,999回を超えるナンバー生成要求があることは、実用上殆どないものと考えられる。
【0037】
以上説明したように、システムイベントナンバー生成部23は、サーバ21の同一日内のリブート及びシステムデートが古い日付に誤設定されている状態での起動(リブートを含む)をも考慮した上で、前回ナンバーより大きな数値であるという条件を必ず満たす新規ナンバーを生成することができる。また、システムイベントナンバー生成部23は、ナンバーを生成する毎ではなく、新規生成ナンバーの中位4桁(S)がインクリメントされた場合にのみ新規生成ナンバーを記録媒体27に書き込むので、新規生成ナンバーの記録媒体27への書き込みのオーバーヘッドを小さくすることができる。
【0038】
次に、サーバ21のレコード作成部24の動作について説明する。図6は、レコード作成部24のレコード作成動作の概要を示すフローチャートである。以下、レコード作成部24のレコード作成動作について、図6を参照しながら説明する。
【0039】
まず、クライアント端末11〜1nが、新規なレコードのためのデータをサーバ21に送信し、サーバ21のレコード作成部24が、データを受信する(ステップS201)。
次に、レコード作成部24は、システムイベントナンバー生成部23にナンバーの生成を要求する(ステップS202)。システムイベントナンバー生成部23は、レコード作成部24からナンバー生成要求を受けると、ナンバーを生成し、レコード作成部24に送信する。
レコード作成部24は、システムイベントナンバー生成部23からナンバーを受信すると、クライアント端末11〜1nから受信したデータ及びシステムイベントナンバー生成部23から受信したナンバーを含むレコードを作成し、記録媒体27内のデータベースに格納する(ステップS204)。
このように、ナンバーを含むレコードを作成し、データベースに格納することができる。
【0040】
次に、サーバ21のレコード読出し部25の動作について説明する。図7は、レコード読出し部25のレコード読み出し動作の概要を示すフローチャートである。以下、レコード読出し部25のレコード読み出し動作について、図7を参照しながら説明する。
【0041】
まず、クライアント端末11〜1nが、所望のレコードを読み出すことをサーバ21に要求し、サーバ21のレコード読出し部25が、レコードの読み出し要求を受信する(ステップS301)。
次に、レコード読出し部25は、クライアント端末11〜1nから要求されたレコードを記録媒体27内のデータベースから検索し、読み出す(ステップS302)。
レコード読出し部25は、読み出したレコードをクライアント端末11〜1nに送信する(ステップS303)。なお、クライアント端末11〜1nが、受信したレコード内のナンバーを表示しないようにすることができ、ユーザが、レコード内のナンバーを編集できないようにすることができる。
【0042】
次に、サーバ21のレコード更新部26の動作について説明する。図8は、レコード更新部26のレコード更新動作の概要を示すフローチャートである。以下、レコード更新部26のレコード更新動作について、図7を参照しながら説明する。
【0043】
まず、クライアント端末11〜1nが、データを編集したレコードをサーバ21に送信し、サーバ21のレコード更新部26が、データを編集したレコードを受信する(ステップS401)。
次に、レコード更新部26は、クライアント端末11〜1nから受信したレコード内のナンバーと記録媒体27内のデータベースに格納されている更新対象レコード内のナンバーとを比較する。そして、レコード更新部26は、クライアント端末11〜1nから受信したレコード内のナンバーと記録媒体27内のデータベースに格納されている更新対象レコード内のナンバーとが一致する場合には処理をステップS403に移し、一致しない場合には処理をステップS406に移す(ステップS402)。
【0044】
ステップS402にてクライアント端末11〜1nから受信したレコード内のナンバーとデータベースに格納されている更新対象レコード内のナンバーとが一致すると判断した場合には、レコード更新部26は、システムイベントナンバー生成部23にナンバーの生成を要求する(ステップS403)。システムイベントナンバー生成部23は、レコード更新部26からナンバー生成要求を受けると、ナンバーを生成し、レコード更新部26に送信する。
【0045】
次に、レコード更新部26は、クライアント端末11〜1nから受信したレコード内のナンバーをシステムイベントナンバー生成部23から受信したナンバーで置き換える。そして、レコード更新部26は、ナンバーを置き換えたレコードを記録媒体27内のデータベースの更新対象レコードが格納されている箇所に格納することにより、データベース内の更新対象レコードを更新する(ステップS405)。
【0046】
一方、ステップS402にてクライアント端末11〜1nから受信したレコード内のナンバーとデータベースに格納されている更新対象レコード内のナンバーとが一致しないと判断した場合には、レコード更新部26は、記録媒体27内のデータベースに格納されている更新対象レコードの更新をせず、その旨を通知する警告文をクライアント端末11〜1nに送信する(ステップS406)。
このように、レコード更新部26が、クライアント端末11〜1nから受信したレコード内のナンバーとデータベースに格納されている更新対象レコード内のナンバーとが一致する場合にのみ、更新対象レコード内のナンバーを新規生成ナンバーで置き換えて更新することができる。
【0047】
次に、本実施形態に係るデータ処理方法を用いた実施例について説明する。本実施例は、本実施形態に係るデータ処理方法を社員データベース処理に適用したものである。なお、本実施例において、全てのデータベース操作は、起算日当日に行われるものとする。
本実施例において、サーバ21の記録媒体27には、社員に対する手当金を管理する社員データベースのスキーマが構築されている。この社員データベースは、社員名、手当金、及び、ナンバーの3つのカラムを有する。
【0048】
まず、第1のユーザが社員データベース内にレコードを作成する場合のクライアント端末11及びサーバ21の動作について、図9のフローチャートを参照しながら説明する。なお、第1のユーザはクライアント端末11を使用するものとする。
第1のユーザが、社員名及び手当金を含むデータ(4社員分)をクライアント端末11に入力し、クライアント端末11が、社員名及び手当金を含むデータ(4社員分)をサーバ21に送信する(ステップS501)。
【0049】
サーバ21は、クライアント端末11から社員名及び手当金を含むデータ(4社員分)を受信すると、4つのナンバーを生成し、それぞれのデータにナンバーを付加したレコード41〜44を作成し、社員データベースに格納する(ステップS601)。図10(a)は、このようにして4つのレコードが格納された社員データベース40を示す図である。図10(a)に示すように、レコード41には、“000010000000000001”という値のナンバーが含まれている。この値は、このナンバーが起算日当日に生成され、サーバ21が起算日当日に一度もリブートされておらず、このナンバーが起算日当日に生成された最初のナンバーであることを示している。
【0050】
次に、第2及び第3のユーザがこの社員データベース内のレコード41を重複して更新しようとする場合のクライアント端末12及び13並びにサーバ21の動作について、図11のフローチャートを参照しながら説明する。なお、第2のユーザはクライアント端末12を使用し、第3のユーザはクライアント端末13を使用するものとする。
まず、第2のユーザが、レコード41の読み出しを要求し、クライアント端末12が、レコード41の読み出し要求をサーバ21に送信する(ステップS711)。
【0051】
サーバ21は、クライアント端末12からレコード41の読み出し要求を受信すると、社員データベース40からレコード41を読み出して、クライアント端末12に送信する(ステップS611)。クライアント端末12は、サーバ21からレコード41を受信し、表示する。
次に、第2のユーザが、表示されたレコード41内の所望のデータを編集する(ステップS712)。ここでは、第2のユーザが、レコード41内の手当金の金額を50,000円から55,000円に編集するものとする。図10(b)は、第2のユーザがレコード41を編集した結果であるレコード45を示す図である。
【0052】
一方、この時、第3のユーザが、レコード41の読み出しを要求し、クライアント端末13が、レコード41の読み出し要求をサーバ21に送信する(ステップS811)。
サーバ21は、クライアント端末13からレコード41の読み出し要求を受信すると、社員データベース40からレコード41を読み出して、クライアント端末13に送信する(ステップS612)。クライアント端末13は、サーバ21からレコード41を受信し、表示する。
次に、第3のユーザは、表示されたレコード41内の所望のデータを編集する(ステップS812)。ここでは、第3のユーザが、レコード41内の手当金の金額を50,000円から57,000円に編集するものとする。図10(c)は、第2のユーザがレコード41を編集した結果であるレコード46を示す図である。
【0053】
他方、第2のユーザが、編集したレコード45の送信を要求し、クライアント端末12が、レコード45をサーバ21に送信する(ステップS713)。
サーバ21は、クライアント端末12からレコード45を受信すると、レコード45のナンバーと社員データベース40に格納されているレコード41のナンバーとが一致することを確認した後、新しいナンバーを生成する。本実施例では、新しいナンバーは、“000010000000000005”となる。そして、サーバ21は、レコード45のナンバーを新しいナンバーで置き換え、レコード45を社員データベース40に格納する(ステップS613)。図10(d)は、レコード45を格納した後の社員データベース40を示す図である。
【0054】
一方、第3のユーザが、編集したレコード46の送信を要求し、クライアント端末13が、レコード46をサーバ21に送信する(ステップS813)。
サーバ21は、クライアント端末13からレコード46を受信すると、レコード46のナンバーと社員データベース40に格納されているレコード45のナンバーとを比較する。しかし、本実施例においては、レコード45は既に第2のユーザによって更新されており、レコード45のナンバーとレコード46のナンバーは一致しない。そのため、サーバ21は、レコード46を社員データベースに格納せず、その旨を示す警告メッセージをクライアント端末13に送信する(ステップS614)。
クライアント端末13は、サーバ21から受信した警告メッセージを表示する(ステップS814)。
【0055】
このように、クライアント端末12及び13から受信したレコード内のナンバーと社員データベース40に格納されているレコード内のナンバーを比較し、一致する場合にのみレコードを更新するので、同一のレコードに対する第2及び第3のユーザの重複した更新を防止することができる。
【0056】
次に、本発明の第2の実施形態に係るデータ処理方法について説明する。
図12は、本実施形態に係るデータ処理方法を実施するためのシステムを示す図である。
図12に示すように、このシステム2は、クライアント端末11〜1nと、サーバ51とを備えている。
クライアント端末11〜1n及びサーバ51は、ネットワーク31によって相互に接続されている。
【0057】
図13は、サーバ51を示す図である。図13に示すように、サーバ51は、システムデート管理部22と、システムイベントナンバー生成部23と、レコード作成部24と、レコード読出し部25と、レコード更新部26と、記録媒体27と、レコード処理部52とを含んでいる。
レコード処理部52は、記録媒体27内のデータベースに格納されたレコードに対して所定の処理を行う。
【0058】
次に、レコード処理部52の動作について説明する。図14は、レコード処理部52のレコード処理動作の概要を示すフローチャートである。以下、レコード処理部52のレコード読み出し動作について、図14を参照しながら説明する。
【0059】
まず、レコード処理部52は、所定のデータを含むレコードを記録媒体27内のデータベースから検索する(ステップS901)。
次に、レコード処理部52は、ステップS901にて検索したレコード内のナンバーより小さいナンバーを含むレコードをデータベースから抽出する(ステップS902)。
そして、レコード処理部52は、ステップS902にて抽出したレコードに対し所定の処理を行う(ステップS903)。
このように、レコード処理部52は、所定のデータを含むレコード内のナンバーより小さいナンバーを含むレコードに対してのみ、所定の処理を行うことができる。
【0060】
次に、本実施形態に係るデータ処理方法を用いた実施例について説明する。本実施例は、本実施形態に係るデータ処理方法を決算処理に適用したものである。なお、本実施例において、起算日は1999年4月1日であり、決算日は2000年3月31日であるものとする。
本実施例において、サーバ51の記録媒体27には、伝票データベースが構築されている。この伝票データベースは、入力日、計上日、伝票内容、及び、ナンバーの4つのカラムを有する。
図15は、記録媒体27内の伝票データベースを示す図である。図15において、この伝票データベース60には、レコード作成部24又はレコード更新部26によってレコード61〜71の11のレコードが格納されている。
【0061】
次に、サーバ51のレコード処理部52の動作について、図16のフローチャートを参照しながら説明する。
サーバ51のレコード処理部52は、クライアント端末11〜1nから決算開始指示を受信すると、図16の処理を開始する。
まず、レコード処理部52は、伝票締めを指示するレコードを伝票データベースから検索する(ステップS911)。本実施例においては、伝票締めを指示するレコードは、レコード70である。
【0062】
次に、レコード処理部52は、ステップS901にて検索したレコード70のナンバー(”003680000000000002”)よりも小さいナンバーを含むレコードを抽出する(ステップS912)。本実施例においては、レコード70のナンバーよりも小さいナンバーを含むレコードは、レコード61〜69である。
次に、レコード処理部52は、ステップS902にて抽出したレコード61〜69の内で計上日が2000年3月31日以前であるレコード(本実施例においては、レコード61〜64、66、及び、68)を集計し、決算処理を行う(ステップS913)。
【0063】
このように、ユーザが適切な時に伝票締めを指示するレコード70を伝票データベースに格納することにより、レコード処理部52によって決算処理される対象となるレコード61〜64、66、及び、68を特定することができ、レコード70の格納後に伝票データベースに格納されたレコード71を決算処理の対象から外すことができる。従って、決算処理が終了するまで伝票データを含むレコード(本実施例においては、レコード71)の入力を禁止したり、記録媒体27内の仮の記録領域に伝票データを仮入力し決算処理終了後に伝票データベース60に格納し直す必要がない。
なお、伝票締めを指示するレコード70を伝票データベース60に格納した後に、何らかの事情によりレコード71をも決算対象とする必要が生じた場合には、レコード70を削除し、伝票締めを指示する新たなレコードをレコード71の次に作成すれば良い。
【0064】
以上説明した各実施形態及び各実施例において、サーバ21の他にサブサーバを設置してサーバを多重化することにより、ナンバーの生成をより確実にすることができる。
【0065】
【発明の効果】
以上述べた様に、本発明の第1の観点によれば、データが編集されたレコード内のナンバーと更新対象レコード内のナンバーとが一致する場合にのみレコードを更新するので、同一レコードに対する複数ユーザの重複読み出しを可能にしつつ、重複更新を防止することができる。また、本発明の第2の観点によれば、複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを含むレコードにのみ集計処理を行うので、データの入力とデータに対する処理とを並行して行うことができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るデータ処理方法を実施するためのシステムを示す図である。
【図2】図1のサーバの構成を示す図である。
【図3】システムイベントナンバーのフォーマットを示す図である。
【図4】本発明の第1の実施形態に係るデータ処理方法の起動処理を示すフローチャートである。
【図5】本発明の第1の実施形態に係るデータ処理方法のシステムイベントナンバー生成処理を示すフローチャートである。
【図6】本発明の第1の実施形態に係るデータ処理方法のレコード作成処理を示すフローチャートである。
【図7】本発明の第1の実施形態に係るデータ処理方法のレコード読出処理を示すフローチャートである。
【図8】本発明の第1の実施形態に係るデータ処理方法のレコード更新処理を示すフローチャートである。
【図9】本発明の第1の実施形態の実施例に係るデータ処理方法のレコード作成処理を示すフローチャートである。
【図10】本発明の第1の実施形態の実施例に係るデータ処理方法によって処理される社員データベースを示す図である。
【図11】本発明の第1の実施形態の実施例に係るデータ処理方法のレコード更新処理を示すフローチャートである。
【図12】本発明の第2の実施形態に係るデータ処理方法を実施するためのシステムを示す図である。
【図13】図12のサーバの構成を示す図である。
【図14】本発明の第2の実施形態に係るデータ処理方法のレコード処理を示すフローチャートである。
【図15】本発明の第2の実施形態の実施例に係るデータ処理方法によって処理される伝票データベースを示す図である。
【図16】本発明の第2の実施形態の実施例に係るデータ処理方法の決算処理を示すフローチャートである。
【符号の説明】
1、2 データ処理システム
11〜1n クライアント端末
21、51 サーバ
22 システムデート管理部
23 システムイベントナンバー生成部
24 レコード作成部
25 レコード読出し部
26 レコード更新部
27 記録媒体
31 ネットワーク
40 社員データベース
41〜46 レコード
52 レコード処理部
60 伝票データベース
61〜71 レコード

Claims (16)

  1. 複数の装置と通信することによりデータを処理するサーバであって、
    複数のレコードを記録する記録手段と、
    所定の起算日から現在までの累積日数を計数してその値を出力する累積日数計数手段と、
    第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、前記累積日数計数手段が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するナンバー生成手段と、
    前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを前記記録手段に書き込むレコード作成手段と、
    前記複数の装置の内のいずれかの装置から前記記録手段に記録されたレコードを読み出す旨の要求を受信した場合に、要求されたレコードを前記記録手段から読み出して前記装置に出力するレコード読出し手段と、
    前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録手段に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録手段に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録手段に書き込むレコード更新手段と、
    を具備するデータ処理サーバ。
  2. 複数の装置と通信することによりデータを処理するサーバであって、
    複数のレコードを記録する記録手段と、
    所定の起算日から現在までの累積日数を計数してその値を出力する累積日数計数手段と、
    第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、前記累積日数計数手段が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成して出力するナンバー生成手段と、
    前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを前記記録手段に書き込むレコード作成手段と、
    前記記録手段に記録されているレコードの内で前記複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行うレコード処理手段と、
    を具備するデータ処理サーバ。
  3. 前記複数の装置の内のいずれかの装置から前記記録手段に記録されたレコードを読み出す旨の要求を受信した場合に、要求されたレコードを前記記録手段から読み出して前記装置に出力するレコード読出し手段と、
    前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録手段に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録手段に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録手段に書き込むレコード更新手段と、
    を更に具備する請求項2記載のデータ処理サーバ。
  4. 前記記録手段が記録するレコードが伝票に関するレコードであり、前記レコード処理手段が、前記記録手段に記録されているレコードの内で前記複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードを集計し、決算処理を行うものであることを特徴とする請求項2又は3記載のデータ処理サーバ。
  5. 前記ナンバー生成手段が生成したナンバーを所定時に記録するナンバー記録手段を更に具備し、
    前記ナンバー生成手段が、起動又はリブートされた時に前記ナンバー記録手段に記録されているナンバーの上位桁の値と前記累積日数計数手段が出力する累積日数の値とを比較し、前記ナンバー記録手段に記録されているナンバーの上位桁の値が前記累積日数計数手段が出力する累積日数の値以上の場合には、前記ナンバー記録手段に記録されているナンバーの上位桁を上位桁とし、前記ナンバー記録手段に記録されているナンバーの中位桁をインクリメントした値を中位桁とし、その日のその時からナンバー生成を要求された回数の値を下位桁とするナンバーを生成し、前記ナンバー記録手段に記録されているナンバーの上位桁の値が前記累積日数計数手段が出力する累積日数の値より小さい場合には、前記累積日数計数手段が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日のその時からナンバー生成を要求された回数の値を下位桁とするナンバーを生成することを特徴とする請求項1〜4のいずれか1項に記載のデータ処理サーバ。
  6. 前記ナンバー記録手段が、前記ナンバー生成手段が生成したナンバーの中位桁に変動があった時にナンバーを記録することを特徴とする請求項記載のデータ処理サーバ。
  7. 前記ナンバー生成手段が、ナンバーの下位桁からキャリーが発生した場合には、キャリーをナンバーの中位桁に加算することを特徴とする請求項1〜6のいずれか1項記載のデータ処理サーバ。
  8. 複数の装置と通信することによりデータを処理する方法であって、
    所定の起算日から現在までの累積日数を計数してその値を出力するステップ(a)と、
    ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、ステップ(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップ()と、
    前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に記録するステップ()と、
    前記複数の装置の内のいずれかの装置からレコードを読み出す旨の要求を受信した場合に、要求されたレコードを前記記録媒体から読み出して前記装置に出力するステップ()と、
    前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録媒体に書き込むステップ()と、
    を具備するデータ処理方法。
  9. 複数の装置と通信することによりデータを処理する方法であって、
    所定の起算日から現在までの累積日数を計数してその値を出力するステップ(a)と、
    ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、ステップ(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、そ の日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップ()と、
    前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に書き込むステップ()と、
    前記記録媒体に記録されているレコードの内で前記複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行うステップ()と、
    を具備するデータ処理方法。
  10. 前記複数の装置の内のいずれかの装置から前記記録媒体に記録されたレコードを読み出す旨の要求を受信した場合に、要求されたレコードを前記記録媒体から読み出して前記装置に出力するステップ()と、
    前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録媒体に書き込むステップ()と、
    を更に具備する請求項記載のデータ処理方法。
  11. 前記記録媒体に記録されるレコードが伝票に関するレコードであり、ステップ()が、前記記録手段に記録されているレコードの内で前記複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードを集計し、決算処理を行うものであることを特徴とする請求項又は10記載のデータ処理方法。
  12. ステップ()において生成したナンバーを所定時に記録するステップ(g)を更に具備し、
    ステップ()が、起動又はリブートされた時にステップ(g)において記録されたナンバーの上位桁の値とステップ()において出力された累積日数の値とを比較し、ステップ(g)において記録されたナンバーの上位桁の値がステップ()において出力された累積日数の値以上の場合には、ステップ(g)において記録されたナンバーの上位桁を上位桁とし、ステップ(g)において記録されたナンバーの中位桁をインクリメントした値を中位桁とし、その日のその時からナンバー生成を要求された回数の値を下位桁とするナンバーを生成し、ステップ(g)において記録されたナンバーの上位桁の値がステップ()において出力された累積日数の値より小さい場合には、ステップ()において出力された値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日のその時からナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップを含むことを特徴とする請求項8〜11のいずれか1項に記載のデータ処理方法。
  13. ステップ(g)が、ステップ()によって生成されたナンバーの中位桁に変動があった時にナンバーを記録するステップを含むことを特徴とする請求項12記載のデータ処理サーバ。
  14. ステップ()が、ナンバーの下位桁からキャリーが発生した場合には、キャリーをナンバーの中位桁に加算するステップを含むことを特徴とする請求項8〜13のいずれか1項記載のデータ処理サーバ。
  15. 複数の装置と通信することによりデータを処理するためにCPUで読み取り可能な記録媒体であって、
    所定の起算日から現在までの累積日数を計数してその値を出力する手順(a)と、
    ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、手順(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日 にナンバー生成を要求された回数の値を下位桁とするナンバーを生成する手順()と、
    前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に記録する手順()と、
    前記複数の装置の内のいずれかの装置からレコードを読み出す旨の要求を受信した場合に、要求されたレコードを前記記録媒体から読み出して前記装置に出力する手順()と、
    前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録媒体に書き込む手順()と、
    を前記CPUに実行させるためのプログラムを記録した記録媒体。
  16. 複数の装置と通信することによりデータを処理するためにCPUで読み取り可能な記録媒体であって、
    所定の起算日から現在までの累積日数を計数してその値を出力する手順(a)と、
    ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、手順(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成する手順()と、
    前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に書き込む手順()と、
    前記記録媒体に記録されているレコードの内で前記複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行う手順()と、
    を前記CPUに実行させるためのプログラムを記録した記録媒体。
JP2001023005A 2001-01-31 2001-01-31 データ処理サーバ及び方法並びにデータ処理プログラムを記録した記録媒体 Expired - Fee Related JP3615150B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001023005A JP3615150B2 (ja) 2001-01-31 2001-01-31 データ処理サーバ及び方法並びにデータ処理プログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001023005A JP3615150B2 (ja) 2001-01-31 2001-01-31 データ処理サーバ及び方法並びにデータ処理プログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2002229833A JP2002229833A (ja) 2002-08-16
JP3615150B2 true JP3615150B2 (ja) 2005-01-26

Family

ID=18888340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001023005A Expired - Fee Related JP3615150B2 (ja) 2001-01-31 2001-01-31 データ処理サーバ及び方法並びにデータ処理プログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP3615150B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5105922B2 (ja) * 2007-03-22 2012-12-26 日本電気株式会社 情報更新システム、情報記憶サーバ、情報更新方法、及び、プログラム
CN103384399B (zh) 2012-05-02 2017-04-12 阿里巴巴集团控股有限公司 近场传递信息的方法、信息传达和接受客户端、信息***

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04336342A (ja) * 1991-05-14 1992-11-24 Nec Software Kansai Ltd レコード更新管理方式
JPH06332856A (ja) * 1993-05-18 1994-12-02 Nippon Yunishisu Kk オンライン業務処理方式
JP2002236747A (ja) * 2001-02-07 2002-08-23 Sanyo Electric Co Ltd 診療データ入力装置

Also Published As

Publication number Publication date
JP2002229833A (ja) 2002-08-16

Similar Documents

Publication Publication Date Title
CN110495132B (zh) 用于在分布式网络节点内生成、上传和执行代码区块的***和方法
US9244953B2 (en) Systems and methods for asynchronous schema changes
CN102142024B (zh) 在分布式数据库中使用递增捕捉来进行逻辑数据备份和回退
IL276744A (en) Integrated feedback based on a touring agent for full transactions with the 'blockchain' system
US7676503B2 (en) Hybrid computer restore using network service
US20060259960A1 (en) Server, method and program product for management of password policy information
DE102005038866A1 (de) Sicheres elektronisches Auslieferungssiegel für ein informationsverarbeitendes System
JP2006508473A (ja) 記憶システムにおけるデータ回復技術
WO2007105274A1 (ja) 適用パッチ選別装置及び適用パッチ選別方法
US20070214195A1 (en) Idempotent journal mechanism for file system
WO2005114487A2 (en) Method and apparatus for updating a database using table staging and queued relocation and deletion
CN113141369B (zh) 基于人工智能的防火墙策略管理方法及相关设备
CN101710373A (zh) 嵌入式***的文件操作方法
JP3615150B2 (ja) データ処理サーバ及び方法並びにデータ処理プログラムを記録した記録媒体
JP2006277574A (ja) 医用機器におけるソフトウェア構成管理システム
US11556519B2 (en) Ensuring integrity of records in a not only structured query language database
EP3779755A1 (en) A computer-implemented method for cross-chain-interoperability
WO2011042961A1 (ja) 更新管理装置及び方法
KR102164779B1 (ko) 기록된 거래의 수정이 가능한 블록체인
JP2004355203A (ja) データの更新・履歴・集計管理方式
JP4348770B2 (ja) 設計図面の編集履歴管理システム
JP2008293229A (ja) 履歴データ処理装置および方法
JP2004013867A (ja) 複製データベースシステム、データベース装置及びそれに用いるデータベース更新方法並びにそのプログラム
JPH10154090A (ja) データ管理システム
JP2000010766A (ja) プログラム修正抽出適用システムおよび修正抽出適用プログラムを格納した記憶媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040518

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040712

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041020

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041028

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3615150

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071112

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101112

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131112

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees