C言語がdbMAGIC用語に変わるBtrieveファイルアクセスC言語ライブラリ
優れた開発ツールにも機能の穴が、やはり C言語による開発も必要
dbMAGICは優れた開発ツールのひとつです。しかし、たとえどんなに優れた開発ツールであろうと、アプリケーションに要求される全ての機能を網羅しつくすことはできません。網羅しきれなっかた機能であってもアプリケーションが必要とするならば、その機能を別のプログラムを使ってでも補完しなくてはなりません。そしてその機能を補完するためのプログラムの多くはC言語で開発されます。
開発ツールと C言語とでデータを受け渡すには
dbMAGICはBtrieveを使用しているため、 Btrieveの知識があれば、ファイルを通してdbMAGICとデータのやり取りをすることが簡単にできそうな気がします。しかし、Btrieveがレコード単位に処理をしていることやdbMAGICがファイルの排他制御を独自の方法で行っている事などから、Btrieveの知識だけでは対応しきれない現実があります。
MAGIC ACCESS を上手に使えば簡単、簡単
MAGIC ACCESS は Btrieve で作られた dbMAGIC のデータファイルを C言語から手軽に扱えるようにするための関数ライブラリです。
MAGIC ACCESSを使うことでdbMAGICでのフィールド(項目)定義を C言語から簡単に参照できるようになり、Btrieveの1レコードからフィールド単位にデータを取り出したり、フィールド単位でレコードを更新したりすることが簡単にできるようになります。またdbMAGICと完全に互換性のある排他制御を実装しているので、その独自性を一切意識する必要もありません。
DDF にも対応。 MS-Windows 上での開発もサポート
MAGIC ACCESS [DDF&dbMAGIC 対応版]および/DLL 16 では、 dbMAGICのフィールド定義を参照するだけでなく、DDFから取得する事もできます。dbMAGIC以外のBtrieveを使用するソフトウェアの補助ツールとしてC言語を活用する道も広がります。MAGIC ACCESSの機能をMS-Windows上でご利用したい方には、MAGICACCESS/DLL 16がございます。
MAGIC ACCESS の適用用途および、その効果
- dbMAGIC や DDF を使う開発ツールに足りない機能を C言語で作成し、データの受け渡しにBtrieveファイルを使用。開発ツールだけではできなかったグラフィックサポートや通信処理など、応用範囲が広がります。
- 複雑な更新処理、集計処理、帳票印刷などを、 C言語で高速化、最適化
- dbMAGIC DDF を使う開発ツールに足りない機能を補うユーティリティー製品の開発もできます。
特徴
Btrieve ファイルを手軽にアクセス
- Btrieve のレコード単位の処理をフィールド単位に変換
- フィールド定義は、 dbMAGIC の辞書出力また DDF から取得可能
- Btrieve は ver5 および ver6 いずれにも対応済み。
(DDF からの取得[dbMAGIC]ではできません。)
dbMAGIC にも完全対応
- dbMAGIC ver4.x および ver5.x の独自方法による排他制御にも対応し Btrieve ファイルを直接ロックする事による dbMAGIC の異常終了やデータの不整合をあらかじめ回避
- dbMAGIC の全ての記憶形式と, C言語で扱える型との交換関数
その他にも
- Btrieve ファイルのオープンモードや自由なキー選択、検索方法などBtrieveの機能をフルに活用
- Btrieve 開発キットに付属の Butil.EXE が入力できる Butil 形式ファイルの順次アクセスの高速性を生かした処理の可能
関数一覧(抜粋)
排他制御関数 | |
---|---|
Ml_Init() | 排他制御環境を初期化する |
Bf_Transaction() | トランザクション操作(高水準) |
アクセス、フィールド情報関連関数 | |
Dd_Create() | DDFを作成する |
Dd_Read() | フィールド情報をDDFから読込む |
Ff_Read() | フィールド情報をファイルから読込む |
Dd_Write() | フィールド情報をDDFに追加する |
Ff_Fld_Get_Name() | 項目名で指定される項目をレコードバッフから得る |
Ff_Fld_Put_Name() | レコードバッファの項目名で指名される項目にセットする |
Ff_Fld_Type() | 項目の定義情報から記憶形式を得る(dbMAGICver4.x の記憶形式) |
Ff_Fld_Strg() | 項目の定義情報から記憶形式を得る(dbMAGICver5.x の記憶形式) |
Ff_Key_Set() | キーバッファ中のキーセグメントに値をセットする |
高水準アクセス関数 | |
Bf_Read() | 読込方法を指定し、レコードを読込む |
Bf_Write() | レコードを追加、更新する |
Bf_Delete() | レコードを削除する |
Bf_Lock() | カレントレコードのマニュアルレコードを行う |
Bf_Unlock() | マニュアルレコードロックを解除する |
Bf_Check() | Btrieve ファイルとフィールド情報の整合性をチェックする |
変換関数 | |
Cv_Fld2Num() | フィールド情報で指定される型の値を任意の数値型に変換する |
Cv_Numeric() | dbMAGIC ver5.xの任意の数値型を相互に変換する |
Cv_Str2Lstr() | Cの文字列をL文字列に変換する |
この他、Btrieveファイルの直接アクセス関数やButil形式ファイルアクセス関数など全192関数を提供
動作環境、対応言語等
MAGIC ACCESS ver2.1[dbMAGIC 対応版」ならびに DDF&dbMAGIC 対応版]は、dbMAGIC4.x、dbMAGIC5.x(いずれも開発版および実行版。ver5.02を除く)の動作するDOS環境、またはver5以降のBtrieveが動作しているDOS環境で動作し、以下のC言語に対応しています。
Microsoft C ver6.0
Microsoft C/C ++ver7.0A
Microsoft Visual C++ver1.0
Borland TURBO C++2nd edition
Borland C++ver.3.1
Borland C++4.0J
MAGIC ACCESS ver2.1/DLL16は、Btrieveが動作しているMS-Windows ver3.1J上で動作し、MS-Windows ver3.1J の 16bitDLL の関数呼出が可能な言語(ただしC言語呼出しのみ)に対応しています。
再配布条件
MAGIC ACCESS ver2.1[dbMAGIC 対応版」および[DDF&dbMAGIC 対応版]を用いて作成したプログラムは、原則的に自由に配布する事ができます。
MAGIC ACCESSver2.1/DLL16を使用するプログラムは、原則的に自由に配布する事ができます。また、DLLファイルを、そのプログラムと一緒に配布する事も許されます。
商品価格
ソースコード無し
ソースコード付き
dbMAGIC 対応版
68,000
198,000
DDF&dbMAGIC 対応版
98,000
238,000
/DDL16
85,000
220,000
ソースコード無し | ソースコード付き | |
---|---|---|
dbMAGIC 対応版 | 68,000 | 198,000 |
DDF&dbMAGIC 対応版 | 98,000 | 238,000 |
/DDL16 | 85,000 | 220,000 |
シングルユーザーライセンスのみの提供となります。