 |
ActiveX Controls Guide (v11) |
 |
|
その他の DDF 操作 (ActiveX アクセス方法)
ここで説明するメソッドを使用して、さまざまな目的で DDF を処理することができます。
オーナー ネームによる DDF の保護
オーナー ネームで DDF をセキュリティ保護することができます。この機能を果たすために、以下の 2 つの方法が用意されています。
- DdfSetOwner。このメソッドは、VAccess メモリ イメージに現行の有効な DDF オーナー ネームを設定します。つまり、すべての DDF ファイル操作はこのオーナー ネームを使用します。RefreshLocations が True である場合、この呼び出しを行う際のアクセスについては前の DDF オーナー ネームを使用し、このオーナー ネームが DDF 自体に適用されます。このメソッドは、データ ファイルとの関連でのみ使用される OwnerName プロパティには影響を与えません。
- DdfTestOwnerName。このメソッドでは、有効な DDF オーナー ネームを設定し、その名前で許される権限を決定することができます。
これらの 2 つの方法の詳細については、ActiveX メソッド リファレンスを参照してください。
既存のフィールドとインデックス情報の削除
DdfClearFields と DdfClearIndexes は、現在のテーブルの既存のフィールド情報およびインデックス情報をすばやく消去できる便利な方法を提供します。
メモ
RefreshLocations が True である場合、これらの変更内容は DDF に書き込まれるので、注意して使用してください。
永続的な DDF メモリ イメージによるコメントの強制設定
DdfGetComments。このメソッドの用途は非常に限定的です。RefreshLocations が False である場合、DDF 以外のテーブルを開いているときは永続的なメモリ イメージが読み取られます。ただし、永続的なメモリ イメージにはコメント情報が含まれていません。DdfGetComments は RefreshLocations を無視するため、このメソッドを使用してコメント情報を永続的な DDF の情報と同調させるように ActiveX を強制設定することができます。
広範囲に影響が及ぶ ActiveX メソッド
最後に、次の 2 つのメソッドは DDF を扱うオペレーションに対して広範囲の影響を与えます。
- DdfTransactionMode。このメソッドが True である場合、DDF に直接書き込みを行うように要求されるすべての DDF 処理関数はトランザクションの適用範囲内で書き込みを行います。つまり、ある部分の書き込みが行えないと、すべての書き込みが行えなくなるため、たとえば、FIELD.DDF と INDEX.DDF の間の関係は破壊されません。
- DdfKeyUseIndexDDFOnly。このメソッドは、True に設定されている場合のみ、コントロールに INDEX.DDF を使用させます。ActiveX は通常、ステータス バッファーで指定されたファイル自体に格納されているインデックス情報によって DDF 情報を増補します。これは、正しくない INDEX.DDF エントリを処理する場合のコントロールの信頼性を高めます。しかし、この動作は同時に、コントロールを使って正しくない INDEX.DDF エントリを修復することを困難にします。それは、ファイルを開くときに実際の DDF 情報の一部が上書きされるからです。
- DdfKeyUseIndexDDFOnly を True に設定すると、コントロールはインデックス情報をステータス バッファー内のインデックス情報で上書きしません。つまり、正しくない INDEX.DDF エントリがあると、コントロールはファイル内をナビゲートできませんが、DDF の現在の状態を反映します。このため、正しくないエントリの診断と修復が容易になります。
 データ ファイルの変更 (ActiveX アクセス方法) |
 ActiveX コントロール リファレンス |
|