JP2532378B2 - Data file data arrangement method - Google Patents

Data file data arrangement method

Info

Publication number
JP2532378B2
JP2532378B2 JP61013049A JP1304986A JP2532378B2 JP 2532378 B2 JP2532378 B2 JP 2532378B2 JP 61013049 A JP61013049 A JP 61013049A JP 1304986 A JP1304986 A JP 1304986A JP 2532378 B2 JP2532378 B2 JP 2532378B2
Authority
JP
Japan
Prior art keywords
data
area
file
code number
written
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 - Lifetime
Application number
JP61013049A
Other languages
Japanese (ja)
Other versions
JPS62172426A (en
Inventor
喜代治 久米
稔 渡辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP61013049A priority Critical patent/JP2532378B2/en
Publication of JPS62172426A publication Critical patent/JPS62172426A/en
Application granted granted Critical
Publication of JP2532378B2 publication Critical patent/JP2532378B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、多数の情報を各情報に固有に付されたコー
ド番号順にデータファイルの各データ領域に書込むデー
タファイルのデータ整理方法に関する。
The present invention relates to a data file data organization method for writing a large number of information in each data area of a data file in the order of code numbers uniquely assigned to each information.

[従来の技術] 例えば、デパートや大規模スーパーマーケット等にて
採用されているPOS(販売時点情報管理)システムにお
いて、1台のファイル制御部に伝送路で多数の電子キャ
ッシュレジスタが接続されている。そして、ファイル制
御部のRAM等で形成された内部記憶部内には、各売場で
販売する全部の商品に対する、各商品の品名,単価,部
門等の商品データを商品コード別に記憶するとともに売
上点数,売上金額等の売上データを商品コード別に集計
するマスターファイル(データファイル)が形成されて
いる。
[Prior Art] For example, in a POS (point-of-sale information management) system adopted in department stores, large-scale supermarkets, etc., a single file control unit is connected with a large number of electronic cash registers via a transmission path. Then, in the internal storage unit formed by the RAM or the like of the file control unit, product data such as the product name, unit price, and department of each product for all products sold at each sales floor is stored for each product code, and the number of sales points, A master file (data file) that collects sales data such as sales amount by product code is formed.

そして、各電子キャッシュレジスタにて販売商品の商
品コードをキーボード又はバーコードスキャナー等にて
入力すると、この商品コードは伝送路を介してファイル
制御部へ伝送される。ファイル制御部は受信した商品コ
ードでもって前記マスターファイルを検索して、該当商
品コードの品名,単価等の商品データを読出し該当電子
キャッシュレジスタに返信する。商品データを受信した
電子キャッシュレジスタはこの商品データを用いて販売
登録業務を実行する。そして、販売点数,販売金額等の
販売データを再びファイル制御部へ送信する。ファイル
制御部は受信した販売データでマスターファイルの該当
商品コードの売上点数および売上金額を更新する。
Then, when the product code of the product sold by each electronic cash register is input with a keyboard or a barcode scanner, the product code is transmitted to the file control unit via the transmission path. The file control unit searches the master file with the received product code, reads the product data such as the product name and unit price of the product code, and returns it to the electronic cash register. The electronic cash register that has received the product data executes the sales registration operation using this product data. Then, the sales data such as the number of sales and the sales amount are transmitted again to the file control unit. The file control unit updates the sales number and sales amount of the corresponding product code in the master file with the received sales data.

このように、ファイル制御部においては、各電子キャ
ッシュレジスタとデータの授受を行なう度に商品コード
でマスターファイル内を検索する必要がある。したがっ
て、この検索に要する時間を短縮することによって各電
子キャッシュレジスタにおける各商品の販売登録業務の
能率を向上できる。そして、一般にこの商品コードの検
索に要する時間を短縮するために、バイナリ検索法が採
用されている。このバイナリ検索法は、周知のように、
各商品の商品データおよび売上データ等の情報を商品コ
ードのコード番号順にマスターファイルの各データ領域
に記憶させ、商品コード検索時に、データ領域の領域番
号順に検索するのではなくて中央に位置するデータ領域
の商品コードから検索を開始し、該当商品コードとの大
小を比較して次に検索するデータ領域を決定する。この
ようなバイナリ検索法を採用することによって検索時間
を大幅に短縮できる。特に取扱う商品数が多い場合は有
効である。
As described above, the file control unit needs to search the master file with the product code each time data is exchanged with each electronic cash register. Therefore, by shortening the time required for this search, it is possible to improve the efficiency of sales registration work for each product in each electronic cash register. Then, in general, a binary search method is adopted in order to shorten the time required to search for the product code. This binary search method is, as is well known,
Information such as product data and sales data for each product is stored in each data area of the master file in the order of the code number of the product code, and when searching for the product code, the data located in the center rather than the area number of the data area is searched. The search is started from the product code in the area, and the size of the product code is compared to determine the data area to be searched next. By adopting such a binary search method, the search time can be greatly reduced. This is especially effective when the number of products handled is large.

[発明が解決しようとする問題点] しかしながら上記のようなバイナリ検索法を採用した
POSシステムにおいても次のような問題があった。すな
わち、このバイナリ検索法においては、マスターファイ
ル内において、検索される商品コードは各データ領域に
必ずコード番号順に並んでいることが絶対条件となる。
すなわち、コード番号の欠番が有るのは影響ないが、コ
ード番号の大小が入替わったり、同一コード番号が生じ
ていた場合は正確に商品コードが検索されなくて、該当
コード無しのエラー処理となってしまう。
[Problems to be Solved by the Invention] However, the above binary search method is adopted.
The POS system also had the following problems. That is, in this binary search method, the absolute condition is that the product codes to be searched are always arranged in each data area in the order of the code number in the master file.
That is, there is no effect that there is a missing code number, but if the code numbers are changed in size or the same code number occurs, the product code will not be searched correctly and error processing without the corresponding code will occur. Will end up.

このような状態を解消するためには大小が入替わった
商品コードを正規のデータ領域に書込み直せばよい。ま
た、二重に書込まれていた場合は不要な商品コードを消
去すればよい。しかしなが、従来のバイナリ検索法では
書直すべき商品コードおよび消去すべき商品コードを検
索することも不可能である。このような場合マスターフ
ァイルの全データの書込みを最初からやり直す必要があ
る。
In order to eliminate such a state, it is sufficient to rewrite the product code whose size is changed in the regular data area. In addition, if it is written twice, the unnecessary product code may be deleted. However, it is impossible to search for a product code to be rewritten and a product code to be erased by the conventional binary search method. In such a case, it is necessary to rewrite all the data in the master file from the beginning.

本発明はこのような事情に基づいてなされたものであ
り、その目的とするところは、データファイルの各デー
タを一旦別の記録媒体にデータセーブしたのち、この記
録媒体に書込まれた各データをデータファイル内でコー
ド番号順に並ぶようにデータファイルの各データ領域に
書込むことによって、データファイル内におけるコード
番号の大小の入違いおよび二重書込を防止できるデータ
ファイルのデータ整理方法を提供することにある。
The present invention has been made under such circumstances, and an object of the present invention is to temporarily save each data of a data file in another recording medium and then write each data written in this recording medium. By writing data in each data area of the data file so that they are arranged in the order of the code number in the data file, we provide a data file data organization method that can prevent the code numbers from being mixed up and down and double writing in the data file. To do.

[問題点を解決するための手段] 本発明のデータファイルのデータ整理方法において
は、データファイルの各データ領域に記憶された各デー
タを一旦前記データファイルとは別の記録媒体の各記録
領域に書込(デートセーブし)、データセーブされた後
のデータファイルの各データ領域をクリアした後、記録
媒体の各記録領域に書込まれた各データを記録領域の領
域番号順に順次読出し、この読出したデータのコード番
号でもってデータファイルの各データ領域にこのデータ
より先に書込まれたデータの各コード番号を検索し、こ
のコード検索にて該当コード番号が検索されなかったと
き、この該当コード番号より大きいコード番号を有する
各データを格納する各データ領域を順次領域番号の大き
い方へ1データ領域ずつシフトさせる。次に、シフトさ
れた後の空きデータ領域へ該当コード番号を有するデー
タを書込む。
[Means for Solving Problems] In the data organization method of the data file of the present invention, each data stored in each data area of the data file is temporarily stored in each recording area of a recording medium different from the data file. After clearing each data area of the data file after writing (data saving) and data saving, each data written in each recording area of the recording medium is sequentially read in the order of the area number of the recording area, and this reading is performed. When the code number of the data written earlier than this data is searched for in each data area of the data file by the code number of the data, and the corresponding code number is not found in this code search, this code Each data area for storing each data having a code number larger than the number is sequentially shifted one data area to the larger area number. Then, the data having the corresponding code number is written in the empty data area after the shift.

一方、先の発明におけるコード検索にて該当コード番
号が検索されたとき、該当コード番号を有するデータ領
域に先に書込まれたデータおよび後から前記記録媒体か
ら読出されたデータとを二重書込データとして印字出力
するようにしたものである。
On the other hand, when the corresponding code number is searched by the code search in the previous invention, the data previously written in the data area having the corresponding code number and the data read later from the recording medium are duplicated. The data is printed out as embedded data.

また別の発明においては、前述の二重書込データを内
部記憶部に記憶するようにしたものである。
In another invention, the above-mentioned double write data is stored in the internal storage unit.

さらに別の発明においては、コード検索にて該当コー
ド番号が検索されたとき、該当コード番号が書込まれた
データ領域のデータを後から記録媒体から読出された該
当コード番号のデータに書替えるようにしたものであ
る。
In still another invention, when the corresponding code number is searched by the code search, the data in the data area in which the corresponding code number is written is rewritten to the data of the corresponding code number read from the recording medium later. It is the one.

[作用] このように構成されたデータファイルのデータ整理方
法であると、データファイルの各データ領域に記憶され
た各データはコード番号に関係なく一旦全部記録媒体の
各記録領域に書込まれる。そして、この記録媒体の各記
録領域から順次読出されて、データファイルの各データ
領域に書込まれるときにコード番号順に並ぶように書込
まれる。したがって、たとえデータファイルでコード番
号が入替っていたとしても、記録媒体から再びデータフ
ァイルの各データ領域に書込まれるときにその入替りは
修正されることになる。
[Operation] According to the data organization method of the data file configured as described above, each data stored in each data area of the data file is once written in each recording area of the recording medium regardless of the code number. Then, the data is sequentially read from each recording area of this recording medium, and when they are written in each data area of the data file, they are written so as to be arranged in the order of code numbers. Therefore, even if the code numbers are replaced in the data file, the replacement will be corrected when the data is written in each data area of the data file again from the recording medium.

また、記録媒体からデータファイルの各データ領域に
書込むときに二重コード番号が生じた場合は該当コード
番号のデータが二重書込データとして印字出力される。
If a double code number occurs when writing from the recording medium to each data area of the data file, the data of the corresponding code number is printed out as double write data.

また別の発明においては、上記二重書込データが内部
記憶部に記憶される。
In another invention, the double write data is stored in the internal storage unit.

さらに別の発明においては、記録媒体からデータファ
イルの各データ領域に書込むときに二重コード番号が生
じた場合は、後から記録媒体から読出された該当コード
番号のデータが優先して前記データ領域に書込まれる。
In another aspect of the invention, when a double code number occurs when writing from the recording medium to each data area of the data file, the data of the corresponding code number read from the recording medium later is given priority. Written in the area.

[実施例] 以下本発明の一実施例を図面を用いて説明する。[Embodiment] An embodiment of the present invention will be described below with reference to the drawings.

第1図は実施例のデータファイルのデータ整理方法を
適用したPOSシステムを示す概略構成図である。すなわ
ち、1台のファイル制御部1に複数台の電子キャッシュ
レジスタ2が伝送路3で接続されている。ファイル制御
部1にはデータファイルとしてのマスターファイルが形
成されたRAM4および記録媒体としてのフロッピーディス
ク(FDK)に対してデータの書込み読出しを実行するフ
ロッピーディスク・ドライブ装置(FDD)5が接続され
ている。
FIG. 1 is a schematic configuration diagram showing a POS system to which the data organization method of data files of the embodiment is applied. That is, a plurality of electronic cash registers 2 are connected to one file control unit 1 by a transmission line 3. The file control unit 1 is connected to a RAM 4 in which a master file as a data file is formed and a floppy disk drive device (FDD) 5 for writing / reading data to / from a floppy disk (FDK) as a recording medium. There is.

前記各電子キャッシュレジスタ2は第2図に示すよう
に、筐体6の前面にキーボード7が設けられ、前面上部
に表示部8,前面中部にレシート発行口9,下部にドロワー
10,上面に客用の表示部11が設けられている。さらに、
筐体6には販売商品に付されたこの商品の商品コードを
示すバーコードを読取るためのバーコードスキャナー12
が接続されている。
As shown in FIG. 2, each of the electronic cash registers 2 is provided with a keyboard 7 on the front surface of a housing 6, a display portion 8 on the upper front portion, a receipt issuing port 9 on the front middle portion, and a drawer on the lower portion.
10, a display unit 11 for customers is provided on the upper surface. further,
The housing 6 has a bar code scanner 12 for reading a bar code indicating the product code of the product attached to the product for sale.
Is connected.

前記キーボード7には販売商品の商品コードや販売点
数等の数字を置数するための置数キー13,部門コードを
入力するための部門キー14,合計金額を算出するための
合計キー15等の各種登録キーが配列されている。また、
このキーボート7に隣接して[登録][点検][精算]
[設定]等の各種業務モードを選択設定するためのコン
トロールキー16が設けられている。
On the keyboard 7, there are a number key 13 for inputting numbers such as product codes and sales points of sold products, a department key 14 for inputting a department code, and a total key 15 for calculating the total amount of money. Various registration keys are arranged. Also,
Adjacent to this keyboard 7 [Registration] [Inspection] [Settlement]
A control key 16 for selectively setting various business modes such as [Setting] is provided.

第3図は各電子キャッシュレジスタ2の概略構成を示
すブロック図であり、図中17はキーボード7又はバーコ
ードスキャナー12から入力したデータに基づき各種演算
処理を実施するCPU(中央処理装置)である。このCPU17
はアドレスバス18,データバス19,制御線20を介して制御
プログラム等を記憶するROM21,キーボード7から入力さ
れたデータや各種合計器等の可変データを記憶するRAM2
2を制御する。また、バーコードスキャナー12で読取っ
た商品コードが入力されるスキャナー入力回路23,コン
トロールキー16から各種指令が入力されるコントロール
キー入力回路24,キーボード7から各種キー信号が入力
されるキーボード入力回路25,表示部8,11へ表示データ
を送出する表示制御回路26,レシートへ各種データを印
字出力するドットプリンタ27のプリンタ制御回路28,伝
送路3に接続された伝送コネクタ29を介してファイル制
御部1に接続された伝送制御回路30が前記データバス19
および制御線20を介してCPU17に接続されている。
FIG. 3 is a block diagram showing a schematic configuration of each electronic cash register 2, and 17 in the figure is a CPU (central processing unit) that executes various arithmetic processing based on data input from the keyboard 7 or the bar code scanner 12. . This CPU17
Is a ROM 21 that stores control programs and the like via the address bus 18, data bus 19 and control line 20, RAM 2 that stores data input from the keyboard 7 and variable data such as various totalizers.
Control 2 Further, a scanner input circuit 23 for inputting a product code read by the barcode scanner 12, a control key input circuit 24 for inputting various commands from the control key 16, and a keyboard input circuit 25 for inputting various key signals from the keyboard 7. A display control circuit 26 that sends display data to the display units 8 and 11, a printer control circuit 28 of a dot printer 27 that prints out various data to a receipt, and a file control unit via a transmission connector 29 connected to the transmission path 3. 1, the transmission control circuit 30 connected to the data bus 19
It is also connected to the CPU 17 via the control line 20.

第4図は前記ファイル制御部1の概略構成を示すブロ
ック図である。CPU31はアドレスバス32,データバス33,
制御線34を介して各種制御プログラムを記憶するROM35,
各売場で販売する全商品に対する各商品の商品データや
売上データを商品コード別に集計するマスターファイル
等の可変データを記憶するRAM4を制御する。また、この
ファイル制御部1をホストコンピュータ等の外部制御部
に接続するための出力ポート36,キーボード37から各種
業務指令が入力されるキーボード入力回路38,伝送路3
および伝送コネクタ39を介して各電子キャッシュレジス
タ2に接続された伝送制御回路40,フロッピーディスク
・ドライブ装置(FDD)5を駆動制御するFDD制御回路41
がデータバス33および制御線34を介して前記CPU31に接
続されている。
FIG. 4 is a block diagram showing a schematic configuration of the file control unit 1. CPU31 has address bus 32, data bus 33,
ROM 35 for storing various control programs via the control line 34,
The RAM 4 that stores variable data such as a master file that aggregates product data and sales data for each product for each product sold at each sales floor by product code is controlled. Further, an output port 36 for connecting the file control unit 1 to an external control unit such as a host computer, a keyboard input circuit 38 for inputting various business commands from a keyboard 37, a transmission line 3
And a transmission control circuit 40 connected to each electronic cash register 2 via a transmission connector 39, and an FDD control circuit 41 for driving and controlling a floppy disk drive device (FDD) 5.
Are connected to the CPU 31 via a data bus 33 and a control line 34.

前記RAM4内には、各電子キャッシュレジスタ2との間
で各種データを授受するための送受信バッファ等の各種
ワーク領域の他に、第5図に示すようにマスターファイ
ルR1と、このマスターファイルR1に同一商品コードが2
個以上記憶されていた場合にその商品コードおよび品
名,単価,部門等の商品データを記憶する二重データ記
憶領域R2とが形成されている。
In the RAM 4, in addition to various work areas such as a transmission / reception buffer for transmitting / receiving various data to / from each electronic cash register 2, a master file R1 and a master file R1 are stored in the master file R1 as shown in FIG. Same product code is 2
A dual data storage area R2 is formed to store product data such as product code, product name, unit price, and department when more than one product is stored.

さらに、前記マスターファイルR1は1からMまでの領
域番号Nが付されたM個のデータ領域R3で構成されてい
る。そして、各データ領域R3は商品の商品コードを格納
するコード領域R4と、商品の品名,単価,部門,ステー
タス等の商品データを記憶する商品データ領域R5と、売
上点数,売上金額等の売上データを累積記憶する売上デ
ータ領域R6とで構成されている。なお、上記商品データ
および売上データとで商品コードに対する情報を構成し
ている。
Further, the master file R1 is composed of M data areas R3 assigned area numbers N from 1 to M. Each data area R3 is a code area R4 that stores the product code of the product, a product data area R5 that stores product data such as the product name, unit price, department, and status of the product, and sales data such as the number of sales and the amount of sales. And a sales data area R6 for cumulatively storing. The product data and the sales data constitute information about the product code.

また、第6図はフロッピーディスク・ドライブ装置
(FDD)5にセットされるフロッピーディスク(FDK)42
の記録フォーマットを示すものであり、RAM4のマスター
ファイルR1の各データ領域R3から読出されたM個の、商
品データおよび売上データからなる情報と商品コードと
で構成されるデータを記録する記録領域R7が形成されて
いる。
Also, FIG. 6 shows a floppy disk (FDK) 42 set in the floppy disk drive device (FDD) 42.
And a recording area R7 for recording data consisting of M pieces of information consisting of product data and sales data and a product code read from each data area R3 of the master file R1 of the RAM4. Are formed.

しかして、前記ファイル制御部1のCPU31は電源が投
入され、各種の初期処理が終了すると第7図のメインル
ーチンを実行するように構成されている。すなわち、P1
にて例えばキーボード37からマスターファイルR1の各デ
ータ領域R3に記録されたデータをフロッピーディスク
(FDK)42へ書込むデータセーブ指令が入力すると、読
出しを実行するデータ領域R3の領域番号Nを先頭番号の
1に設定する。そして、P2にて領域番号Nのデータ領域
R3から商品コード,商品データ,売上データからなるデ
ータを読出しFDD制御回路41を介してフロッピーディス
ク・ドライブ装置(FDD)5にセットされたフロッピー
ディスク(FDK)42のN番目の記録領域R7に書込む。そ
して、領域番号Nを1だけ増加する。そして、増加後の
領域番号NがマスターファイルR1のデータ領域数Mを越
えていないことを確認すると、P2へ戻り、次の領域番号
のデータ領域R3からデータを読出してフロッピーディス
ク(FDK)42の次の記録領域R7に書込む。領域番号Nが
データ領域数Mを越えると、すべてのデータのフロッピ
ーディスク42に対するデータセーブ処理を終了し、マス
ターファイルR1のM個のデータ領域R3をクリアする。
Then, the CPU 31 of the file control unit 1 is configured to execute the main routine of FIG. 7 when the power is turned on and various kinds of initial processing are completed. That is, P1
When, for example, a data save command for writing the data recorded in each data area R3 of the master file R1 to the floppy disk (FDK) 42 is input from the keyboard 37, the area number N of the data area R3 to be read is set as the top number. Set to 1. Then, in P2, the data area of area number N
Data consisting of product code, product data, and sales data is read from R3, and written to the Nth recording area R7 of the floppy disk (FDK) 42 set in the floppy disk drive device (FDD) 5 via the FDD control circuit 41. Put in. Then, the area number N is incremented by 1. When it is confirmed that the increased area number N does not exceed the number M of data areas of the master file R1, the process returns to P2 and the data is read from the data area R3 of the next area number to read the data from the floppy disk (FDK) 42. Write to the next recording area R7. When the area number N exceeds the number M of data areas, the data save processing for the floppy disk 42 of all data is completed, and the M data areas R3 of the master file R1 are cleared.

また、P3にてキーボード37からフロッピーディスク42
にデータセーブされた各データのマスターファイルR1へ
の書込みを示すデータロード指令が入力されると、フロ
ッピーディスク42の読出しすべき記録領域7の領域番号
Nを先頭番号の1に設定する。そして、P4にてフロッピ
ーディスク・ドライブ装置(FDD)5を介してフロッピ
ーディスク(FDK)42のN番目の記録領域R7に記録され
ているデータを読出す。次にP5にて読出したデータに含
まれる商品コード(コード番号)でもって、マスターフ
ァイルR1の各商品コード領域R4に既に格納されている各
商品コード(コード番号)をバイナリ検索する。
Also, on P3, from the keyboard 37 to the floppy disk 42
When a data load command indicating the writing of the respective data saved in the master file R1 is input, the area number N of the recording area 7 to be read of the floppy disk 42 is set to the head number 1. Then, at P4, the data recorded in the Nth recording area R7 of the floppy disk (FDK) 42 is read out via the floppy disk drive device (FDD) 5. Next, each product code (code number) already stored in each product code region R4 of the master file R1 is binary-searched with the product code (code number) included in the data read in P5.

このバイナリ検索処理を第8図に示す。この処理が開
始されると、フロッピーディスク42から読出したデータ
の商品コード(コード番号)である検索コードAを決定
する。そして、マスターファイルR1の商品コード領域R4
の先頭領域(領域番号=1)に格納されている商品コー
ドA1を読出す。
This binary search process is shown in FIG. When this process is started, the search code A which is the product code (code number) of the data read from the floppy disk 42 is determined. Then, the product code area R4 of the master file R1
The product code A 1 stored in the first area (area number = 1) of is read.

なお、フロッピーディスク42からの読出しを実行した
領域番号Nが1のときは、マスターファイルR1の先頭領
域にはデータが未設定であり商品コードA1を読出すこと
ができないので、該当商品コードAと同一のコードはマ
スターファイルR1内から検索されなかったと判断してこ
のバイナリ検索処理を終了する。
When the area number N read from the floppy disk 42 is 1, the data is not set in the leading area of the master file R1 and the product code A 1 cannot be read. It is determined that the code identical to that is not retrieved from the master file R1, and this binary retrieval process is terminated.

一方、領域番号Nが2以上のときには、マスターファ
イルR1には既に領域番号1から領域番号N−1までにデ
ータが書き込まれているので、P51にて検索コードAと
先頭領域から読出した商品コードA1とが等しいか否かを
判断する。そして、等しければ該当商品コードAと同一
のコードがマスターファイルR1内から検索されたと判断
して、このバイナリ検索処理を終了する。
On the other hand, when the area number N is 2 or more, since data is already written in the area number 1 to area number N-1 in the master file R1, the search code A and the product code read from the leading area in P51 are read. Determines if A 1 is equal. If they are equal, it is determined that the same code as the corresponding product code A has been retrieved from the master file R1, and this binary retrieval processing is terminated.

P51にて検索コードAが商品コードA1と等しくない場
合はP52にて大小を判別する。そして、検索コードAが
商品コードA1より小さい場合は、該当商品コードAと同
一のコードはマスターファイルR1内から検索されなかっ
たと判断してこのバイナリ検索処理を終了する。
If the search code A is not equal to the product code A 1 in P51, the size is determined in P52. Then, when the search code A is smaller than the product code A 1, it is determined that the same code as the product code A has not been searched for in the master file R 1, and this binary search process is terminated.

P52にて検索コードAが商品コードA1より大きい場合
は、マスターファイルR1の領域番号N−1、すなわちマ
スターファイルR1の既にデータが書き込まれた領域の中
で最終領域の商品コードAN-1を読出して検索コードAと
比較する。その結果、前と同様に等しければ該当商品コ
ードが検索されたと判断してこのバイナリ検索処理を終
了し、検索コードAが読出した商品コードAN-1より大き
い場合は該当商品コードは検索されなかったと判断して
このバイナリ検索処理を終了する。
If the search code A is larger than the product code A 1 in P52, the product code A N-1 of the final area in the area number N-1 of the master file R1, that is, the area where the data has already been written in the master file R1. Is read and compared with the search code A. As a result, if it is the same as before, it is determined that the corresponding product code has been searched, and this binary search process is terminated. If the search code A is larger than the read product code A N-1, the corresponding product code is not searched. If so, the binary search process ends.

検索コードAが商品コードAN-1より小さい場合は検索
領域を規定する下側領域番号N0を1に設定し、上側領域
番号N1をN−1に設定する。そして、P53にて領域番号N
0から領域番号N1までに存在する全商品コード領域数の1
/2の位置に存在する商品コード領域R4、すなわち領域番
号Hが次式で示される商品コード領域R4の商品コードAH
を読出す。
When the search code A is smaller than the product code A N-1, the lower area number N 0 defining the search area is set to 1 and the upper area number N 1 is set to N-1. Then, in P53, the area number N
0 1 of the total product code number of regions present in up to area number N 1 from
The product code area R4 existing at the position of / 2, that is, the product code A H of the product code area R4 whose area number H is represented by the following formula.
Read out.

H=NH=(N0+N1)/2 なお、上式の計算結果が整数値にならなかった場合は
端数を切上げる。
H = N H = (N 0 + N 1 ) / 2 If the calculation result of the above equation does not yield an integer value, round up.

そして、検索コードAと読出した商品コードAHとを比
較する。検索コードAと商品コードAHとが等しい場合は
該当商品コードが検索されたと判断してこのバイナリ検
索処理を終了する。
Then, the search code A and the read product code A H are compared. If the search code A and the product code A H are equal, it is determined that the corresponding product code has been searched, and this binary search processing is terminated.

等しくなければ、P54にて下側領域番号N0と上側領域
番号N1とが未だ一致していないことを確認の後、前述の
検索コードAと商品コードAHの大小を調べる。そして、
検索コードAが商品コードAHより大きい場合は、下側領
域番号N0をこの商品コードAHの領域番号NHに設定し、上
側領域番号N1は変化させずに領域番号N1とする。一方、
検索コードAが商品コードAHより小さい場合は、下側領
域番号N0は変化させずに領域番号N0とし、上側領域番号
N1をこの商品コードAHの領域番号NHに設定する。
If they are not equal, it is confirmed in P54 that the lower area number N 0 and the upper area number N 1 do not yet match, and then the magnitude of the search code A and the product code A H is checked. And
When the search code A is larger than the product code A H , the lower area number N 0 is set to the area number N H of this product code A H , and the upper area number N 1 is unchanged and is the area number N 1 . . on the other hand,
If the search code A is smaller than the product code A H , the lower area number N 0 remains unchanged and the upper area number N 0 is set.
Set N 1 to the area number N H of this product code A H.

検索する領域を規定する下側領域番号N0および上側領
域番号N1の再設定が終了すると、P53へ戻り、先に設定
した各領域番号の1/2に位置する商品コード領域R4の商
品コードAHを読出す。このように順次検索領域を示す下
側領域番号N0および上側領域番号N1間の距離を縮めてい
き、最終的にP54にて下側領域番号N0と上側領域番号N1
とが等しくなるまで検索コードAが読出した商品コード
AHと一致しなかった場合は該当商品コード無しと判断し
てこのバイナリ検索処理を終了する。
When the lower area number N 0 and the upper area number N 1 that define the area to be searched are reset, return to P53, and the product code of the product code area R4 located at 1/2 of each area number set earlier Read A H. In this way, the distance between the lower area number N 0 and the upper area number N 1 indicating the search area is sequentially reduced, and finally at P54, the lower area number N 0 and the upper area number N 1
Product code read by search code A until and are equal
If it does not match with A H , it is determined that there is no corresponding product code, and this binary search process ends.

このバイナリ検索処理を実行した結果P6にて該当商品
コード(コード番号)が発見されないことを確認する
と、その商品コード(コード番号)より大きい商品コー
ド(コード番号)のデータが格納されているデータ領域
R3を1データ領域づつ領域番号が大きい方へ移動(シフ
ト)させる。そして、シフトさせた後の空になったデー
タ領域R3へフロッピーディスク42から読出したデータを
書込む。なお、読出したデータの商品コード(コード番
号)より大きい商品コード(コード番号)が存在しなけ
れば、既にデータが格納されているデータ領域R3の次の
領域番号のデータ領域R3にフロッピーディスク42から読
出したデータを書込めばよい。したがって、この状態に
おいては、マスターファイルR1の各商品コード領域R4に
は各商品コードがコード番号順に格納されていることに
なる。
When it is confirmed that the corresponding product code (code number) is not found in P6 as a result of executing this binary search process, the data area that stores the data of the product code (code number) larger than the product code (code number)
R3 is moved (shifted) one data area toward the larger area number. Then, the data read from the floppy disk 42 is written into the empty data area R3 after the shift. If there is no product code (code number) larger than the product code (code number) of the read data, the floppy disk 42 is placed in the data area R3 having the area number next to the data area R3 in which the data is already stored. It is sufficient to write the read data. Therefore, in this state, the product codes are stored in the product code areas R4 of the master file R1 in the order of the code numbers.

P6にて該当商品コードが検索されると、同一商品コー
ド(コード番号)が2個以上存在することになるので、
フロッピーディスク42から読出したデータおよびマスタ
ーファイルR1から読出した同一商品コードのデータとの
2個のデータを例えばマスターとなる電子キャッシュレ
ジスタ2へ伝送し、このマスターとなる電子キャッシュ
レジスタ2のドットプリンタ27にて第11図に示すように
レシート43へ重複コードとして印字出力する。また、こ
れ等のデータをRAM4の二重データ記憶領域R2へ格納す
る。その後、マスターファイルR1の同一商品コード(コ
ード番号)のデータが書込まれたデータ領域の記憶内容
を新たにフロッピーディスク42から読出された同一商品
コードを有するデータに書替える。
When the relevant product code is searched on P6, there will be two or more identical product codes (code numbers).
Two pieces of data, the data read from the floppy disk 42 and the data of the same product code read from the master file R1, are transmitted to, for example, the electronic cash register 2 serving as a master, and the dot printer 27 of the electronic cash register 2 serving as a master. Then, as shown in FIG. 11, it is printed out as a duplicate code on the receipt 43. Further, these data are stored in the double data storage area R2 of the RAM4. After that, the stored content of the data area in which the data of the same product code (code number) of the master file R1 is written is rewritten to the data having the same product code newly read from the floppy disk 42.

以上でフロッピーディスク42の記録領域R7から読出さ
れた1個のデータのマスターファイルR1への書込処理が
終了すると、フロッピーディスク42の記録領域R7の領域
番号Nを1だけ増加して、P7にて増加後の領域番号Nが
記録領域数Mを越えていないことを確認したのち、P4へ
戻りフロッピーディスク42の次の記録領域R7のデータを
読出す。
When the process of writing one data read from the recording area R7 of the floppy disk 42 to the master file R1 is completed, the area number N of the recording area R7 of the floppy disk 42 is incremented by 1 to P7. After confirming that the increased area number N does not exceed the number M of recording areas, the process returns to P4 and the data of the next recording area R7 of the floppy disk 42 is read.

P7にて増加後の領域番号Nが記録領域数Mを越えると
フロッピーディスク42に記録された全部のデータのマス
ターファイルR1に対する書込みが終了したと判断して、
このデータロード処理を終了する。
When the increased area number N exceeds the number M of recording areas in P7, it is determined that writing of all the data recorded on the floppy disk 42 to the master file R1 is completed,
This data loading process ends.

このように構成されたデータファイルのデータ整理方
法において、例えば第9図(a)に示すように、マスタ
ーファイルR1の9番目(領域番号N=9)のデータ領域
R3の商品コード[12000]が同図(b)に示すように何
等かの要因にて最上桁のビットに誤差が生じて[0200
0]へ変化した場合を想定する。したがってこの商品コ
ードは6番目のデータ領域R3の商品コード[02000]に
一致することになる。この場合データ領域数Mは11であ
るので、キーボード37からデータセーブ指令を入力する
と、マスターファイルR1の各データ領域R3のデータは同
図(c)のフロッピーディスク42の領域番号1〜11の各
記録領域R7に書込まれ、マスターファイルR1の各データ
領域R3はクリアされる。
In the data organization method of the data file configured in this way, for example, as shown in FIG. 9A, the ninth data area (area number N = 9) of the master file R1
As shown in (b) of the same figure, the product code [12000] of R3 has an error in the most significant bit due to some reason [0200
It is assumed that the value changes to 0]. Therefore, this product code matches the product code [02000] of the sixth data area R3. In this case, since the number M of data areas is 11, when a data save command is input from the keyboard 37, the data in the respective data areas R3 of the master file R1 are stored in the area numbers 1 to 11 of the floppy disk 42 shown in FIG. The data is written in the recording area R7 and each data area R3 of the master file R1 is cleared.

そして、キーボード37からデータロード指令が入力さ
れると、第10図に示すようにマスターファイルR1の領域
番号N=1〜10の各データ領域R3には商品コード(コー
ド番号)順にデータが書込まれる。そして、6番目のデ
ータ領域R3にはフロッピーディスク42の9番目のデータ
が書込まれる。そして、RAM4の二重データ記憶領域R2に
は上記二つの[02000]の商品コードの各商品データが
記憶されるとともに第11図に示すようにマスターとなる
電子キャッシュレジスタ2にてレシート43に上記2個の
データが印字出力される。したがって、操作者はこの印
字出力されたデータから誤ったデータを簡単に把握でき
る。また、誤りデータがRAM4の二重データ記憶領域R2に
記憶されているので後からこのデータを読出したり、出
力ポート36にホストコンピュータを接続してこの誤りデ
ータを解析することも可能である。
When a data load command is input from the keyboard 37, as shown in FIG. 10, data is written in each data area R3 of the area number N = 1 to 10 of the master file R1 in the order of product code (code number). Be done. Then, the ninth data of the floppy disk 42 is written in the sixth data area R3. Then, each product data of the above two [02000] product codes is stored in the dual data storage area R2 of the RAM4, and the electronic cash register 2 serving as the master as shown in FIG. Two pieces of data are printed out. Therefore, the operator can easily recognize the erroneous data from the printed and output data. Further, since the error data is stored in the dual data storage area R2 of the RAM 4, it is possible to read this data later or analyze the error data by connecting a host computer to the output port 36.

なお、同一商品コードが2個存在した場合において、
フロッピーディスク42の後から読出しした商品コードの
データを優先してデータ領域R3に書込むようにしたの
は、データ訂正等において後から入力したデータの方が
正しい場合が多いからである。
If there are two identical product codes,
The reason why the product code data read after the floppy disk 42 is preferentially written in the data area R3 is that the data entered later in the data correction or the like is often correct.

なお、マスターファイルR1において商品コードの大小
が入替わっていた場合においてもデータロード処理後に
おいては正しい順序に修正される。
Even when the product code size is changed in the master file R1, the order is corrected in the correct order after the data loading process.

なお、本発明は上述した実施例に限定されるものでは
ない。実施例においては、記録媒体として外部にフロッ
ピーディスク・ドライブ装置(FDD)5を設けたが、記
録媒体として内部に前述のRAM4とは別のRAMを設けても
よい。
The present invention is not limited to the above embodiment. Although the floppy disk drive device (FDD) 5 is provided as an external recording medium in the embodiment, a RAM other than the RAM 4 described above may be provided internally as a recording medium.

[発明の効果] 以上説明したように本発明によれば、データファイル
内におけるコード番号の大小の入違い及び二重書込を防
止できる上、二重書込データが生じていた場合はそのデ
ータを簡単に確認できる。また、二重書込データが生じ
ていた場合は後から書込まれたデータを優先してデータ
ファイルに残すことができる。
[Effects of the Invention] As described above, according to the present invention, it is possible to prevent the difference in the size of code numbers in a data file and double writing, and in addition, when double writing data occurs, the data Can be easily confirmed. Further, when the double write data is generated, the data written later can be preferentially left in the data file.

【図面の簡単な説明】[Brief description of drawings]

図は本発明のデータファイルのデータ整理方法を適用し
たPOSシステムを示すものであり、第1図はシステム全
体を示す図、第2図は各電子キャッシュレジスタを示す
斜視図、第3図は各電子キャッシュレジスタを示すブロ
ック図、第4図はファイル制御部を示すブロック図、第
5図はファイル制御部の記憶部に形成されたマスターフ
ァイルを示す図、第6図はフロッピーディスクの記録フ
ォーマットを示す図、第7図および第8図は動作を示す
流れ図、第9図および第10図はデータ整理方法を説明す
るための図、第11図はレシートの印字フォーマットを示
す図である。 1……ファイル制御部、2……電子キャッシュレジス
タ、3……伝送部、4……RAM、5……フロッピーディ
スク・ドライブ装置(FDD)、7,37……キーボード、12
……バーコードスキャナー、17,31……CPU、42……フロ
ッピーディスク(FDK)、43……レシート、R1……マス
ターファイル(データファイル)、R2……二重データ記
憶領域、R3…データ領域、R4……商品コード領域、R7…
…記録領域、N……領域番号。
FIG. 1 shows a POS system to which the data file data reduction method of the present invention is applied. FIG. 1 is a diagram showing the entire system, FIG. 2 is a perspective view showing each electronic cash register, and FIG. FIG. 4 is a block diagram showing an electronic cash register, FIG. 4 is a block diagram showing a file control unit, FIG. 5 is a diagram showing a master file formed in a storage unit of the file control unit, and FIG. 6 is a recording format of a floppy disk. FIG. 7, FIG. 7 and FIG. 8 are flow charts showing the operation, FIG. 9 and FIG. 10 are diagrams for explaining the data organization method, and FIG. 11 is a diagram showing the print format of the receipt. 1 ... File control unit, 2 ... Electronic cash register, 3 ... Transmission unit, 4 ... RAM, 5 ... Floppy disk drive (FDD), 7,37 ... Keyboard, 12
…… Bar code scanner, 17,31 …… CPU, 42 …… Floppy disk (FDK), 43 …… Receipt, R1 …… Master file (data file), R2 …… Dual data storage area, R3… Data area , R4 …… Product code area, R7…
... Recording area, N ... area number.

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】情報とこの情報に固有するコード番号とか
らなるデータを記憶する複数のデータ領域を有したデー
タファイルの前記各データ領域に記憶された前記各デー
タを前記コード番号順に整理するデータファイルのデー
タ整理方法において、 始めに前記データファイルの各データ領域に記憶された
各データを一旦前記データファイルとは別の記録媒体の
各記録領域に書込み、次にデータセーブされた後の前記
データファイルの各データ領域をクリアし、次に前記記
録媒体の各記録領域に書込まれた各データを前記記録領
域の領域番号順に順次読出し、この読出したデータのコ
ード番号でもって前記データファイルの各データ領域に
このデータより先に書込まれたデータの各コード番号を
検索し、この検索の結果該当コード番号が検索されなか
ったとき、この該当コード番号より大きいコード番号を
有する各データを格納する各データ領域を順次領域番号
の大きい方へ1データ領域ずつシフトさせ、シフトされ
た後の空きデータ領域へ前記該当コード番号を有するデ
ータを書込み、一方、前記検索の結果該当コード番号が
検索されたとき、該当コード番号を有する前記データ領
域に先に書込まれたデータと後から前記記録媒体から読
出されたデータとを二重書込データとして印字出力する
ようにしたことを特徴とするデータファイルのデータ整
理方法。
1. Data for organizing the respective data stored in the respective data areas of a data file having a plurality of data areas for storing data consisting of information and a code number unique to the information in the order of the code numbers. In the file data organization method, first, each data stored in each data area of the data file is once written in each recording area of a recording medium different from the data file, and then the data after the data is saved. Each data area of the file is cleared, then each data written in each recording area of the recording medium is sequentially read out in the order of the area number of the recording area, and each of the data files is read by the code number of the read data. Each code number of the data written before this data in the data area is searched, and the corresponding code number is searched as a result of this search. If there is not, the data area for storing each data having a code number larger than the corresponding code number is sequentially shifted one data area toward the larger area number, and the corresponding code number is shifted to the empty data area after the shift. Data is written on the other hand, and when the corresponding code number is searched as a result of the search, the data previously written in the data area having the corresponding code number and the data read from the recording medium later are written. A method for organizing data in a data file, wherein the data is printed out as double-written data.
【請求項2】情報とこの情報に固有するコード番号とか
らなるデータを記憶する複数のデータ領域を有したデー
タファイルの前記各データ領域に記憶された前記各デー
タを前記コード番号順に整理するデータファイルのデー
タ整理方法において、 始めに前記データファイルの各データ領域に記憶された
各データを一旦前記データファイルとは別の記録媒体の
各記録領域に書込み、次にデータセーブされた後の前記
データファイルの各データ領域をクリアし、次に前記記
録媒体の各記録領域に書込まれた各データを前記記録領
域の領域番号順に順次読出し、この読出したデータのコ
ード番号でもって前記データファイルの各データ領域に
このデータより先に書込まれたデータの各コード番号を
検索し、この検索の結果該当コード番号が検索されなか
ったとき、この該当コード番号より大きいコード番号を
有する各データを格納する各データ領域を順次領域番号
の大きい方へ1データ領域ずつシフトさせ、シフトされ
た後の空きデータ領域へ前記該当コード番号を有するデ
ータを書込み、一方、前記検索の結果該当コード番号が
検索されたとき、該当コード番号を有する前記データ領
域に先に書込まれたデータと後から前記記録媒体から読
出されたデータとを二重書込データとして内部記憶部に
記憶するようにしたことを特徴とするデータファイルの
データ整理方法。
2. Data for organizing the respective data stored in the respective data areas of a data file having a plurality of data areas for storing data consisting of information and a code number unique to the information, in the order of the code numbers. In the file data organization method, first, each data stored in each data area of the data file is once written in each recording area of a recording medium different from the data file, and then the data after the data is saved. Each data area of the file is cleared, then each data written in each recording area of the recording medium is sequentially read out in the order of the area number of the recording area, and each of the data files is read by the code number of the read data. Each code number of the data written before this data in the data area is searched, and the corresponding code number is searched as a result of this search. If there is not, the data area for storing each data having a code number larger than the corresponding code number is sequentially shifted one data area toward the larger area number, and the corresponding code number is shifted to the empty data area after the shift. Data is written on the other hand, and when the corresponding code number is searched as a result of the search, the data previously written in the data area having the corresponding code number and the data read from the recording medium later are written. A method for organizing data in a data file, wherein the data is stored in an internal storage section as double-written data.
【請求項3】情報とこの情報に固有するコード番号とか
らなるデータを記憶する複数のデータ領域を有したデー
タファイルの前記各データ領域に記憶された前記各デー
タを前記コード番号順に整理するデータファイルのデー
タ整理方法において、 始めに前記データファイルの各データ領域に記憶された
各データを一旦前記データファイルとは別の記録媒体の
各記録領域に書込み、次にデータセーブされた後の前記
データファイルの各データ領域をクリアし、次に前記記
録媒体の各記録領域に書込まれた各データを前記記録領
域の領域番号順に順次読出し、この読出したデータのコ
ード番号でもって前記データファイルの各データ領域に
このデータより先に書込まれたデータの各コード番号を
検索し、この検索の結果該当コード番号が検索されなか
ったとき、この該当コード番号より大きいコード番号を
有する各データを格納する各データ領域を順次領域番号
の大きい方へ1データ領域ずつシフトさせ、シフトされ
た後の空きデータ領域へ前記該当コード番号を有するデ
ータを書込み、一方、前記検索の結果該当コード番号が
検索されたとき、該当コード番号を有する前記データ領
域に先に書込まれたデータと後から前記記録媒体から読
出されたデータとを二重書込データとして印字出力する
とともに、該当コーダ番号が書込まれた前記データ領域
のデータを後から前記記録媒体から読出された該当コー
ド番号のデータに書替えるようにしたことを特徴とする
データファイルのデータ整理方法。
3. Data for organizing the respective data stored in the respective data areas of a data file having a plurality of data areas for storing data consisting of information and a code number unique to the information in the order of the code numbers. In the file data organization method, first, each data stored in each data area of the data file is once written in each recording area of a recording medium different from the data file, and then the data after the data is saved. Each data area of the file is cleared, then each data written in each recording area of the recording medium is sequentially read out in the order of the area number of the recording area, and each of the data files is read by the code number of the read data. Each code number of the data written before this data in the data area is searched, and the corresponding code number is searched as a result of this search. If there is not, the data area for storing each data having a code number larger than the corresponding code number is sequentially shifted one data area toward the larger area number, and the corresponding code number is shifted to the empty data area after the shift. Data is written on the other hand, and when the corresponding code number is searched as a result of the search, the data previously written in the data area having the corresponding code number and the data read from the recording medium later are written. The data is printed out as double-written data, and the data in the data area in which the corresponding coder number is written is rewritten to the data in the corresponding code number read out from the recording medium later. How to organize data in a data file.
JP61013049A 1986-01-24 1986-01-24 Data file data arrangement method Expired - Lifetime JP2532378B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61013049A JP2532378B2 (en) 1986-01-24 1986-01-24 Data file data arrangement method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61013049A JP2532378B2 (en) 1986-01-24 1986-01-24 Data file data arrangement method

Publications (2)

Publication Number Publication Date
JPS62172426A JPS62172426A (en) 1987-07-29
JP2532378B2 true JP2532378B2 (en) 1996-09-11

Family

ID=11822264

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61013049A Expired - Lifetime JP2532378B2 (en) 1986-01-24 1986-01-24 Data file data arrangement method

Country Status (1)

Country Link
JP (1) JP2532378B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60225938A (en) * 1984-04-25 1985-11-11 Hitachi Ltd Information retrieving system

Also Published As

Publication number Publication date
JPS62172426A (en) 1987-07-29

Similar Documents

Publication Publication Date Title
US4398250A (en) Electronic cash register mutual transmission system for plurality of cash registers
JPS6014371A (en) Pos system
JP2532378B2 (en) Data file data arrangement method
US5438664A (en) Method and apparatus for producing slips of variable length and having user-defined word names and associated word data thereon
JPH10116303A (en) Article rental contract processor
JP2918766B2 (en) Product sales data processing device
JPS6246908B2 (en)
JP3643101B2 (en) Product sales data processing device
JPH08315251A (en) Article sales registration data processor
US5369776A (en) Apparatus for producing slips of variable length and having pre-stored word names, and wherein labels are added to word data thereon
JPS5839351B2 (en) POS inline system
JPH026120B2 (en)
JP2522602B2 (en) Card processing equipment
JPS644228B2 (en)
JPH0114635B2 (en)
JP2561355B2 (en) Electronic cash register
JPH0642277B2 (en) Product sales data processing device
JP2788828B2 (en) Data processing device
JPH03127197A (en) Pos system
JPH0664660B2 (en) Product sales data processing device
JPH0636233B2 (en) Sales registration processor
JPS63300384A (en) Electronic cash register
JPS5847471Y2 (en) Electronic register with transaction-specific registration function
JPS63172396A (en) Goods sale data processor
JPH0258671B2 (en)