JP3615150B2 - Data processing server and method, and recording medium on which data processing program is recorded - Google Patents
Data processing server and method, and recording medium on which data processing program is recorded Download PDFInfo
- 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
Links
Images
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)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップ(b)と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に記録するステップ(c)と、複数の装置の内のいずれかの装置からレコードを読み出す旨の要求を受信した場合に、要求されたレコードを記録媒体から読み出して装置に出力するステップ(d)と、複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーをナンバー生成手段から出力されたナンバーで置き換えたレコードを記録媒体に書き込むステップ(e)とを具備する。
【0010】
また、本発明の第2の観点に係るデータ処理方法は、複数の装置と通信することによりデータを処理する方法であって、所定の起算日から現在までの累積日数を計数してその値を出力するステップ(a)と、ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、ステップ(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップ(b)と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に書き込むステップ(c)と、記録媒体に記録されているレコードの内で複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行うステップ(d)とを具備する。
【0011】
また、本発明の第1の観点に係るデータ処理プログラムを記録した記録媒体は、複数の装置と通信することによりデータを処理するためにCPUで読み取り可能な記録媒体であって、所定の起算日から現在までの累積日数を計数してその値を出力する手順(a)と、ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、手順(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成する手順(b)と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に記録する手順(c)と、複数の装置の内のいずれかの装置からレコードを読み出す旨の要求を受信した場合に、要求されたレコードを記録媒体から読み出して装置に出力する手順(d)と、複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーをナンバー生成手段から出力されたナンバーで置き換えたレコードを記録媒体に書き込む手順(e)とをCPUに実行させる。
【0012】
また、本発明の第2の観点に係るデータ処理プログラムを記録した記録媒体は、複数の装置と通信することによりデータを処理するためにCPUで読み取り可能な記録媒体であって、所定の起算日から現在までの累積日数を計数してその値を出力する手順(a)と、ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、手順(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成する手順(b)と、複数の装置の内のいずれかの装置からデータを受信した場合に、ナンバー生成手段にナンバー生成要求を行い、受信したデータ及びナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に書き込む手順(c)と、記録媒体に記録されているレコードの内で複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行う手順(d)とを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桁(D1D2D3D4D5)、中位4桁(S1S2S3S4)、及び、下位9桁(C1C2C3C4C5C6C7C8C9)を結合した数である。
【0017】
ナンバーの上位5桁(D1D2D3D4D5)は、このナンバーが生成された日の累積日数を示す数値である。従って、システムイベントナンバー生成部23は、起算日から99,999日目まで、即ち起算日から約270年後まで、ナンバーを生成することができる。
【0018】
ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)は、ナンバー生成要求毎にインクリメントされた数である。なお、ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)からキャリーが発生した場合には、そのキャリーがナンバーの中位4桁(S1S2S3S4)に伝搬される。
【0019】
ナンバーの中位4桁(S1S2S3S4)は、原則として、サーバ21が同一日内でリブート(停電、故障等によりサーバ21が停止し、その後再起動した場合等を含む)された回数とナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)からのキャリーとの和である。但し、後にナンバー生成処理の説明において述べるように、ナンバーの中位4桁(S1S2S3S4)は、システムデート管理部22によって管理されているシステムデートが正しい日付よりも古い日付に誤設定されている状態でサーバ21が起動又はリブートされた場合には、インクリメントされる。従って、システムイベントナンバー生成部23は、サーバ21が同一日内でリブートされた回数と、システムデートが古い日付に誤設定されている状態でサーバ21が起動又はリブートされた回数と、下位9桁(C1C2C3C4C5C6C7C8C9)からのキャリーとの合計が9,999となるまで、ナンバーを生成することができる。
【0020】
なお、システムイベントナンバー生成部23は、サーバ21が同一日内に一度もリブートされていない場合には、中位4桁(S1S2S3S4)と下位9桁(C1C2C3C4C5C6C7C8C9)を合わせて、同一日内に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桁(S1S2S3S4)がインクリメントされるため、同一日内にナンバーを生成することができる回数が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桁(D1D2D3D4D5)がシステムデート管理部22によって管理されている現在の累積日数の数値以上であるか否か、即ち最終記録ナンバーを記録した日と同一日内にリブートされ又はシステムデート管理部22によって管理されているシステムデートが古い日付に誤設定されているか否かをチェックする。そして、システムイベントナンバー生成部23は、最終記録ナンバーの上位5桁(D1D2D3D4D5)が現在の累積日数より小さければ処理をステップS103に移し、最終記録ナンバーの上位5桁(D1D2D3D4D5)が現在の累積日数以上であれば処理をステップS104に移す(ステップS102)。
【0027】
ステップS102にて最終記録ナンバーの上位5桁(D1D2D3D4D5)が現在の累積日数より小さいと判断した場合、即ち最終記録ナンバーを記録した日と同一日内にリブートされておらず且つシステムデートが誤設定されていないと判断した場合には、システムイベントナンバー生成部23は、起動時の初期値として新規に生成しようとするナンバー(以下、「起動時ナンバー」ともいう)の上位5桁(D1D2D3D4D5)を現在の累積日数の数値に、中位4桁(S1S2S3S4)を”0000”に、それぞれ設定する(ステップS103)。
【0028】
一方、ステップS102にて最終記録ナンバーの上位5桁(D1D2D3D4D5)が現在の累積日数以上であると判断した場合、即ち最終記録ナンバーを記録した日と同一日内にリブートされ又はシステムデートが古い日付に誤設定されていると判断した場合には、システムイベントナンバー生成部23は、起動時ナンバーの上位5桁(D1D2D3D4D5)を最終記録ナンバーの上位5桁(D1D2D3D4D5)と同じ値に、起動時ナンバーの中位4桁(S1S2S3S4)を最終記録ナンバーの中位4桁(S1S2S3S4)をインクリメントした値に、それぞれ設定する(ステップS104)。
【0029】
次に、システムイベントナンバー生成部23は、起動時ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)を”000000000”に設定する(ステップS105)。そして、システムイベントナンバー生成部23は、起動時ナンバーを記録媒体27に書き込む(ステップS106)。このようにシステムイベントナンバー生成部23が起動時ナンバーを記録媒体27に書き込むことにより、起動時ナンバーが新たな最終記録ナンバーとなる。なお、システムイベントナンバー生成部23が、記録媒体27ではなく、EEPROM等にナンバーを記録するようにしても良い。
【0030】
このように、最終記録ナンバーを記録した日と同一日内にリブートされ又はシステムデートが誤って古い日付に設定されている場合であっても、起動時ナンバーの中位4桁(S1S2S3S4)を最終記録ナンバーの中位4桁(S1S2S3S4)をインクリメントした値に設定することにより、最終記録ナンバーより大きな数値である起動時ナンバーを生成することができる。
【0031】
次に、レコード作成部24又はレコード更新部26からナンバー生成要求を受けた場合のシステムイベントナンバー生成部22の動作について説明する。図5は、システムイベントナンバー生成部23のナンバー生成処理動作の概要を示すフローチャートである。以下、システムイベントナンバー生成部23のナンバー生成処理動作について、図5を参照しながら説明する。
【0032】
レコード作成部24又はレコード更新部26からナンバー生成要求を受けると、システムイベントナンバー生成部23は、図5の処理を開始する。
まず、システムイベントナンバー生成部23は、前回生成したナンバー(サーバ21の起動後最初にナンバー生成要求を受けた場合には、起動時ナンバーが該当する。以下、「前回ナンバー」ともいう)の下位9桁(C1C2C3C4C5C6C7C8C9)が”999999999”であるか否か、即ち前回ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)をインクリメントするとキャリーが発生するか否かをチェックし、前回ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)が”999999999”であれば処理をステップS112に移し、そうでなければ処理をステップS115に移す(ステップS111)。
【0033】
ステップS111にて前回ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)が”999999999”であると判断した場合、即ち前回ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)をインクリメントするとキャリーが発生すると判断した場合には、システムイベントナンバー生成部23は、更に前回ナンバーの中位4桁(S1S2S3S4)が”9999”であるか否か、即ち前回ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)からのキャリーを加算すると前回ナンバーの中位4桁(S1S2S3S4)が桁あふれを発生するか否かをチェックする。そして、システムイベントナンバー生成部23は、前回ナンバーの中位4桁(S1S2S3S4)が”9999”でなければ処理をステップS113に移し、前回ナンバーの中位4桁(S1S2S3S4)が”9999”であれば処理をステップS116に移す(ステップS112)。
【0034】
ステップS112にて前回ナンバーの中位4桁(S1S2S3S4)が”9999”でないと判断した場合には、システムイベントナンバー生成部23は、新規に生成しようとするナンバー(以下、「新規生成ナンバー」ともいう)の中位4桁(S1S2S3S4)を前回ナンバーの中位4桁(S1S2S3S4)をインクリメント(前回ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)からのキャリーの加算に相当)した値に、新規生成ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)を”000000000“に、それぞれ設定する(ステップS113)。更に、システムイベントナンバー生成部23は、この時点における新規生成ナンバーを記録媒体27に書き込む(ステップS114)。システムイベントナンバー生成部23がこの時点における新規生成ナンバーを記録媒体27に書き込むことにより、この時点における新規生成ナンバーが新たな最終記録ナンバーとなる。
【0035】
ステップS111にて前回ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)が”999999999”ではないと判断した場合、又はステップS114の処理を終了した場合には、システムイベントナンバー生成部23は、新規生成ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)をインクリメントし、この新規生成ナンバーをナンバー生成を要求したレコード作成部24又はレコード更新部26に出力する(ステップS115)。
【0036】
一方、ステップS112にて前回ナンバーの中位4桁(S1S2S3S4)が”9999”であると判断した場合には、システムイベントナンバー生成部23は、新規ナンバーの生成を停止し、処理を終了する(ステップS116)。この場合には、サーバ21がオペレータに警告文を表示するようにしても良い。
なお、ステップS116の処理が実行される場合とは、システムイベントナンバー生成部23が、ステップS111にて前回ナンバーの下位9桁(C1C2C3C4C5C6C7C8C9)が”999999999”であると判断し、且つステップS112にて前回ナンバーの中位4桁(S1S2S3S4)が”9999”であると判断した場合である。しかしながら、先に説明したように、同一日内に9,999,999,999,999回を超えるナンバー生成要求があることは、実用上殆どないものと考えられる。
【0037】
以上説明したように、システムイベントナンバー生成部23は、サーバ21の同一日内のリブート及びシステムデートが古い日付に誤設定されている状態での起動(リブートを含む)をも考慮した上で、前回ナンバーより大きな数値であるという条件を必ず満たす新規ナンバーを生成することができる。また、システムイベントナンバー生成部23は、ナンバーを生成する毎ではなく、新規生成ナンバーの中位4桁(S1S2S3S4)がインクリメントされた場合にのみ新規生成ナンバーを記録媒体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 レコード[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data processing method for processing data, and further relates to a data processing server using such a data processing method and a recording medium on which a data processing program is recorded.
[0002]
[Prior art]
Conventionally, database systems that store various data as records and perform various operations on the records have been used.
In some cases, a plurality of users may update a certain record stored in such a database system. For example, it is a case where a first user performs a read operation, a second user performs a read operation, a first user performs an update operation, and a second user performs an update operation on a certain record. . In this case, the result of the update operation of the first user is overwritten with the result of the update operation of the second user and is lost.
[0003]
In order to prevent such multiple updating of multiple users for the same record, exclusive control such as a lock method including record lock, page lock, table lock, database lock, and the like has been performed in a conventional database system.
However, the conventional lock method requires a lot of calculation time (processing time). In addition, when a certain record is record-locked, when a predetermined condition (for example, the number of update pages exceeds a predetermined number) is satisfied, the record lock is shifted to a table lock or the like (lock escalation). In some cases, a deadlock was caused between operations. Furthermore, there are cases where another user cannot perform a read operation as well as an update operation on a record locked by an operation of a certain user.
[0004]
On the other hand, the database system as described above is used for accounting operations of companies and the like. When the database system is used for accounting operations in this way, the period from the transition from the k-th accounting period to the (k + 1) -th accounting period of a company or the like (generally, the number from the transition of the accounting period) Day to about a dozen days), input of a large number of slip data (including both slip data for the k-th fiscal period and slip data for the (k + 1) -th fiscal period), settlement processing, etc. are concentrated and smooth. In some cases, it was not possible to carry out proper accounting operations.
[0005]
For this reason, in accounting work using a conventional database system, entry of slip data within a predetermined period from the time of the transition of the accounting period is completely prohibited, and entry of slip data after the settlement of accounts for the k-th accounting period ends. Record the slip data entered within a predetermined period from the time of the transition to the accounting period, and record it in the temporary recording area after the settlement of accounts for the k-th accounting period is completed. The voucher data was transferred to the recording area for accounting work.
[0006]
[Problems to be solved by the invention]
Therefore, in view of the above points, the present invention provides a data processing server and a data processing method capable of preventing duplicate update while allowing multiple users to perform duplicate reading for the same record, and a recording medium on which a data processing program is recorded. The purpose is to provide. Another object of the present invention is to provide a data processing server and a data processing method capable of performing data input and data processing in parallel, and a recording medium recording a data processing program.
[0007]
[Means for Solving the Problems]
In order to solve the above problems, a data processing server according to a first aspect of the present invention is a server that processes data by communicating with a plurality of devices, and a recording unit that records a plurality of records; A cumulative day counting means for counting the cumulative number of days from a predetermined date to the present and outputting the value; Nth Number generation Number x (n) satisfying x (i) <x (n) (i = 1,..., (N−1)) upon request. The number output by the cumulative number of days counting means is the upper digit, the value of the number of times the system was started or rebooted on that day is the middle digit, and the number of times the number was requested to be generated on that day is the lower digit. When the data is received from any one of a plurality of devices and the number generator that generates Make a generation request A record creation means for writing a record including the received data and a number output from the number generation means to the recording means, and a request for reading the record recorded in the recording means from any one of the plurality of devices. When receiving a record reading unit that reads the requested record from the recording unit and outputs it to the device, and a record that has been edited from one of a plurality of devices, the received record Check whether the number in the record to be updated matches the number in the record to be updated and the number in the record to be updated recorded in the record means If the number matches, the number generation means Make a generation request And a record updating means for writing the record in which the number in the received record is replaced with the number output from the number generating means to the recording means.
[0008]
A data processing server according to the second aspect of the present invention is a server that processes data by communicating with a plurality of devices, and a recording unit that records a plurality of records; A cumulative day counting means for counting the cumulative number of days from a predetermined date to the present and outputting the value; Nth Number generation Number x (n) satisfying x (i) <x (n) (i = 1,..., (N−1)) upon request. The number output by the cumulative number of days counting means is the upper digit, the value of the number of times the system was started or rebooted on that day is the middle digit, and the number of times the number was requested to be generated on that day is the lower digit. Number generating means for generating and outputting the number, and when receiving data from any of the plurality of devices, the number generating means Make a generation request A record generating means for writing a record including the received data and a number output from the number generating means to the recording means, and among the records recorded in the recording means Directed by one of multiple devices For records with a number less than the number in the record containing the data Aggregate And record processing means for performing processing.
[0009]
A data processing method according to the first aspect of the present invention is a method of processing data by communicating with a plurality of devices, A step (a) of counting a cumulative number of days from a predetermined calculation date to the present and outputting the value; In the number generating means, the nth Number generation Number x (n) satisfying x (i) <x (n) (i = 1,..., (N−1)) upon request. A number in which the value output in step (a) is the upper digit, the value of the number of activations or reboots on that day is the middle digit, and the number of times the number is requested to be generated on that day is the lower digit. Step to generate ( b ), And when data is received from one of multiple devices, Make a generation request Recording a record including the received data and the number output from the number generating means on a recording medium ( c ) And a step of reading the requested record from the recording medium and outputting it to the device when receiving a request to read the record from any one of the plurality of devices ( d ) And a record whose data has been edited from one of multiple devices, the number in the received record matches the number in the record to be updated recorded on the recording medium If the number in the received record matches the number in the record to be updated recorded on the recording medium, the number generation means Make a generation request The step of writing the record in which the number in the received record is replaced with the number output from the number generation means to the recording medium ( e ).
[0010]
A data processing method according to the second aspect of the present invention is a method of processing data by communicating with a plurality of devices, A step (a) of counting a cumulative number of days from a predetermined calculation date to the present and outputting the value; In the number generating means, the nth Number generation Number x (n) satisfying x (i) <x (n) (i = 1,..., (N−1)) upon request. A number in which the value output in step (a) is the upper digit, the value of the number of activations or reboots on that day is the middle digit, and the number of times the number is requested to be generated on that day is the lower digit. Step to generate ( b ), And when data is received from one of multiple devices, Make a generation request A step of writing a record including the received data and the number output from the number generating means on the recording medium ( c ) And in the record recorded on the recording medium Directed by one of multiple devices For records with a number less than the number in the record containing the data Aggregate Step to process ( d ).
[0011]
A recording medium recording the data processing program according to the first aspect of the present invention is a recording medium that can be read by a CPU to process data by communicating with a plurality of devices. A procedure (a) of counting the cumulative number of days from a predetermined date of calculation to the present and outputting the value; In the number generating means, the nth Number generation Number x (n) satisfying x (i) <x (n) (i = 1,..., (N−1)) upon request. A number in which the value output in step (a) is the upper digit, the value of the number of activations or reboots on the day is the middle digit, and the number of times the number is requested to be generated on that day is the lower digit. Steps to generate ( b ), And when data is received from one of multiple devices, Make a generation request , A procedure for recording a record including the received data and the number output from the number generating means on a recording medium ( c ) And a procedure for reading the requested record from the recording medium and outputting it to the device when receiving a request to read the record from any one of the plurality of devices ( d ) And a record whose data has been edited from one of multiple devices, the number in the received record matches the number in the record to be updated recorded on the recording medium If the number in the received record matches the number in the record to be updated recorded on the recording medium, the number generation means Make a generation request , The procedure of writing the record in which the number in the received record is replaced with the number output from the number generating means to the recording medium ( e ) Is executed by the CPU.
[0012]
A recording medium recording a data processing program according to the second aspect of the present invention is a recording medium readable by a CPU for processing data by communicating with a plurality of devices, A procedure (a) of counting the cumulative number of days from a predetermined date of calculation to the present and outputting the value; In the number generating means, the nth Number generation Number x (n) satisfying x (i) <x (n) (i = 1,..., (N−1)) upon request. A number in which the value output in step (a) is the upper digit, the value of the number of activations or reboots on the day is the middle digit, and the number of times the number is requested to be generated on that day is the lower digit. Steps to generate ( b ), And when data is received from one of multiple devices, Make a generation request A procedure for writing a record including the received data and the number output from the number generating means to the recording medium ( c ) And in the record recorded on the recording medium Directed by one of multiple devices For records with a number less than the number in the record containing the data Aggregate Procedure for processing ( d ) Is executed by the CPU.
[0013]
According to the first aspect of the present invention, since the record is updated only when the number in the record in which the data is edited matches the number in the update target record, multiple users can be duplicated for the same record. In addition, duplicate updates can be prevented. According to the second aspect of the present invention, Directed by one of multiple devices Only for records that contain a number less than the number in the record that contains the data Aggregate Since processing is performed, data input and data processing can be performed in parallel.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. The same constituent elements are denoted by the same reference numerals, and the description thereof is omitted.
First, a data processing method according to the first embodiment of the present invention will be described. FIG. 1 is a diagram showing a system for carrying out a data processing method according to the first embodiment of the present invention.
As shown in FIG. 1, the
The client terminals 11 to 1n and the
The client terminals 11 to 1n are PCs or the like for the user to use the
[0015]
FIG. 2 is a diagram illustrating the
The system
[0016]
In response to requests from the
Here, the number will be described in detail. FIG. 3 is a diagram showing a number format. As shown in FIG. 3, the number is the upper 5 digits (D 1 D 2 D 3 D 4 D 5 ), Middle 4 digits (S 1 S 2 S 3 S 4 ) And lower 9 digits (C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9 ).
[0017]
Top 5 digits of number (D 1 D 2 D 3 D 4 D 5 ) Is a numerical value indicating the cumulative number of days on which this number was generated. Accordingly, the system event
[0018]
Lower 9 digits of number (C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9 ) Is a number incremented for each number generation request. The lower 9 digits of the number (C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9 ) If a carry occurs, the carry is the middle 4 digits of the number (S 1 S 2 S 3 S 4 ).
[0019]
Middle 4 digits of number (S 1 S 2 S 3 S 4 ) In principle, the number of times the
[0020]
The system event
On the other hand, when the time required to generate a number was measured using a CPU and software having an operating frequency of 600 MHz, it took 0.7 seconds for 10,000 number generation processing. That is, a time of 0.00007 seconds is required for each number generation.
[0021]
Therefore, in 9,999,999,999,999 number generation processing, approximately 0.0700 million seconds (approximately 8100) obtained by multiplying 0.00007 (seconds / time) by 9,999,999,999,999 (times). Day) is required. Further, considering that various database operation processes are performed together with the generation of the number, the number has a sufficient number of digits for practical use. Further, as described above, when the
[0022]
The
The
The
[0023]
The
The system
[0024]
Next, the operation of the
First, the operation of the system event
FIG. 4 is a flowchart showing an outline of the activation process operation of the system event
[0025]
When the
When the processing of FIG. 4 is started, the system event
[0026]
Next, the system event
[0027]
In step S102, the upper 5 digits (D 1 D 2 D 3 D 4 D 5 ) Is smaller than the current cumulative number of days, that is, when it is determined that the last recorded number was not rebooted within the same day as the recorded date and the system date is not set incorrectly, a system event number is generated. The
[0028]
On the other hand, in step S102, the upper 5 digits (D 1 D 2 D 3 D 4 D 5 ) Is greater than or equal to the current cumulative number of days, that is, if it is determined that the last recorded number was rebooted within the same day as the date of recording or that the system date was set to an older date, the system event number The
[0029]
Next, the system event
[0030]
In this way, even if the last recorded number is rebooted within the same day as the date of recording or the system date is mistakenly set to an old date, the middle 4 digits (S 1 S 2 S 3 S 4 ) In the middle 4 digits (S 1 S 2 S 3 S 4 ) Is set to an incremented value, it is possible to generate a startup number that is larger than the final recording number.
[0031]
Next, the operation of the system event
[0032]
Upon receiving a number generation request from the
First, the system event
[0033]
In step S111, the last 9 digits (C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9 ) Is "99999999999", that is, the last 9 digits (C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9 ) Is incremented, the system event
[0034]
In step S112, the middle 4 digits of the previous number (S 1 S 2 S 3 S 4 ) Is not “9999”, the system event
[0035]
In step S111, the last 9 digits (C 1 C 2 C 3 C 4 C 5 C 6 C 7 C 8 C 9 ) Is not “99999999999”, or when the process of step S114 is completed, the system event
[0036]
On the other hand, the middle 4 digits (S 1 S 2 S 3 S 4 ) Is “9999”, the system event
When the process of step S116 is executed, the system event
[0037]
As described above, the system event
[0038]
Next, the operation of the
[0039]
First, the client terminals 11 to 1n transmit data for a new record to the
Next, the
When the
In this way, a record including a number can be created and stored in a database.
[0040]
Next, the operation of the
[0041]
First, the client terminals 11 to 1n request the
Next, the
The
[0042]
Next, the operation of the
[0043]
First, the client terminals 11 to 1n transmit the record with the edited data to the
Next, the
[0044]
If it is determined in step S402 that the number in the record received from the client terminals 11 to 1n matches the number in the update target record stored in the database, the
[0045]
Next, the
[0046]
On the other hand, if it is determined in step S402 that the number in the record received from the client terminals 11 to 1n does not match the number in the update target record stored in the database, the
As described above, the
[0047]
Next, an example using the data processing method according to the present embodiment will be described. In this embodiment, the data processing method according to this embodiment is applied to employee database processing. In this embodiment, all database operations are performed on the day of calculation.
In this embodiment, a schema of an employee database that manages allowances for employees is built on the
[0048]
First, the operations of the client terminal 11 and the
The first user inputs data including employee names and allowances (for 4 employees) to the client terminal 11, and the client terminal 11 transmits data including employee names and allowances (for 4 employees) to the
[0049]
When the
[0050]
Next, operations of the client terminals 12 and 13 and the
First, the second user requests to read the
[0051]
When the
Next, the second user edits desired data in the displayed record 41 (step S712). Here, it is assumed that the second user edits the amount of the allowance in the record 41 from 50,000 yen to 55,000 yen. FIG. 10B is a diagram showing a
[0052]
On the other hand, at this time, the third user requests to read the
When the
Next, the third user edits desired data in the displayed record 41 (step S812). Here, it is assumed that the third user edits the amount of the allowance in the record 41 from 50,000 yen to 57,000 yen. FIG. 10C is a diagram showing a
[0053]
On the other hand, the second user requests transmission of the edited
When receiving the record 45 from the client terminal 12, the
[0054]
On the other hand, the third user requests transmission of the edited
When the
The client terminal 13 displays the warning message received from the server 21 (step S814).
[0055]
In this way, the numbers in the records received from the client terminals 12 and 13 are compared with the numbers in the records stored in the
[0056]
Next, a data processing method according to the second embodiment of the present invention will be described.
FIG. 12 is a diagram showing a system for carrying out the data processing method according to the present embodiment.
As shown in FIG. 12, the
The client terminals 11 to 1n and the
[0057]
FIG. 13 is a diagram illustrating the
The
[0058]
Next, the operation of the
[0059]
First, the
Next, the
Then, the
As described above, the
[0060]
Next, an example using the data processing method according to the present embodiment will be described. In this embodiment, the data processing method according to the present embodiment is applied to settlement processing. In this embodiment, it is assumed that the calculation date is April 1, 1999 and the settlement date is March 31, 2000.
In the present embodiment, a slip database is constructed on the
FIG. 15 is a diagram showing a slip database in the
[0061]
Next, the operation of the
When the
First, the
[0062]
Next, the
Next, the
[0063]
As described above, by storing the
In addition, after storing the
[0064]
In each embodiment and each example described above, the number can be more reliably generated by installing a sub server in addition to the
[0065]
【The invention's effect】
As described above, according to the first aspect of the present invention, the record is updated only when the number in the record whose data is edited matches the number in the update target record. Duplicate updating can be prevented while enabling duplicate reading by the user. According to the second aspect of the present invention, Directed by one of multiple devices Only for records that contain a number less than the number in the record that contains the data Aggregate Since processing is performed, data input and data processing can be performed in parallel.
[Brief description of the drawings]
FIG. 1 is a diagram showing a system for carrying out a data processing method according to a first embodiment of the present invention.
FIG. 2 is a diagram illustrating a configuration of the server in FIG. 1;
FIG. 3 is a diagram showing a format of a system event number.
FIG. 4 is a flowchart showing start processing of the data processing method according to the first embodiment of the present invention.
FIG. 5 is a flowchart showing system event number generation processing of the data processing method according to the first embodiment of the present invention.
FIG. 6 is a flowchart showing record creation processing of the data processing method according to the first embodiment of the present invention.
FIG. 7 is a flowchart showing record read processing of the data processing method according to the first embodiment of the present invention.
FIG. 8 is a flowchart showing record update processing of the data processing method according to the first embodiment of the present invention.
FIG. 9 is a flowchart showing a record creation process of the data processing method according to the example of the first embodiment of the present invention;
FIG. 10 is a diagram showing an employee database processed by the data processing method according to the example of the first embodiment of the present invention.
FIG. 11 is a flowchart showing record update processing of the data processing method according to the example of the first embodiment of the present invention;
FIG. 12 is a diagram showing a system for performing a data processing method according to a second embodiment of the present invention.
13 is a diagram illustrating a configuration of the server in FIG. 12. FIG.
FIG. 14 is a flowchart showing record processing of the data processing method according to the second embodiment of the present invention.
FIG. 15 is a diagram showing a slip database processed by a data processing method according to an example of the second embodiment of the present invention;
FIG. 16 is a flowchart showing a settlement process of a data processing method according to an example of the second embodiment of the present invention.
[Explanation of symbols]
1, 2 Data processing system
11 to 1n client terminal
21, 51 servers
22 System Date Management Department
23 System event number generator
24 Record creation part
25 Record reading part
26 Record update section
27 Recording media
31 network
40 employee database
41-46 records
52 Record processing section
60 slip database
61-71 records
Claims (16)
複数のレコードを記録する記録手段と、
所定の起算日から現在までの累積日数を計数してその値を出力する累積日数計数手段と、
第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、前記累積日数計数手段が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するナンバー生成手段と、
前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを前記記録手段に書き込むレコード作成手段と、
前記複数の装置の内のいずれかの装置から前記記録手段に記録されたレコードを読み出す旨の要求を受信した場合に、要求されたレコードを前記記録手段から読み出して前記装置に出力するレコード読出し手段と、
前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録手段に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録手段に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録手段に書き込むレコード更新手段と、
を具備するデータ処理サーバ。A server that processes data by communicating with multiple devices,
Recording means for recording a plurality of records;
A cumulative day counting means for counting the cumulative number of days from a predetermined date to the present and outputting the value;
In response to the nth number generation request, the number x (n) satisfying x (i) <x (n) (i = 1,..., (N−1)), and the cumulative number of days is counted. Number generating means for generating a number having a value output by the means as an upper digit, a value of the number of times of activation or rebooting on that day as a middle digit, and a value of the number of times requested to be generated on that day as a lower digit ; ,
When data is received from any one of the plurality of devices, a number generation request is made to the number generation means, and the record including the received data and the number output from the number generation means is recorded in the recording means Record creation means to write to,
Record reading means for reading the requested record from the recording means and outputting it to the apparatus when receiving a request to read the record recorded in the recording means from any one of the plurality of devices When,
When a record whose data has been edited is received from any one of the plurality of devices, the number in the received record matches the number in the record to be updated recorded in the recording means. If the number in the received record matches the number in the record to be updated recorded in the recording means, a number generation request is made to the number generating means, and the received record A record updating means for writing a record in which the number in the record is replaced with the number output from the number generating means to the recording means;
A data processing server comprising:
複数のレコードを記録する記録手段と、
所定の起算日から現在までの累積日数を計数してその値を出力する累積日数計数手段と、
第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、前記累積日数計数手段が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成して出力するナンバー生成手段と、
前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを前記記録手段に書き込むレコード作成手段と、
前記記録手段に記録されているレコードの内で前記複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行うレコード処理手段と、
を具備するデータ処理サーバ。A server that processes data by communicating with multiple devices,
Recording means for recording a plurality of records;
A cumulative day counting means for counting the cumulative number of days from a predetermined date to the present and outputting the value;
In response to the nth number generation request, the number x (n) satisfying x (i) <x (n) (i = 1,..., (N−1)), and the cumulative number of days is counted. A number that generates and outputs a number in which the value output by the means is the upper digit, the value of the number of times it is started or rebooted on the day is the middle digit, and the number of times the number is requested to be generated on that day is the lower digit Generating means;
When data is received from any one of the plurality of devices, a number generation request is made to the number generation means, and the record including the received data and the number output from the number generation means is recorded in the recording means Record creation means to write to,
Record processing means for performing aggregation processing on records having a number smaller than the number in the record including data designated by any one of the plurality of devices among the records recorded in the recording means When,
A data processing server comprising:
前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録手段に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録手段に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録手段に書き込むレコード更新手段と、
を更に具備する請求項2記載のデータ処理サーバ。Record reading means for reading the requested record from the recording means and outputting it to the apparatus when receiving a request to read the record recorded in the recording means from any one of the plurality of devices When,
When a record whose data has been edited is received from any one of the plurality of devices, the number in the received record matches the number in the record to be updated recorded in the recording means. If the number in the received record matches the number in the record to be updated recorded in the recording means, a number generation request is made to the number generating means, and the received record A record updating means for writing a record in which the number in the record is replaced with the number output from the number generating means to the recording means;
The data processing server according to claim 2, further comprising:
前記ナンバー生成手段が、起動又はリブートされた時に前記ナンバー記録手段に記録されているナンバーの上位桁の値と前記累積日数計数手段が出力する累積日数の値とを比較し、前記ナンバー記録手段に記録されているナンバーの上位桁の値が前記累積日数計数手段が出力する累積日数の値以上の場合には、前記ナンバー記録手段に記録されているナンバーの上位桁を上位桁とし、前記ナンバー記録手段に記録されているナンバーの中位桁をインクリメントした値を中位桁とし、その日のその時からナンバー生成を要求された回数の値を下位桁とするナンバーを生成し、前記ナンバー記録手段に記録されているナンバーの上位桁の値が前記累積日数計数手段が出力する累積日数の値より小さい場合には、前記累積日数計数手段が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日のその時からナンバー生成を要求された回数の値を下位桁とするナンバーを生成することを特徴とする請求項1〜4のいずれか1項に記載のデータ処理サーバ。Further comprising number recording means for recording the number generated by the number generating means at a predetermined time,
When the number generating means is activated or rebooted, it compares the upper digit value of the number recorded in the number recording means with the value of the cumulative number of days output from the cumulative number of days counting means. If the value of the upper digit of the recorded number is equal to or greater than the value of the cumulative number of days output by the cumulative number of days counting means, the upper digit of the number recorded in the number recording means is the upper digit, and the number recording A number obtained by incrementing the middle digit of the number recorded in the means is set as the middle digit, and a number is generated with the value of the number of times the number generation is requested from that day of the day, and the number is recorded in the number recording means. If the value of the upper digit of the number is smaller than the value of the cumulative number of days output by the cumulative number of days counting unit, the value output by the cumulative number of days counting unit Claim the upper digit, and the value of the number of times that has been started or rebooted on that day and middle digit, and generating a number of values of the number of the day that time is requested number generated from the lower digit 1 The data processing server of any one of -4 .
所定の起算日から現在までの累積日数を計数してその値を出力するステップ(a)と、
ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、ステップ(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップ(b)と、
前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に記録するステップ(c)と、
前記複数の装置の内のいずれかの装置からレコードを読み出す旨の要求を受信した場合に、要求されたレコードを前記記録媒体から読み出して前記装置に出力するステップ(d)と、
前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録媒体に書き込むステップ(e)と、
を具備するデータ処理方法。A method of processing data by communicating with a plurality of devices,
A step (a) of counting a cumulative number of days from a predetermined calculation date to the present and outputting the value;
In number generating means, in response to the n-th number generation request, a x (i) <x (n ) (i = 1, ···, (n-1)) Number satisfy x (n) The value output in step (a) is the upper digit, the value of the number of times of activation or rebooting on the day is the middle digit, and the number of the number of times requested to be generated on that day is generated as the lower digit. Step ( b );
When data is received from any one of the plurality of devices, a number generation request is made to the number generation unit, and a record including the received data and the number output from the number generation unit is recorded on the recording medium. Recording step ( c );
When receiving a request to read a record from either of the devices of the plurality of devices, the step (d) to output the requested record to the device is read from the recording medium,
When a record whose data has been edited is received from any one of the plurality of devices, the number in the received record matches the number in the record to be updated recorded on the recording medium. If the number in the received record matches the number in the record to be updated recorded on the recording medium, a number generation request is made to the number generation means, and the received record A step ( e ) of writing a record in which the number in the list is replaced with the number output from the number generating means to the recording medium;
A data processing method comprising:
所定の起算日から現在までの累積日数を計数してその値を出力するステップ(a)と、
ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、ステップ(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、そ の日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップ(b)と、
前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に書き込むステップ(c)と、
前記記録媒体に記録されているレコードの内で前記複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行うステップ(d)と、
を具備するデータ処理方法。A method of processing data by communicating with a plurality of devices,
A step (a) of counting a cumulative number of days from a predetermined calculation date to the present and outputting the value;
In number generating means, in response to the n-th number generation request, a x (i) <x (n ) (i = 1, ···, (n-1)) Number satisfy x (n) a value step (a) is output as the upper digit, the number of the value of the number of times that has been started or rebooted on that day and middle digit, the value of the number of times required to numbers generated its day low order Generating step ( b );
When data is received from any one of the plurality of devices, a number generation request is made to the number generation unit, and a record including the received data and the number output from the number generation unit is recorded on the recording medium. Writing step ( c );
A step of performing a tabulation process on a record having a number smaller than a number in a record including data instructed by any one of the plurality of devices recorded in the recording medium ( d) )When,
A data processing method comprising:
前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録媒体に書き込むステップ(f)と、
を更に具備する請求項9記載のデータ処理方法。A step of reading the requested record from the recording medium and outputting it to the apparatus when receiving a request to read the record recorded on the recording medium from any one of the plurality of apparatuses ( e) )When,
When a record whose data has been edited is received from any one of the plurality of devices, the number in the received record matches the number in the record to be updated recorded on the recording medium. If the number in the received record matches the number in the record to be updated recorded on the recording medium, a number generation request is made to the number generation means, and the received record Writing a record in which the number in the list is replaced with the number output from the number generating means to the recording medium ( f ),
The data processing method according to claim 9 , further comprising:
ステップ(b)が、起動又はリブートされた時にステップ(g)において記録されたナンバーの上位桁の値とステップ(a)において出力された累積日数の値とを比較し、ステップ(g)において記録されたナンバーの上位桁の値がステップ(a)において出力された累積日数の値以上の場合には、ステップ(g)において記録されたナンバーの上位桁を上位桁とし、ステップ(g)において記録されたナンバーの中位桁をインクリメントした値を中位桁とし、その日のその時からナンバー生成を要求された回数の値を下位桁とするナンバーを生成し、ステップ(g)において記録されたナンバーの上位桁の値がステップ(a)において出力された累積日数の値より小さい場合には、ステップ(a)において出力された値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日のその時からナンバー生成を要求された回数の値を下位桁とするナンバーを生成するステップを含むことを特徴とする請求項8〜11のいずれか1項に記載のデータ処理方法。A step (g) of recording the number generated in step ( b ) at a predetermined time;
When step ( b ) is started or rebooted, the upper digit value of the number recorded in step (g) is compared with the cumulative number of days output in step ( a ), and recorded in step (g). If the upper digit value of the number is greater than or equal to the cumulative number of days output in step ( a ), the upper digit of the number recorded in step (g) is taken as the upper digit and recorded in step (g). The number obtained by incrementing the middle digit of the number is used as the middle digit, and a number is generated with the value of the number of times the number is requested to be generated from that day of the day as the lower digit, and the number recorded in step (g) If the value of the upper digit is smaller than the value of the cumulative number of days which is output in step (a), the output value in step (a) and higher digits , Claim 8, characterized in that it comprises the step of generating a number of the day the value of count that was started or rebooted and middle digits, the value of the number of times that has been requested number generated from that time of the day and low-order digit The data processing method of any one of -11 .
所定の起算日から現在までの累積日数を計数してその値を出力する手順(a)と、
ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、手順(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日 にナンバー生成を要求された回数の値を下位桁とするナンバーを生成する手順(b)と、
前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に記録する手順(c)と、
前記複数の装置の内のいずれかの装置からレコードを読み出す旨の要求を受信した場合に、要求されたレコードを前記記録媒体から読み出して前記装置に出力する手順(d)と、
前記複数の装置の内のいずれかの装置からデータが編集されたレコードを受信した場合に、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致するか否かをチェックし、受信したレコード内のナンバーと前記記録媒体に記録されている更新対象のレコード内のナンバーとが一致する場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したレコード内のナンバーを前記ナンバー生成手段から出力されたナンバーで置き換えたレコードを前記記録媒体に書き込む手順(e)と、
を前記CPUに実行させるためのプログラムを記録した記録媒体。A CPU-readable recording medium for processing data by communicating with a plurality of devices,
A procedure (a) of counting the cumulative number of days from a predetermined date of calculation to the present and outputting the value;
In number generating means, in response to the n-th number generation request, a x (i) <x (n ) (i = 1, ···, (n-1)) Number satisfy x (n) , the value Step (a) is output as the upper digit, and the value of the number of times that has been started or rebooted on that day and middle digit, generating a number of values of the number of times required to number generator that day and lower digit Step ( b )
When data is received from any one of the plurality of devices, a number generation request is made to the number generation unit, and a record including the received data and the number output from the number generation unit is recorded on the recording medium. Recording procedure ( c );
When receiving a request to read a record from any one of the plurality of devices, a procedure of reading the requested record from the recording medium and outputting it to the device ( d );
When a record whose data has been edited is received from any one of the plurality of devices, the number in the received record matches the number in the record to be updated recorded on the recording medium. If the number in the received record matches the number in the record to be updated recorded on the recording medium, a number generation request is made to the number generation means, and the received record A procedure ( e ) for writing a record in which a number in the record is replaced with a number output from the number generating means to the recording medium;
A recording medium on which a program for causing the CPU to execute is recorded.
所定の起算日から現在までの累積日数を計数してその値を出力する手順(a)と、
ナンバー生成手段において、第n番目のナンバー生成要求に応じて、x(i)<x(n)(i=1、・・・、(n−1))を満たすナンバーx(n)であって、手順(a)が出力した値を上位桁とし、その日に起動又はリブートされた回数の値を中位桁とし、その日にナンバー生成を要求された回数の値を下位桁とするナンバーを生成する手順(b)と、
前記複数の装置の内のいずれかの装置からデータを受信した場合に、前記ナンバー生成手段にナンバー生成要求を行い、受信したデータ及び前記ナンバー生成手段から出力されたナンバーを含むレコードを記録媒体に書き込む手順(c)と、
前記記録媒体に記録されているレコードの内で前記複数の装置の内のいずれかの装置によって指示されたデータを含むレコード内のナンバーより小さいナンバーを有するレコードに対して集計処理を行う手順(d)と、
を前記CPUに実行させるためのプログラムを記録した記録媒体。A CPU-readable recording medium for processing data by communicating with a plurality of devices,
A procedure (a) of counting the cumulative number of days from a predetermined date of calculation to the present and outputting the value;
In number generating means, in response to the n-th number generation request, a x (i) <x (n ) (i = 1, ···, (n-1)) Number satisfy x (n) The number output by the procedure (a) is the upper digit, the number of times of activation or rebooting on the day is the middle digit, and the number of times the number is requested to be generated that day is the lower digit. Step ( b )
When data is received from any one of the plurality of devices, a number generation request is made to the number generation unit, and a record including the received data and the number output from the number generation unit is recorded on the recording medium. Writing procedure ( c );
A procedure of performing a tabulation process on a record having a number smaller than the number in a record including data instructed by any one of the plurality of devices recorded in the recording medium ( d )When,
A recording medium on which a program for causing the CPU to execute is recorded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001023005A JP3615150B2 (en) | 2001-01-31 | 2001-01-31 | Data processing server and method, and recording medium on which data processing program is recorded |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001023005A JP3615150B2 (en) | 2001-01-31 | 2001-01-31 | Data processing server and method, and recording medium on which data processing program is recorded |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002229833A JP2002229833A (en) | 2002-08-16 |
JP3615150B2 true JP3615150B2 (en) | 2005-01-26 |
Family
ID=18888340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001023005A Expired - Fee Related JP3615150B2 (en) | 2001-01-31 | 2001-01-31 | Data processing server and method, and recording medium on which data processing program is recorded |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3615150B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5105922B2 (en) * | 2007-03-22 | 2012-12-26 | 日本電気株式会社 | Information update system, information storage server, information update method, and program |
CN103384399B (en) | 2012-05-02 | 2017-04-12 | 阿里巴巴集团控股有限公司 | Method for near-field information transmission, information transmitting client-side, information receiving client-side and information system |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04336342A (en) * | 1991-05-14 | 1992-11-24 | Nec Software Kansai Ltd | Record update control system |
JPH06332856A (en) * | 1993-05-18 | 1994-12-02 | Nippon Yunishisu Kk | On-line job processing system |
JP2002236747A (en) * | 2001-02-07 | 2002-08-23 | Sanyo Electric Co Ltd | Device for inputting diagnosis and treatment data |
-
2001
- 2001-01-31 JP JP2001023005A patent/JP3615150B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002229833A (en) | 2002-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3257002B1 (en) | Agent-based turing complete transactions integrating feedback within a blockchain system | |
CN102142024B (en) | Use in distributed data base and increase progressively seizure to carry out logical data backup and rollback | |
JP4148529B2 (en) | System, method and program for checking index consistency in a database | |
US8832159B2 (en) | Systems and methods for asynchronous schema changes | |
JP5103807B2 (en) | Control program, control method, information processing apparatus, and information processing system | |
US20080126444A1 (en) | Hybrid computer restore using network service | |
DE102005038866A1 (en) | Secure electronic delivery seal for an information handling system | |
JPH07262072A (en) | File controller | |
JP2006508473A (en) | Data recovery technology in storage systems | |
CN103842969A (en) | Information processing system | |
WO2007105274A1 (en) | Applicable patch selecting device and applicable patch selecting method | |
JP2003280972A (en) | File maintenance system and nas server | |
WO2005114487A2 (en) | Method and apparatus for updating a database using table staging and queued relocation and deletion | |
CN113141369B (en) | Artificial intelligence-based firewall policy management method and related equipment | |
JP3615150B2 (en) | Data processing server and method, and recording medium on which data processing program is recorded | |
US8229934B2 (en) | System and program for collecting documents | |
JP2006277574A (en) | Software configuration management system for medical equipment | |
WO2011042961A1 (en) | Update management device and method | |
KR102164779B1 (en) | Blockchains with modifiable recorded transactions | |
EP3779755A1 (en) | A computer-implemented method for cross-chain-interoperability | |
JP4348770B2 (en) | Design drawing editing history management system | |
JP2008293229A (en) | History data processor and history data processing method | |
JPH10154090A (en) | Data management system | |
JP2000010766A (en) | System applying program correction extraction and storage medium storing program applying correction extraction | |
JP2004157794A (en) | Electronic chart system |
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 |