• 検索結果がありません。

PSQL_ActiveX_Guide.book

N/A
N/A
Protected

Academic year: 2021

シェア "PSQL_ActiveX_Guide.book"

Copied!
284
0
0

読み込み中.... (全文を見る)

全文

(1)

Pervasive PSQL v10 SP3

ActiveX Controls Guide

(2)

る 場合に も 本 ソ フ ト ウ ェ アお よ び本マニ ュ アルに記載 さ れた内容に関す る その 他の一切の保証 を、 明示的に も 黙示的に も 行い ま せん。Pervasive Software Inc. は、 市場性、 権利、 特定の目的に対す る 適合性、 あ る いは一連の取引業務や職 業的な使用に関す る 問題な ど に対 し 、 一切の保証を行わない こ と を明示す る と

と も に、 利用者お よ びその会社が こ れに同意 し た も の と し ます。

商標 Btrieve、 Client/Server in a Box、 Pervasive、 Pervasive Software および Pervasive Software の ロ ゴは、 Pervasive Software Inc. の登録商標です。

Built on Pervasive Software、 DataExchange、 MicroKernel Database Engine、 MicroKernel Database Architecture、 Pervasive.SQL、 Pervasive PSQL、 Solution Network、 Ultralight、 ZDBA は Pervasive Software Inc. の商標です。

Microsoft、 MS-DOS、 Windows、 Windows 95、 Windows 98、 Windows NT、 Windows Me、 Windows 2000、 Windows XP、 Windows Server 2003、 Win32、 Win32s、 および Visual Basic は、Microsoft Corporation の登録商標です。

NetWare および Novell は Novell, Inc. の登録商標です。

NetWare Loadable Module、NLM、Novell DOS、Transaction Tracking System、TTS は、Novell, Inc. の商標です。

Sun、 Sun Microsystems、 Java、 および Sun、 Solaris、 Java を含むすべての商標やロゴは、 Sun Microsystems の商標または登録商標です。

すべての会社名および製品名は各社の商標または登録商標です。

© Copyright 2009 Pervasive Software Inc. All rights reserved. このマニュアルの全文、 一部に関 わりなく複製、 複写、 配布をすることは、 前もって発行者の書面による同意がない限り禁止しま す。

本製品には、 Powerdog Industries により開発されたソフトウェアが含まれています。 © Copyright 1994 Powerdog Industries.All rights reserved.

本製品には、 KeyWorks Software により開発されたソフトウェアが含まれています。 © Copyright 2002 KeyWorks Software.All rights reserved.

本製品には、 DUNDAS SOFTWARE により開発されたソフトウェアが含まれています。 © Copyright 1997-2000 DUNDAS SOFTWARE LTD. All rights reserved.

本製品には、 Apache Software Foundation Foundation (http://www.apache.org/) により開発さ れたソフトウェアが含まれています。 Apache Software License を参照してください。

本製品ではフリー ソフトウェアの unixODBC Driver Manager を使用しています。 これは Peter Harvey ([email protected]) によって作成され、 Nick Gorham ([email protected]) により変更および拡張されたものに Pervasive Software が一部修正を加えたものです。Pervasive Software は、 unixODBC Driver Manager プロジェクトの LGPL 使用許諾契約書に従って、 この プロジェクトの現在の保守管理者にそのコード変更を提供します。 unixODBC Driver Manager の Web ページは www.unixodbc.org にあります。 このプロジェクトに関する詳細については、 現在 の保守管理者である Nick Gorham ([email protected]) にお問い合せください。

GNU Lesser General Public License (LGPL) は本製品の配布メディアに含まれています。 LGPL は www.fsf.org/licensing/licenses/lgpl.html でも見ることができます。

ActiveX Controls Guide 2009 年 11 月

(3)

iii

目次

こ のマニ ュ アルについて

. . . . xiii

こ のマニ ュ アルの読者 . . . . xiv こ のマニ ュ アルの構成 . . . . xv 表記上の規則. . . . xvi

1

ActiveX の概要. . . . 1-1

ActiveX イ ン ターフ ェ イ ス の概要 . . . . 1-2 開発環境. . . . 1-2 サー ド パーテ ィ データ バウ ン ド コ ン ト ロール . . . . 1-3 ActiveX コ ン ト ロール オブジ ェ ク ト . . . . 1-3 ActiveX イ ン ターフ ェ イ ス の選択 . . . . 1-5 ActiveX イ ン ターフ ェ イ ス を利用する と き . . . . 1-5 重要な機能 . . . . 1-6 VB 内のデータ ア ウ ェ ア コ ン ト ロールのデータ ソ ース . . . . 1-6 フ ィ ール ド レベル ア ク セ ス . . . . 1-6 プ ロ パテ ィ お よ び メ ソ ッ ド イ ン ターフ ェ イ ス . . . . 1-6 Extended オペレーシ ョ ン . . . . 1-6 DDF . . . . 1-7 ActiveX DDF ア ク セ ス メ ソ ッ ド . . . . 1-7 リ モー ト データ ア ク セ ス . . . . 1-7 結合テーブル . . . . 1-7 ActiveX イ ン ターフ ェ イ ス では使用で き ない Pervasive PSQL 機能 . . . . 1-8 SQL 構文. . . . 1-8 チ ャ ン ク オペレーシ ョ ン、 非常に大き な レ コー ド . . . . 1-8 複数の ACS を使用する フ ァ イ ルの作成 . . . . 1-8 デー タ 型. . . . 1-8 URI 構文 . . . . 1-8 ActiveX コ ン ト ロールを使用する最初の手順 . . . . 1-9 Pervasive PSQL Control Center を使用 し てデー タベース を作成する . . . . 1-9 Visual Basic と Delphi への ActiveX イ ン ターフ ェ イ ス の イ ンポー ト . . . . 1-9

2

ActiveX ク イ ッ ク ス タ ー ト . . . . 2-1

フ ァ イ ル と デ ィ レ ク ト リ . . . . 2-2 ActiveX イ ン ターフ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成 . . . . 2-3 プ ロ ジ ェ ク ト への ActiveX イ ン ターフ ェ イ ス の追加 . . . . 2-3 VAccess コ ン ト ロールの使用 . . . . 2-4

(4)

プ ロ パテ ィ の設定 . . . 2-6 Pervasive PSQL フ ァ イ ルへの接続 . . . 2-7 イ ンデ ッ ク ス の選択. . . 2-8 自動 と 手動の フ ァ イ ル オープンの設定 . . . 2-10 デー タ ソ ースへのバウ ン ド コ ン ト ロールの リ ン ク . . . 2-11 レ コ ー ド の取得 . . . 2-11 特定の レ コ ー ド の検索 . . . 2-12 レ コ ー ド の追加、 更新お よ び削除 . . . 2-14 レ コ ー ド の ロ ッ ク . . . 2-14 フ ァ イ ルの結合 . . . 2-15 Extended オペレーシ ョ ンの有効化. . . 2-16 Pervasive PSQL ActiveX フ ァ イ ルの配布 と 登録 . . . 2-21 ActiveX イ ン ターフ ェ イ ス に関する追加情報 . . . 2-22

3

ActiveX でのデー タ 辞書 メ ソ ッ ド の使用 . . . . 3-1

ActiveX データ ソ ース コ ン ト ロールに よ る DDF の処理 . . . 3-2 フ ァ イ ルの内容 と メ モ リ イ メ ージ . . . 3-3 辞書の読み取 り . . . 3-4 DDF の変更 . . . 3-6 テーブル定義の作成 . . . 3-8 辞書の作成. . . 3-10 デー タ フ ァ イ ルの変更. . . 3-11 その他の DDF 操作 . . . 3-13 オーナー ネームに よ る DDF の保護 . . . 3-13 既存の フ ィ ール ド と イ ンデ ッ ク ス情報の削除 . . . 3-13 永続的な DDF メ モ リ イ メ ージに よ る コ メ ン ト の強制設定 . . . 3-13 広範囲の影響を与え る メ ソ ッ ド . . . 3-14

4

ActiveX コ ン ト ロール リ フ ァ レ ン ス . . . . 4-1

VAccess データ ソ ース . . . 4-2 VACheck . . . 4-5 VACombo . . . 4-6 VACommand . . . 4-8 VAHScroll と VAVScroll . . . 4-9 VAList . . . 4-10 VAOption. . . 4-12 VAText . . . 4-13

(5)

v 目次

5

カ テ ゴ リ 別プ ロパテ ィ 、 メ ソ ッ ド 、 および イ ベン ト

. . . . 5-1

は じ めに . . . . 5-2 レ コ ー ド セ ッ ト の取得 (Extended オペレーシ ョ ン) . . . . 5-3 プ ロ パテ ィ と メ ソ ッ ド. . . . 5-3 イ ベン ト. . . . 5-4 フ ァ イ ルの処理 . . . . 5-5 プ ロ パテ ィ と メ ソ ッ ド. . . . 5-5 デー タ 辞書 メ ソ ッ ド. . . . 5-6 プ ロ パテ ィ と メ ソ ッ ド. . . . 5-6 レ コ ー ド 内の フ ィ ール ド へのア ク セ ス . . . . 5-8 プ ロ パテ ィ と メ ソ ッ ド. . . . 5-8 レ コ ー ド の挿入、 更新、 お よ び削除 . . . . 5-9 プ ロ パテ ィ と メ ソ ッ ド. . . . 5-9 イ ベン ト. . . . 5-9 個別レ コ ー ド の取得. . . . 5-10 プ ロ パテ ィ と メ ソ ッ ド. . . . 5-10 イ ベン ト. . . . 5-11 最適化 と デバ ッ グ . . . . 5-12 プ ロ パテ ィ と メ ソ ッ ド. . . . 5-12

6

ActiveX プ ロパテ ィ リ フ ァ レ ン ス . . . . 6-1

AutoDialog . . . . 6-2 AutoLogon . . . . 6-3 AutoMode . . . . 6-4 AutoOpen . . . . 6-5 Buffer . . . . 6-6 CacheRejectMax . . . . 6-9 CacheRows . . . . 6-10 CancelDialog . . . . 6-11 Column . . . . 6-12 ColumnName . . . . 6-13 Columns . . . . 6-14 ColumnWidth . . . . 6-16 CompressData . . . . 6-18 DatabaseName. . . . 6-19 DataLength . . . . 6-20 DdfKeyUseIndexDDFOnly . . . . 6-21 DdfPath . . . . 6-22 DdfTransactionMode . . . . 6-25

(6)

FieldList . . . 6-27 Fields . . . 6-29 FieldValue . . . 6-30 FileVersion . . . 6-32 FireEvents . . . 6-33 FocusSelText . . . 6-34 HostAddress . . . 6-35 HostConnect . . . 6-36 IncludeCurrent . . . 6-37 IndexList . . . 6-38 IndexNumber . . . 6-41 IntegralHeight . . . 6-42 Join . . . 6-43 KeyNumber . . . 6-46 List . . . 6-47 Location. . . 6-49 Locked . . . 6-51 MaxBufferSize . . . 6-52 MaxLength . . . 6-53 OemString . . . 6-54 OpenMode . . . 6-55 OwnerName . . . 6-56 PageSize . . . 6-57 Percentage . . . 6-58 Port . . . 6-60 Position . . . 6-61 RefreshLocations . . . 6-63 Row . . . 6-65 RowPosition . . . 6-67 Rows . . . 6-68 SelectedFields . . . 6-69 SelectedRecords . . . 6-71 SessionID . . . 6-73 Status . . . 6-74 TableName . . . 6-75 TimeOutVal. . . 6-77 TotalRecords . . . 6-78 Uppercase. . . 6-79

(7)

vii 目次 VAccessName . . . . 6-80 VAAutoScroll . . . . 6-81 VADataType . . . . 6-82 VADebugMode . . . . 6-83 VADecimal . . . . 6-84 VAErrorDialog . . . . 6-85 VAFieldName . . . . 6-86 VAFormat . . . . 6-87 VALockBias. . . . 6-89 VAOffset . . . . 6-90 VAOperation . . . . 6-91 VARecordList . . . . 6-92 VASearch . . . . 6-93 VASize . . . . 6-94 VAValueFalse . . . . 6-95 VAValueTrue . . . . 6-96

7

ActiveX メ ソ ッ ド リ フ ァ レ ン ス . . . . 7-1

AboutBox . . . . 7-2 AddItem . . . . 7-3 Btrv . . . . 7-4 Clear . . . . 7-7 Close. . . . 7-8 DdfAddIndex . . . . 7-9 DdfAddTable . . . . 7-10 DdfAddTableName . . . . 7-12 DdfClearFields . . . . 7-14 DdfClearIndexes . . . . 7-15 DdfCreateDictionary . . . . 7-16 DdfCreateTable . . . . 7-17 DdfDropIndex . . . . 7-19 DdfDropIndexMaintain . . . . 7-21 DdfDropTable . . . . 7-23 DdfGetFieldComments . . . . 7-24 DdfModifyLocation . . . . 7-26 DdfModifyTableName . . . . 7-28 DdfSetOwner . . . . 7-29 DdfTestOwnerName . . . . 7-31 Delete . . . . 7-32

(8)

GetDirect . . . 7-34 GetEqual . . . 7-35 GetFirst . . . 7-37 GetGreater . . . 7-38 GetGreaterOrEqual . . . 7-40 GetLast . . . 7-42 GetLess . . . 7-43 GetLessOrEqual . . . 7-44 GetNext . . . 7-45 GetNextExtended . . . 7-47 GetPrevious . . . 7-49 GetPreviousExtended. . . 7-50 GetTableList . . . 7-52 GetTotalSegments . . . 7-54 Init . . . 7-55 Insert . . . 7-56 Open . . . 7-58 Refresh . . . 7-59 RemoveItem . . . 7-60 RowColumnValue . . . 7-61 SetFileFlag . . . 7-62 SetOwner . . . 7-63 ShowSelectedFieldsDlg . . . 7-65 ShowSelectedRecordsDlg . . . 7-66 Stat . . . 7-67 StatusDialog . . . 7-68 StepFirst . . . 7-69 StepLast. . . 7-70 StepNext . . . 7-71 StepNextExtended . . . 7-72 StepPrevious . . . 7-74 StepPreviousExtended . . . 7-75 Transaction . . . 7-77 Unlock . . . 7-80 Update . . . 7-81

8

ActiveX イ ベン ト リ フ ァ レ ン ス . . . . 8-1

CommError . . . 8-2

(9)

ix 目次 Logon . . . . 8-3 OnRemote . . . . 8-4 Reposition . . . . 8-6 Validate . . . . 8-7

(10)

1-1 ActiveX の取 り 込みダ イ ア ロ グ ボ ッ ク ス (Delphi) . . . 1-10 2-1 プ ロ パテ ィ ページ ダ イ ア ロ グ ボ ッ ク ス . . . 2-5 2-2 VAccess プ ロ パテ ィ を表示する プ ロ パテ ィ ウ ィ ン ド ウ . . . 2-6 2-3 デー タ に接続す る ためのプ ロ パテ ィ の設定 . . . 2-7 2-4 IndexNumber プ ロ パテ ィ の設定 . . . 2-9 6-1 複数列 リ ス ト ボ ッ ク ス の タ ブ設定 . . . 6-17 6-2 結合テーブル例 . . . 6-45

(11)

xi

1-1 組み込まれてい る ActiveX コ ン ト ロール オブジ ェ ク ト . . . . 1-3 2-1 ActiveX イ ン ターフ ェ イ ス フ ァ イ ル . . . . 2-2 2-2 個々の レ コ ー ド を取得す る ための メ ソ ッ ド. . . . 2-12 2-3 特定の レ コ ー ド を取得す る ための メ ソ ッ ド. . . . 2-13 2-4 レ コ ー ド を追加、 更新お よ び削除す る ためのカ ス タ ム メ ソ ッ ド . . . . 2-14 2-5 再配布可能な フ ァ イ ル. . . . 2-21 4-1 VAccess カ ス タ ム プ ロ パテ ィ . . . . 4-3 4-2 VAccess カ ス タ ム メ ソ ッ ド . . . . 4-3 4-3 VAccess カ ス タ ム イベン ト . . . . 4-4 4-4 VACheck カ ス タ ム プ ロ パテ ィ . . . . 4-5 4-5 VACheck カ ス タ ム メ ソ ッ ド . . . . 4-5 4-6 VACombo カ ス タ ム プ ロ パテ ィ . . . . 4-7 4-7 VACombo カ ス タ ム メ ソ ッ ド . . . . 4-7 4-8 VACommand カ ス タ ム プ ロ パテ ィ . . . . 4-8 4-9 VAHScroll と VAVScroll のカ ス タ ム プ ロ パテ ィ . . . . 4-9 4-10 VAList カ ス タ ム プ ロ パテ ィ . . . . 4-11 4-11 VAList カ ス タ ム メ ソ ッ ド . . . . 4-11 4-12 VAOption カ ス タ ム プ ロ パテ ィ . . . . 4-12 4-13 VAOption カ ス タ ム メ ソ ッ ド . . . . 4-12 4-14 VAText カ ス タ ム プ ロ パテ ィ . . . . 4-13 4-15 VAText カ ス タ ム メ ソ ッ ド . . . . 4-13 5-1 Extended オペレーシ ョ ン用プ ロ パテ ィ および メ ソ ッ ド . . . . 5-3 5-2 Extended オペレーシ ョ ン用 イベン ト . . . . 5-4 5-3 フ ァ イ ルの処理用プ ロ パテ ィ お よ び メ ソ ッ ド . . . . 5-5 5-4 デー タ 辞書処理用プ ロ パテ ィ お よ び メ ソ ッ ド . . . . 5-6 5-5 レ コ ー ド 内の フ ィ ール ド へのア ク セ ス用プ ロ パテ ィ お よ び メ ソ ッ ド . . . . 5-8 5-6 レ コ ー ド の挿入、 更新、 お よ び削除用プ ロ パテ ィ お よ び メ ソ ッ ド . . . . 5-9 5-7 レ コ ー ド の挿入、 更新、 お よ び削除用 イ ベン ト . . . . 5-9 5-8 個別レ コ ー ド 取得用プ ロ パテ ィ お よ び メ ソ ッ ド . . . . 5-10 5-9 個別レ コ ー ド 取得用 イ ベン ト. . . . 5-11 5-10 最適化 と デバ ッ グ用プ ロ パテ ィ お よ び メ ソ ッ ド . . . . 5-12 6-1 Visual Basic 共通の書式文字列 . . . . 6-87 6-2 VAOperation プ ロ パテ ィ で使用可能な レ コー ド オペレーシ ョ ン . . . . 6-91

(12)
(13)

xiii

こ のマニ ュ アルについて

こ のマニ ュ アルでは、Pervasive PSQL 用 ActiveX コ ン ト ロールを使用 し た Pervasive PSQL アプ リ ケーシ ョ ン開発について説明し ます。

(14)

ン ト ロ ール を 使用 し て Pervasive PSQL ア プ リ ケーシ ョ ン を開発す る ユー ザーを対象 と し てい ます。

(15)

xv

こ のマニ ュ アルの構成

『ActiveX Controls Guide』 は、 以下のセ ク シ ョ ンに分かれてい ます。 „ 第 1 章 「ActiveX の概要」 こ の章では、Pervasive PSQL 用の ActiveX コ ン ト ロールの概要を示 し、 新 し い ActiveX バージ ョ ンの主な拡張機能について説明 し ます。 „ 第 2 章 「ActiveX ク イ ッ ク ス ター ト 」 こ の章には、Pervasive PSQL SDK と 共に イ ン ス ト ール さ れる ActiveX フ ァ イ ル と その場所を示す表、 お よ び Pervasive PSQL 用 ActiveX コ ン ト ロ ールを使用す る 基本的な作業についての説明が含 ま れてい ま す。 ActiveX コ ン ト ロ ールについてのほかの情報源の一覧 も 含まれてい ま す。 „ 第 3 章 「ActiveX でのデータ辞書 メ ソ ッ ド の使用」 こ の章では、DDF フ ァ イ ルの作成、 読み取 り および変更で使用する メ ソ ッ ド について説明 し ます。 „ 第 4 章 「ActiveX コ ン ト ロール リ フ ァ レ ン ス」 こ の章で は、ActiveX を サ ポー ト す る ア プ リ ケーシ ョ ン が Pervasive PSQL のデータ にア ク セ ス で き る よ う にする カ ス タ ム コ ン ト ロールに ついて説明 し ます。 „ 第 5 章 「カ テ ゴ リ 別プ ロ パテ ィ 、 メ ソ ッ ド 、 および イベン ト 」 こ の章では、Pervasive PSQL 用 ActiveX コ ン ト ロールに固有のプ ロ パ テ ィ 、 メ ソ ッ ド 、 お よ び イ ベン ト すべて を一覧に し て あ り ます。 „ 第 6 章 「ActiveX プ ロ パテ ィ リ フ ァ レ ン ス」 こ の章では、カ ス タ ム コ ン ト ロールのプ ロパテ ィ について説明し ます。 „ 第 7 章 「ActiveX メ ソ ッ ド リ フ ァ レ ン ス」 こ の章では、 カ ス タ ム コ ン ト ロールに適用 さ れ る メ ソ ッ ド の説明 と 構 文について説明 し ます。 „ 第 8 章 「ActiveX イベン ト リ フ ァ レ ン ス」 こ の章では、 カ ス タ ム コ ン ト ロールに適用 さ れ る イベン ト について説 明 し ます。 こ のマニ ュ アルの巻末には索引が用意 さ れてい ます。

(16)

表記が使用されます。 大文字小文字の 区別 通常、 コ マ ン ド と 予約語は、 大文字で表記 さ れます。 本書で 別途記述がない限 り 、 こ れ ら の項目は大文字、 小文字、 あ る いはそ の両方 を 使 っ て入力で き ま す。 た と えば、 MYPROG、 myprog、 ま たは MYprog と 入力する こ と がで き ます。 太字 太字で表示 さ れ る 単語には次の よ う な も のが あ り ま す。 メ ニ ュ ー名、 ダ イ ア ロ グ ボ ッ ク ス名、 コ マン ド 、 オプシ ョ ン、 ボ タ ン、 ス テー ト メ ン ト な ど。 固定幅フ ォ ン ト 固定幅フ ォ ン ト は、 コ マ ン ド 構文な ど、 ユーザーが入力す る テ キ ス ト に使われます。 [ ] 省略可能な情報には、 [log_name] の よ う に、 角か っ こ が使 用 さ れます。 角かっ こ で囲ま れていない情報は必ず指定す る 必要があ り ます。

| 縦棒は、[file name | @file name] の よ う に、 入力する情報の選 択肢を表 し ます。 < > <> は、 /D=<5|6|7> の よ う に、 必須項目に対す る 選択肢 を表 し ます。 変数 file name の よ う に斜体で表 さ れてい る語は、 適切な値に置 き 換え る 必要のあ る 変数です。 ... [parameter...] の よ う に、 情報の後に省略記号が続 く 場合は、 その情報を繰 り 返 し 使用で き ます。 ::= 記号 ::= は、 あ る項目が別の項目用語で定義 さ れてい る こ と を意味 し ます。 た と えば、a::=b は、 項目 a が b で定義 さ れて い る こ と を意味 し ます。

(17)

1-1

1

ActiveX の概要

こ の章では、Pervasive の ActiveX イ ン タ ーフ ェ イ ス について説明 し ます。 こ こ では、 以下の項目について説明 し ます。 „ 「ActiveX イ ン ターフ ェ イ ス の概要」 (1-2 ページ) „ 「ActiveX イ ン ターフ ェ イ ス の選択」 (1-5 ページ) „ 「重要な機能」 (1-6 ページ) „ 「ActiveX イ ン ターフ ェ イ ス では使用で き ない Pervasive PSQL 機能」(1-8 ページ) „ 「ActiveX コ ン ト ロールを使用する最初の手順」 (1-9 ページ)

(18)

ActiveX イ ン タ ー フ ェ イ スの概要

Pervasive ActiveX イ ン ターフ ェ イ スは、ActiveX をサポー ト する開発環境で Btrieve デー タ に簡単にア ク セ ス で き る よ う にす る 9 個のカ ス タ ム コ ン ト ロ ールか ら 構成 さ れてい ます。 こ の イ ン タ ーフ ェ イ ス には、 1 個のデー タ ソ ース コ ン ト ロール と 8 個のバウ ン ド データ コ ン ト ロールが組み込まれ てい ます。 Pervasive PSQL データ ソ ース コ ン ト ロールは、アプ リ ケーシ ョ ン と Btrieve デー タ フ ァ イ ル間の接続点を提供 し ます。こ のデータ コ ン ト ロールはほか のデー タ ア ウ ェ ア コ ン ト ロ ールのデー タ ソ ー ス の役割 を 果たすほか、 フ ァ イ ルのオープン、 ク ロ ーズお よ び作成や、 レ コ ー ド の検索、 更新お よ び削除な ど、 アプ リ ケーシ ョ ン内の コ ー ド か ら デー タ にア ク セ スす る 際に 使用で き る プ ロ パテ ィ 、 メ ソ ッ ド 、 イ ベン ト を公開 し ます。 Pervasive PSQL バウ ン ド コ ン ト ロールはデー タ ソ ース コ ン ト ロ ールに接 続す る 必要があ る も ので、 こ れ ら にはデー タ ア ウ ェ ア テキ ス ト ボ ッ ク ス、 リ ス ト ボ ッ ク ス、 コ ンボ ボ ッ ク ス、 チ ェ ッ ク ボ ッ ク ス、 オプシ ョ ン ボ タ ンの各 コ ン ト ロ ールが含まれてい ます。リ ス ト ボ ッ ク ス コ ン ト ロール と コ ン ボ ボ ッ ク ス コ ン ト ロールは、 フ ィ ール ド バウ ン ド コ ン ト ロールま たは 複数列レ コ ー ド リ ス ト コ ン ト ロール と し て動作 し ます。 コ マン ド ボ タ ン と 水平お よ び垂直ス ク ロ ール バー コ ン ト ロールで、 イ ンデ ッ ク ス レ コー ド の ス ク ロ ール操作を行い ます。

Microsoft Visual Basic では、 Pervasive PSQL データ ソ ース コ ン ト ロールは デー タ ア ウ ェ ア Visual Basic コ ン ト ロ ール用 と サー ド パーテ ィ デー タ ア ウ ェ ア ActiveX コ ン ト ロール用の レ コー ド ソ ース の役割 も 果たす こ と がで き ます。 こ こ では、 以下の項目について説明 し ます。 „ 「開発環境」 „ 「サー ド パーテ ィ デー タ バウ ン ド コ ン ト ロール」 „ 「ActiveX コ ン ト ロール オブジ ェ ク ト 」

開発環境

ActiveX イ ン ターフ ェ イ スは、 以下の環境をサポー ト し ます。 „ Visual Basic 5.0 以降 „ Delphi 3.0 以降 „ Visual C++ 5.0 以降 „ Borland C++ Builder 3.0 以降

(19)

1-3 ActiveX イ ン タ ー フ ェ イ スの概要 メ モ ほかの開発環境やアプ リ ケーシ ョ ン の中には、 ActiveX コ ン ト ロ ールの拡張機能 も サポー ト す る も のがあ り ます。 ただ し 、Pervasive Software では、上に示 し たプ ロ グ ラ ミ ン グ環境、言語ま たはアプ リ ケー シ ョ ン以外での ActiveX イ ン ターフ ェ イ ス のテ ス ト は行っ てお り ませ ん。

サー ド パーテ ィ

デー タ バウン ド コ ン ト ロール

Pervasive の ActiveX イ ン ターフ ェ イ ス は、 Sheridan、 APEX、 GreenTree お よ び Microsoft の コ ン ト ロ ールか ら デー タ を バ イ ン ド で き ま す。 Pervasive Software では、 Pervasive の ActiveX イ ン ターフ ェ イ ス に書式設定機能やプ レ ゼン テーシ ョ ン機能がない と き だけ こ れ ら のサー ド パーテ ィ 製品を使用 す る よ う にお勧め し てい ます。 Pervasive Software ではサー ド パーテ ィ ソ フ ト ウ ェ アの開発を制御す る こ と はで き ません。し たがっ て、こ れ ら の コ ン ト ロ ールの機能をすべてサポー ト す る わけではあ り ません。 同 じ 理由か ら 、 こ れ ら の製品のテ ク ニ カル サ ポー ト を行っ てお り ません。 メ モ サー ド パーテ ィ データ ア ウ ェ ア コ ン ト ロールへのデー タ バ イ ン ド は、Microsoft Visual Basic 以外の環境ではサポー ト さ れません。

ActiveX コ ン ト ロール オブ ジ ェ ク ト

以下の表に、ActiveX イ ン タ ーフ ェ イ ス に組み込まれてい る ActiveX コ ン ト ロ ール オブジ ェ ク ト を示 し ます。 表 1-1 組み込まれている ActiveX コ ン ト ロール オブジ ェ ク ト アイコン コ ン ト ロール 説明 VAccess デー タ ソ ース コ ン ト ロールはアプ リ ケーシ ョ ンの ソ ース コー ド を提供 し て、Pervasive PSQL バ ウ ン ド コ ン ト ロールがデー タ フ ァ イ ルにア ク セ ス で き る よ う に し ます。 VACheckBox チ ェ ッ ク ボ ッ ク ス をブール (True/False) 型の フ ィ ール ド にバ イ ン ド で き ます。

(20)

VAComboBox デー タ バ ウ ン ド コ ンボ ボ ッ ク ス を レ コー ド 内 の 1 つの フ ィ ール ド にバ イ ン ド す る と 、 その フ ィ ール ド の値 を所定の値の中か ら 選択で き ます。 こ の コ ン ボ ボ ッ ク スは、 レ コー ド リ ス ト コ ン ト ロ ールや使用可能 な イ ン デ ッ ク ス フ ィ ール ド の リ ス ト と し て も 機能 し ます。 VACommandButton デー タ バ ウ ン ド コ マン ド ボ タ ンでは、 レ コー ド の取得、更新、ま たは削除の操作を行え ます。 VAHScrollBar VAVScrollBar デー タ バ ウ ン ド ス ク ロ ール バー を使用す る と 、 イ ンデ ッ ク ス パ ス に沿っ て レ コ ー ド 内を ス キ ャ ンで き ます。 VAListBox リ ス ト ボ ッ ク ス コ ン ト ロ ールを使用す る と 、 所定の値セ ッ ト の中か ら フ ィ ール ド の値 を 選 択で き ます。 こ の コ ン ト ロ ールは、 複数列の レ コ ー ド リ ス ト コ ン ト ロール と し て も 機能 し ま す。 VAOptionButton オプシ ョ ン ボ タ ン をブール (True/False) 型の フ ィ ール ド にバ イ ン ド で き ます。 VATextBox デー タ ア ウ ェ ア テ キ ス ト ボ ッ ク ス では、 あ ら ゆ る フ ィ ール ド の変更を受け入れ、自動的に表 示で き ます。 ま た、 こ のボ ッ ク ス を検索モー ド で使用す る と 、 テ キ ス ト が入力 さ れ る につれ て、フ ァ イ ルか ら 一致す る レ コ ー ド を捜 し 出す こ と がで き ます。 アイコン コ ン ト ロール 説明

(21)

1-5 ActiveX イ ン タ ー フ ェ イ スの選択

ActiveX イ ン タ ー フ ェ イ スの選択

ActiveX は Microsoft の商標用語で、 Windows OLE (オブジ ェ ク ト の リ ン ク と 埋め込み) カ ス タ ム コ ン ト ロールを示 し ます。 ActiveX は当初 Microsoft Visual Basic 言語 の 拡張機能 と し て 開発 さ れ た も の で、 そ の 後す ぐ に、 Microsoft のほかの言語製品や、イ ン ターネ ッ ト エ ク ス プ ロー ラ ーな どのほ かのアプ リ ケーシ ョ ンへ導入 さ れま し た。 ActiveX コ ン ト ロ ール を サポー ト す る 言語 ま たはプ ロ グ ラ ミ ン グ環境で Windows アプ リ ケーシ ョ ン を作成する場合は、 以下の よ う な一般的には難 し い、 エ ラ ー を 起 こ し やすいデー タ ア ク セ ス の作業の多 く を Pervasive ActiveX イ ン ターフ ェ イ ス で処理で き ます。 „ フ ァ イ ルの作成(Create)および Extended オペレーシ ョ ンにおけ る バ ッ フ ァ ーの設定 と 使用 „ デー タ 変換お よ びフ ィ ール ド レベルのア ク セ ス の提供 „ フ ァ イ ル間の イ ンデ ッ ク ス付 き 結合の保守

Microsoft Visual Basic では、 こ れ ら の コ ン ト ロールは Visual Basic のテ キ ス ト ボ ッ ク ス コ ン ト ロール と リ ス ト ボ ッ ク ス コ ン ト ロール、 APEX および Sheridan のグ リ ッ ド コ ン ト ロ ール、 その他のデー タ ア ウ ェ ア オブジ ェ ク

ト のデー タ に対す る シーム レ ス な ア ク セ ス も 実現 し ます。

Visual Basic のほか、 Microsoft Visual C/C++、 Borland Delphi、 C++ Builder な ど の多数のプ ロ グ ラ ミ ン グ環境 も 、ActiveX コ ン ト ロ ールをサポー ト し ま す。 ただ し 、Microsoft Visual Basic データ バ イ ン ド は Visual Basic 以外では サポー ト さ れません。 こ れ ら の言語で ActiveX イ ン ターフ ェ イ ス を使用す る 予定であ り 、 アプ リ ケーシ ョ ンがテ キ ス ト ボ ッ ク ス、 リ ス ト ボ ッ ク ス、 グ リ ッ ド な ど のユーザー イ ン タ ーフ ェ イ ス オブジ ェ ク ト を必要 と す る 場 合は、Pervasive PSQL SDK ActiveX イ ン タ ー フ ェ イ ス に用意 さ れ て い る Pervasive デー タ バ ウ ン ド コ ン ロ ール を 使用す る か、 ア プ リ ケーシ ョ ン コ ー ド 内で こ れ ら へのデー タ バ イ ン ド を実装する必要があ り ます。

ActiveX イ ン タ ー フ ェ イ ス を利用する と き

Pervasive ActiveX イ ン ターフ ェ イ スは、 SQL ア ク セ スやデータベース抽象 化 よ り デー タ ベー ス のパ フ ォ ーマ ン ス が重要で あ る アプ リ ケーシ ョ ン で、 ODBC イ ン ターフ ェ イ ス の代替 と し て使用で き ます。 こ の イ ン ターフ ェ イ ス は同 じ 基本的なデー タ サービ ス の多 く を提供 し ますが、 リ レーシ ョ ナル (SQL) でな く ト ラ ンザ ク シ ョ ナル (Btrieve) データ モデルを使用 し ます。

(22)

重要な機能

Pervasive ActiveX イ ン タ ーフ ェ イ ス には、 Pervasive PSQL でのアプ リ ケー シ ョ ン開発を容易にす る 主要な機能が数多 く あ り ます。

VB 内のデー タ アウ ェ ア コ ン ト ロールのデー タ ソ ース

Apex TrueGrid グ リ ッ ド コ ン ト ロールや Sheridan Data Widgets の よ う なサー ド パーテ ィ コ ン ト ロールな ど、 Visual Basic 内のほかのデータ ア ウ ェ ア コ ン ト ロ ールで、Pervasive ActiveX イ ン ターフ ェ イ ス をデータ ソ ース と し て 使用で き ます。Pervasive バウ ン ド コ ン ト ロールは、 Visual Basic 環境やそ の他の開発環境で使用で き ます。

フ ィ ール ド

レベル ア ク セス

ActiveX イ ン タ ーフ ェ イ ス では、 デー タ 辞書フ ァ イ ル (DDF) を使用 し て Pervasive PSQL デー タ にフ ィ ール ド レベルでア ク セ ス し ます。 フ ィ ール ド は、 名前ま たは序数で参照で き ます。LVAR 以外の Pervasive PSQL フ ィ ー ル ド データ型はすべてサポー ト さ れます。

プ ロパテ ィ および メ ソ ッ ド

イ ン タ ー フ ェ イ ス

ActiveX イ ン ターフ ェ イ スは、 コ ン ト ロール オブジ ェ ク ト のほかに、 プ ロ グ ラ ミ ン グの利便性 と 柔軟性を高め る ための多数のプ ロ パテ ィ と メ ソ ッ ド を提供 し ます。 こ れ ら のプ ロ パテ ィ と メ ソ ッ ド を使用す る と 、 大量の コ ー ド を記述せずに多数の Pervasive PSQL オペレーシ ョ ン を設定および実行で き ます。 ま た、Pervasive PSQL バウ ン ド コ ン ト ロール、 プ ロ グ ラ ミ ン グ環 境ま たはその他のサー ド パーテ ィ コ ン ト ロール と の対話処理を通 じ、 コー ド に よ っ てデー タ を処理で き ます。

Extended オペレーシ ョ ン

Pervasive の ActiveX イ ン ターフ ェ イ スは、 ク ラ イ ア ン ト / サーバー レ コー ド セ ッ ト のキ ャ ッ シ ュ、 フ ィ ール ド の選択、 レ コー ド のフ ィ ル ター処理な ど の機能を提供す る Pervasive PSQL Extended オペレーシ ョ ンの使用を簡単 に し ます。 Extended オペレーシ ョ ンには、 集中管理 さ れてい るデータベース に対 し て 分散ア プ リ ケーシ ョ ン を実行す る 際のネ ッ ト ワ ー ク ト ラ フ ィ ッ ク を最小 限に し てパフ ォーマ ン ス を向上 さ せ、グ リ ッ ド コ ン ト ロールやレ コー ド リ ス ト な ど の複数行オブジ ェ ク ト の実装を容易にす る 機能があ り ます。

(23)

1-7 重要な機能

DDF

ActiveX イ ン ターフ ェ イ スは、 ODBC イ ン ターフ ェ イ ス と 同様 DDF を必要 と し ま す。DDF フ ァ イ ル と デー タ ベー ス に ア ク セ ス す る には、 Pervasive PSQL Control Center を使用し ます。

Pervasive PSQL Control Center の 詳細 に つ い て は、 『Pervasive PSQL User's Guide』 ま たは Pervasive PSQL Control Center のオン ラ イ ン ヘルプを参照 し て く だ さ い。

ActiveX DDF ア ク セス メ ソ ッ ド

デー タ ソ ース には、 アプ リ ケーシ ョ ン コー ド 内か ら DDF 情報にア ク セ ス す る 手段があ り ます。

リ モー ト

デー タ ア ク セス

ActiveX イ ン タ ーフ ェ イ ス を使用す る と 、 ワー ク ス テーシ ョ ンや ク ラ イ ア ン ト / サーバー オプシ ョ ン以外に も 、 URI を使っ て Pervasive PSQL データ にア ク セ ス で き ます。

結合テーブル

VAccess コ ン ト ロールの Join プ ロ パテ ィ を使用する と 、 2 つのフ ァ イ ルを キー値で リ ン ク し 、 第 1 のフ ァ イ ルの レ コー ド 位置の変更が、 第 2 のフ ァ イ ルか ら 検索 さ れた レ コ ー ド に も 反映 さ れ る よ う に指定す る こ と がで き ま す。Join プ ロ パテ ィ は、 リ レーシ ョ ナル データベース を参照する ための簡 単な機能を提供 し ます。

(24)

ActiveX インターフェイスでは使用できない Pervasive PSQL 機能

以下の機能は Pervasive PSQL の一部ですが、 ActiveX イ ン ターフ ェ イ ス で はサポー ト さ れません。

SQL 構文

ActiveX イ ン タ ーフ ェ イ ス は、 Pervasive PSQL デー タ ベース に ト ラ ンザ ク シ ョ ナル イ ン ターフ ェ イ ス を公開 し ます。 こ の イ ン ターフ ェ イ スは リ レー シ ョ ナル モデル イ ン タ ーフ ェ イ ス を公開せず、 SQL ク エ リ 処理機能があ り ません。

チ ャ ン ク

オペレーシ ョ ン、 非常に大き な レ コ ー ド

Pervasive ActiveX は、 Pervasive PSQL Chunk オペレーシ ョ ン プ リ ミ テ ィ ブ を サポー ト し ま せん。ActiveX イ ン タ ーフ ェ イ ス でサポー ト さ れ る 最大レ コ ー ド サ イ ズは、 データ辞書の限界に よ り 決ま り ます。 固定レ コー ド 長の 限界は 4 KB であ り 、固定長 と 可変長を組み合わせた最大長は 32 KB です。

複数の ACS を使用する フ ァ イルの作成

ActiveX イ ン ターフ ェ イ スは、 複数のオル タ ネー ト コ レーテ ィ ン グ シーケ ン ス (ACS) を持つ新規テーブルを作成する イ ン ターフ ェ イ ス を公開 し ま せん。 ただ し 、ActiveX イ ン タ ーフ ェ イ ス は こ れ ら の イ ンデ ッ ク ス を使用 す る テーブルで イ ンデ ッ ク ス を正 し く 照合 し ます。

デー タ 型

次の Pervasive PSQL データ型は ActiveX イ ン ターフ ェ イ ス ではサポー ト さ れません。 „ LONGVARCHAR „ LONGVARBINARY

URI 構文

Pervasive ActiveX では HostAddress プ ロ パテ ィ お よ び DatabaseName プ ロ パテ ィ を使っ て、 リ モー ト マシ ンに接続す る ための URI を作成 し ま す。 ただ し 、 コ ー ド か ら すべての URI 構文パ ラ メ ーターを指定する こ と は で き ま せ ん。 デー タ ベー ス が セ キ ュ リ テ ィ で 保護 さ れ て い る 場合 は、 ActiveX コ ン ト ロ ールは prompt=yes パ ラ メ ー タ ーを使用す る こ と に よ り 、 ユーザーに資格情報を要求す る よ う 、 ト ラ ンザ ク シ ョ ナル イ ン ターフ ェ イ ス に指示 し ます。

(25)

1-9 ActiveX コ ン ト ロールを使用する最初の手順

ActiveX コ ン ト ロールを使用する最初の手順

こ こ では、Pervasive PSQL で処理をすばや く 開始する方法を示 し ます。 こ のセ ク シ ョ ンの作業を実行すれば、Pervasive PSQL アプ リ ケーシ ョ ンの開 発を順調に進め る こ と がで き る で し ょ う 。

„ Pervasive PSQL Control Center を使用 し てデータベース を作成する „ Pervasive の Active X イ ン ターフ ェ イ ス を開発ツールに イ ンポー ト す

る (Visual Basic と Delphi の説明)

Pervasive PSQL Control Center を使用 し てデー タ ベース を作成する

Pervasive PSQL デー タベース を作成する最 も 簡単な方法は、Pervasive PSQL Control Center を 使用す る こ と で す。 こ れは Windows の [ス タ ー ト ] メ ニ ュ ーか ら 開 く こ と がで き ます。既存の Btrieve フ ァ イ ルに リ レーシ ョ ナル 機能を追加す る か、 新 し いデー タ ベース を作成で き ます。 こ のデー タ ベー ス は、ほかのアプ リ ケーシ ョ ン で Btrieve データ にア ク セ ス で き る よ う に標 準デー タ 辞書フ ァ イ ル (DDF) を作成し ます。

『Pervasive PSQL User's Guide』にはデータベース の作成方法のチ ュー ト リ ア ルが含まれてお り 、 『Advanced Operations Guide』 には既存の Btrieve フ ァ イ ルに DDF を作成する方法のチ ュー ト リ アルが含まれてい ます。 『Pervasive PSQL User's Guide』 には、 リ レ ーシ ョ ナル機能 (FILE.DDF、 INDEX.DDF お よ び FIELD.DDF) に よ る新 し いデータベース の作成を順を追っ てすばや

く 行え る よ う にす る ための説明が記載 さ れてい ます。

Visual Basic と Delphi への ActiveX イ ン タ ー フ ェ イ スのイ ンポー ト

以下の手順では ActiveX コ ン ト ロールを IDE に イ ンポー ト する方法を示 し ます。

Visual Basic

¾

Visual Basic プ ロジ ェ ク ト に ActiveX コ ン ト ロールを イ ンポー ト するには 1 メ ニ ュ ー バーか ら [プ ロ ジ ェ ク ト ] を選択 し ます。

2 [プ ロ ジ ェ ク ト ] ド ロ ッ プダ ウ ン メ ニ ューか ら [コ ンポーネン ト ] を 選択 し ます。

3 [ コ ンポーネ ン ト ] ダ イ ア ロ グ ボ ッ ク ス か ら [コ ン ト ロール] タ ブを 選択 し ます。

4 [Pervasive ActiveX Data Source] および [Pervasive Bound Controls] オプシ ョ ン を選択 し ます。

(26)

¾

ActiveX コ ン ト ロールを Delphi へイ ンポー ト するには

1 [ コ ンポーネ ン ト ] メ ニ ュ ーか ら [ActiveX コ ン ト ロールの取 り 込み] を選択 し ます。 [ActiveX の取 り 込み] ダ イ ア ロ グ ボ ッ ク ス が表示 さ れ ます。

図 1-1 ActiveX の取 り 込みダ イ ア ログ ボ ッ ク ス (Delphi)

2 [Pervasive ActiveX Data Source] を選択 し た後、 [イ ン ス ト ール] を ク リ ッ ク し ます。

3 次 に、 バ ウ ン ド コ ン ト ロ ー ル を イ ン ポ ー ト す る 必要 が あ り ま す。 [ActiveX の 取 り 込み] ダ イ ア ロ グ ボ ッ ク ス で [Pervasive Bound Controls] を選択し 、 [イ ン ス ト ール] を ク リ ッ ク し ます。

こ れで青い ActiveX コ ン ト ロ ール ア イ コ ンが Delphi コ ン ポーネ ン ト パレ ッ ト [ActiveX] ページに表示 さ れます。

(27)

2-1

2

ActiveX ク イ ッ ク ス タ ー ト

こ の章では、Pervasive の ActiveX イ ン ターフ ェ イ ス に付属する フ ァ イ ルの デ ィ レ ク ト リ 構造を示すほか、 コ ン ト ロ ールを使用す る アプ リ ケーシ ョ ン の開発に関わ る 基本的作業手順について説明 し ます。 こ の章では、 以下の 項目について説明 し ます。 „ 「フ ァ イ ル と デ ィ レ ク ト リ 」 (2-2 ページ) „ 「ActiveX イ ン ターフ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成」 (2-3 ページ) 主な作業の リ ス ト については、上記のセ ク シ ョ ン を参照 し て く だ さ い。 „ 「Pervasive PSQL ActiveX フ ァ イ ルの配布 と 登録」 (2-21 ページ) „ 「ActiveX イ ン ターフ ェ イ ス に関する追加情報」 (2-22 ページ)

(28)

フ ァ イル と デ ィ レ ク ト リ

Pervasive の ActiveX イ ン ターフ ェ イ ス フ ァ イ ル と デ ィ レ ク ト リ を表 2-1 に 示 し ます。 こ の表では、Pervasive PSQL がデフ ォ ル ト の場所に イ ン ス ト ー ル さ れてい る こ と を前提 と し てい ます。Pervasive PSQL フ ァ イ ルのデフ ォ ル ト の 保 存 場 所 に つ い て は、 『Getting Started with Pervasive PSQL』 の 「Pervasive PSQL フ ァ イ ルが イ ン ス ト ール さ れる場所」 (7-2 ページ) を参照 し て く だ さ い。 ア プ リ ケーシ ョ ン の実装に必要な フ ァ イ ルについ て は、 「Pervasive PSQL ActiveX フ ァ イ ルの配布 と 登録」 (2-21 ページ) を参照 し て く だ さ い。 表 2-1 ActiveX イ ン タ ー フ ェ イ ス フ ァ イル フ ァ イル 場所 説明

ACBTR732.OCX file_path\PSQL\bin\ Pervasive PSQL デー タ ソ ース コ ン ト ロール ACCTR732.OCX file_path\PSQL\bin\ Pervasive PSQL バ ウ ン ド コ ン ト ロール *.DDF、 *.MKD C:\Documents and Settings\All Users\

Application Data\Pervasive Software\ PSQL\Demodata

デー タ 辞書フ ァ イ ル (.DDF) と MicroKernel エ ン ジ ンのテーブル (.MKD フ ァ イ ル)

readme_activex.htm file_path\PSQL\Docs\SDK 重要な情報 と マニ ュ アルの改訂事項 PSQL.JAR file_path\PSQL\bin\ Pervasive Java ア ク セ ス ラ イ ブ ラ リ 用 JAR

(29)

2-3 ActiveX イ ン タ ー フ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成

ActiveX イ ン タ ー フ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成

こ こ では、ActiveX イ ン タ ーフ ェ イ ス を使用 し た アプ リ ケーシ ョ ンの作成 に関連す る 主な作業を行 う 方法について説明 し ます。 作業項目は以下の と お り です。 „ 「プ ロ ジ ェ ク ト への ActiveX イ ン ターフ ェ イ ス の追加」 „ 「VAccess コ ン ト ロールの使用」 (2-4 ページ) „ 「プ ロ パテ ィ へのア ク セ ス」 (2-4 ページ) „ 「プ ロ パテ ィ の設定」 (2-6 ページ) „ 「Pervasive PSQL フ ァ イ ルへの接続」 (2-7 ページ) „ 「 イ ンデ ッ ク ス の選択」 (2-8 ページ) „ 「自動 と 手動の フ ァ イ ル オープンの設定」 (2-10 ページ) „ 「デー タ ソ ースへのバウ ン ド コ ン ト ロールの リ ン ク 」 (2-11 ページ) „ 「レ コ ー ド の取得」 (2-11 ページ) „ 「特定の レ コ ー ド の検索」 (2-12 ページ) „ 「レ コ ー ド の追加、 更新お よ び削除」 (2-14 ページ) „ 「レ コ ー ド の ロ ッ ク 」 (2-14 ページ) „ 「フ ァ イ ルの結合」 (2-15 ページ) „ 「Extended オペレーシ ョ ンの有効化」 (2-16 ページ)

プ ロ ジ ェ ク ト への ActiveX イ ン タ ー フ ェ イ スの追加

¾

Pervasive の ActiveX イ ン タ ー フ ェ イ スのデー タ ソ ース と バウン ド コ ン ト ロールを Visual Basic プ ロ ジ ェ ク ト に追加するには 1 [プ ロ ジ ェ ク ト ] メ ニ ュ ーか ら [ コ ンポーネ ン ト ] を選択 し ます (ま た は、ツールボ ッ ク ス を右 ク リ ッ ク し 、[ コ ンポーネ ン ト ]を選択 し ます)。 2 コ ン ト ロ ール リ ス ト 内を ス ク ロール し、 [Pervasive ActiveX Data Source] と [Pervasive Bound Controls]チ ェ ッ ク ボ ッ ク ス を選択し ます。 3 [OK] を ク リ ッ ク し ます。

(30)

VAccess コ ン ト ロールの使用

VAccess コ ン ト ロ ールはデー タ を ポ イ ン ト す る も の で、 ほ か すべ て の Pervasive PSQL コ ン ト ロ ールがバ イ ン ド す る マ ス タ ー コ ン ト ロ ールです。

こ の コ ン ト ロ ールは、Pervasive PSQL と のすべての通信を処理し ます。

¾

Visual Basic フ ォームにデー タ ソ ース コ ン ト ロールを追加するには 1 Pervasive PSQL ActiveX コ ン ト ロールを含んでい る Visual Basic のツー

ルボ ッ ク ス を ク リ ッ ク し ます。 2 VAccess コ ン ト ロール ア イ コ ン を ク リ ッ ク し ます。 3 フ ォームにカー ソ ルを置いて ド ラ ッ グ し 、 コ ン ト ロ ールを保持す る た めの四角形を作成 し ま す。 マ ウ ス を離す と 、ActiveX イ ン タ ーフ ェ イ ス が四角形内に表示 さ れます。 こ の コ ン ト ロ ールは、 設計時にはア イ コ ン と し て表示 さ れますが、 実行時には表示 さ れません。 ま た、Pervasive PSQL の起動画面には、 Pervasive PSQL ワー ク ス テー シ ョ ン エン ジ ンが起動 さ れた こ と が表示 さ れます。 4 デフ ォ ル ト では、 フ ォームに配置す る 最初の VAccess コ ン ト ロールに は VAccess1 と い う 名前が付き ます。 必要であれば、 Name プ ロ パテ ィ に新 し い名前を入力 し て こ の名前を変更で き ます。 次に、こ の VAccess コ ン ト ロールのプ ロ パテ ィ を設定する必要があ り ます。 「プ ロ パテ ィ へのア ク セ ス」 (2-4 ページ)、 「プ ロ パテ ィ の設定」 (2-6 ペー ジ) お よ び 「Pervasive PSQL フ ァ イ ルへの接続」 (2-7 ページ) をお読み く だ さ い。

プ ロパテ ィ へのア ク セス

コ ン ト ロ ールのプ ロ パテ ィ は次の 3 つの場所で設定で き ます。 „ プ ロ パテ ィ ページ ダ イ ア ロ グ ボ ッ ク ス

(31)

2-5 ActiveX イ ン タ ー フ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成 „ Visual Basic のプ ロ パテ ィ ウ ィ ン ド ウ „ Visual Basic コー ド エデ ィ ター

プ ロパテ ィ

ページ

コ ン ト ロ ールを右 ク リ ッ ク し 、シ ョ ー ト カ ッ ト メ ニ ューか ら [プ ロパテ ィ ] を選択す る と 、 プ ロ パテ ィ ページが表示 さ れます。 こ れは、 コ ン ト ロール の Pervasive PSQL ActiveX プ ロ パテ ィ を設定で き る タ ブ付き のダ イ ア ロ グ ボ ッ ク ス です。 詳細については、 図 2-1 を参照し て く だ さ い。 図 2-1 プ ロパテ ィ ページ ダ イ ア ログ ボ ッ ク ス

Visual Basic のプ ロパテ ィ ウ ィ ン ド ウ

Visual Basic のプ ロ パテ ィ ウ ィ ン ド ウ には、 Visual Basic に固有のプ ロ パ テ ィ な ど、選択 し たオブジ ェ ク ト のすべてのプ ロ パテ ィ セ ッ ト が表示 さ れ ます。 図 2-2 (2-6 ページ) を参照し て く だ さ い。

(32)

Visual Basic コ ー ド エデ ィ タ ー

フ ォーム ま たは コ ン ト ロ ールを ダブル ク リ ッ ク す る と 、Visual Basic の コー ド エデ ィ ターが開き ます。コー ド エデ ィ ターの使用方法については、Visual Basic のマニ ュ アルを参照 し て く だ さ い。各プ ロ パテ ィ の構文な どの詳細に ついては、 本マニ ュ アルを参照 し て く だ さ い。

プ ロパテ ィ の設定

¾

コ ン ト ロールのプ ロパテ ィ を設定するには 1 プ ロ パテ ィ を設定す る コ ン ト ロ ールを選択 し ます。

(33)

2-7 ActiveX イ ン タ ー フ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成 2 プ ロ パテ ィ ページ、 Visual Basic プ ロ パテ ィ ウ ィ ン ド ウ ま たは コー ド エデ ィ タ ーで変更す る プ ロ パテ ィ を検索 し ます。 プ ロ パテ ィ へのア ク セ ス については、 「プ ロ パテ ィ へのア ク セ ス」 (2-4 ページ) を参照 し て く だ さ い。 3 追加ま たは変更す る 各プ ロ パテ ィ の値を設定す る には、 テ キ ス ト ボ ッ ク ス にその値を入力す る か、 フ ィ ール ド を ク リ ッ ク し た と き に表示 さ れ る ド ロ ッ プダ ウ ン リ ス ト か ら 値を選択する か、 あ る いは、 値の設定 が行え る ダ イ ア ロ グ ボ ッ ク ス を呼び出す省略記号を ク リ ッ ク し ます。 メ モ プ ロ パテ ィ には、 設計時ま たは実行時に設定で き る も の と 、 設 計時ま たは実行時に し か設定で き ない も のがあ り ます。

Pervasive PSQL フ ァ イルへの接続

VAccess コ ン ト ロ ールには、 こ の コ ン ト ロ ール を Pervasive PSQL デー タ フ ァ イ ルへ接続す る ための重要なプ ロ パテ ィ と し て、DdfPath、TableName お よ び Location と い う 3 つのプ ロ パテ ィ があ り ます。 こ れ ら のプ ロ パテ ィ にア ク セ スす る 最 も 簡単な方法は、 コ ン ト ロ ールを右 ク リ ッ ク し てシ ョ ー ト カ ッ ト メ ニ ューか ら [プ ロパテ ィ ] を選択 し た と き に表示 さ れ る プ ロ パ テ ィ ページか ら ア ク セ スする方法です。 プ ロ パテ ィ ウ ィ ン ド ウ か ら も 、 こ れ ら のプ ロ パテ ィ にア ク セ ス で き ます。 図 2-3 デー タ に接続するためのプ ロパテ ィ の設定

(34)

„ DdfPath - こ のプ ロ パテ ィ は、 VAccess コ ン ト ロールで使用する DDF (デー タ 辞書 フ ァ イ ル) の位置 を決定 し ま す。 プ ロ パテ ィ には、DDF が置かれてい る 有効な ド ラ イ ブ と パス が含まれていなければな り ませ ん。 „ TableName - こ のプ ロ パテ ィ は、 DDF のどのテーブル (データ フ ァ イ ル) が VAccess コ ン ト ロールで使用 さ れる かを決定 し ます。DdfPath で指定 さ れた DDF に含まれてい る 有効な テーブル名に設定す る 必要 が あ り ま す。 ド ロ ッ プダ ウ ン メ ニ ュ ーか ら テーブル名を選択で き ま す。

„ Location - こ のプ ロ パテ ィ は、どの Pervasive PSQL テーブルが VAccess コ ン ト ロ ールで使用 さ れ る か を決定 し ます。FILE.DDF に含まれてい る Table Location に 対応 し ま す。 こ の プ ロ パ テ ィ の デ フ ォ ル ト は TableName プ ロ パテ ィ で指定 さ れた テーブルの Table Location です が、 必要に応 じ てテーブルに代替パス を与え る こ と がで き ます。

¾

デー タ を指定する プ ロパテ ィ を設定するには 1 デー タ に接続す る VAccess コ ン ト ロールを選択 し ます。 2 VAccess コ ン ト ロールの DdfPath を設定し ます。 3 TableName プ ロ パテ ィ の ド ロ ッ プダ ウ ン メ ニ ューか ら テーブル名を 選択 し ます。 こ の メ ニ ュ ーには、 ス テ ッ プ 2 で指定し た DDF で使用で き る テーブル名が含まれてい ます。 こ の VAccess コ ン ト ロールにバ イ ン ド する バウ ン ド コ ン ト ロールはす べて、 こ のテーブルを参照 し ます。 4 ス テ ッ プ 3 でテーブル名を選択する と 、 Location プ ロ パテ ィ はその テーブルを含んでい る .MKD フ ァ イ ルに変更 さ れます。 デー タ への接続を完了す る には、IndexNumber プ ロ パテ ィ を ア ク セ ス し たい イ ンデ ッ ク ス に設定 し ます。 メ モ 実行時に コ ー ド か ら こ れ ら のプ ロ パテ ィ を設定 し て も 、 同 じ 順 序が適用 さ れます。

イ ンデ ッ ク スの選択

VAccess コ ン ト ロールの IndexNumber プ ロ パテ ィ は、 レ コー ド 取得 メ ソ ッ ド を呼び出す と き に VAccess コ ン ト ロールで使用 さ れ る イ ンデ ッ ク ス を決 定 し ます。 こ の イ ンデ ッ ク ス は、 設計時に VAccess コ ン ト ロールのプ ロ パ テ ィ ウ ィ ン ド ウ で設定する か、あ る いは、実行時に コー ド で設定で き ます。

(35)

2-9 ActiveX イ ン タ ー フ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成

¾

設計時に イ ンデ ッ ク ス番号を設定するには プ ロ パテ ィ ウ ィ ン ド ウ では、 IndexNumber プ ロ パテ ィ の ド ロ ッ プダ ウ ン リ ス ト か ら 値を選択 し てプ ロ パテ ィ を設定で き ます。 次の よ う に、 プ ロ パテ ィ ページか ら IndexNumber を設定する こ と も で き ます。 1 イ ンデ ッ ク ス番号を設定す る 特定の VAccess コ ン ト ロールを選択 し ま す。 2 右 ク リ ッ ク し てプ ロ パテ ィ ページ ダ イ ア ロ グ ボ ッ ク ス を開き ます。 3 VAccess1 プ ロ パテ ィ ページ ダ イ ア ロ グ ボ ッ ク ス の [Settings] タ ブを ク リ ッ ク し 、IndexNumber フ ィ ール ド を ク リ ッ ク し ま す。 選択 し た テーブルに定義 さ れてい る イ ンデ ッ ク ス の リ ス ト が表示 さ れます。 4 イ ンデ ッ ク ス 0 - ID を選択 し、 [OK] を ク リ ッ ク し ます。 図 2-4 に設 定を示 し ます。 図 2-4 IndexNumber プ ロパテ ィ の設定 実行時に イ ン デ ッ ク ス 番号 を 設定す る 方法 と し て、 コ ー ド に よ る 方法 と VAComboBox コ ン ト ロールに よ る方法があ り ます。

¾

実行時に コ ー ド によ り イ ンデ ッ ク ス番号を設定するには 1 イ ンデ ッ ク ス を設定す る VAccess コ ン ト ロールを ダブル ク リ ッ ク し ま す。 コ ー ド エデ ィ ターが呼び出 さ れます。 2 以下の例に倣っ て、 コ ー ド を入力 し ます。 VAccess1.IndexNumber = 0 '最初の イ ンデ ッ ク ス を選択

(36)

1 フ ォームに VAComboBox を配置し て選択し ます。

2 VAccessName プ ロ パテ ィ を VAccess コ ン ト ロールの名前に設定 し、 VAFieldName プ ロ パテ ィ を [Index List] に設定し ます。 VAComboBox にはフ ァ イ ルか ら イ ンデ ッ ク ス の リ ス ト が自動的に設定 さ れ、 こ の リ ス ト か ら の選択に よ っ て、VAccess コ ン ト ロ ールで使用 さ れ る イ ン デ ッ ク ス が設定 さ れます。

自動 と 手動のフ ァ イル

オープ ンの設定

VAccess コ ン ト ロールは AutoOpen プ ロ パテ ィ の設定状態に基づいて、2 つ の 方 法 の い ず れ か で Pervasive PSQL デー タ フ ァ イ ル を 開 き ま す (AutoOpen は設計時のみのプ ロ パテ ィ です)。

„ AutoOpen が True に設定 さ れてい る場合、 VAccess コ ン ト ロールは DdfPath、 TableName、 および Location プ ロ パテ ィ の設定に基づいて、 実行時に フ ァ イ ルが ロ ー ド さ れ る と き 、 その フ ァ イ ルを自動的に開 き ます。 コ ン ト ロ ールは、 フ ァ イ ルがア ン ロ ー ド さ れ る と き に自動的に フ ァ イ ルを閉 じ ます。

„ AutoOpen が False に設定 さ れてい る場合、 コ ン ト ロールは Open メ ソ ッ ド が 呼 び 出 さ れ る ま で フ ァ イ ル を 開 き ま せ ん。DdfPath、 TableName お よび Location プ ロ パテ ィ はプ ロ パテ ィ ウ ィ ン ド ウ で設 定す る ほか、Open の前に コ ー ド で設定で き ます。 し たがっ て、 同 じ VAccess コ ン ト ロ ールで異 な る 時間に異 な る フ ァ イ ル を 開い た り 、 フ ァ イ ル を 選択す る た めにユーザー入力 を 受け入れ る こ と がで き ま す。Close メ ソ ッ ド は、 開いてい るデータ フ ァ イ ルを閉 じ ます。 「例」 (2-11 ページ) も 参照 し て く だ さ い。

¾

AutoOpen プ ロパテ ィ を設定するには プ ロ パテ ィ ウ ィ ン ド ウ で AutoOpen プ ロ パテ ィ を設定する には、 ド ロ ッ プ ダ ウ ン リ ス ト か ら True ま たは False を選択 し ます。 次の よ う に、プ ロ パテ ィ ページか ら AutoOpen を設定する こ と も で き ます。 1 コ ン ト ロ ールを右 ク リ ッ ク し てプ ロ パテ ィ ページ を呼び出 し ます。 2 [Settings] タ ブを ク リ ッ ク し ます。 3 AutoOpen チ ェ ッ ク ボ ッ ク ス を選択ま たは選択解除 し ます。 チ ェ ッ ク ボ ッ ク ス を選択す る と 、AutoOpen が True に設定 さ れます。 チ ェ ッ ク ボ ッ ク ス を選択解除す る と 、AutoOpen が False に設定 さ れます。

(37)

2-11 ActiveX イ ン タ ー フ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成 例 こ の例は、AutoOpen が False に設定 さ れてい る場合に、 フ ァ イ ルを閉 じ、 別の フ ァ イ ルを開 く 方法を示 し た も のです。 ' 現在開いてい る フ ァ イ ルを閉じ る VAccess1.Close ' データ辞書情報を設定する VAccess1.DdfPath = "file_path\PSQL\Demodata\" VAccess1.TableName = "Student" ' フ ァ イ ルを開 く VAccess1.Open

デー タ

ソ ースへのバウン ド コ ン ト ロールの リ ン ク

VAccess コ ン ト ロ ールを フ ォームに追加 し てプ ロ パテ ィ を設定 し た後、 必 要なバ ウ ン ド コ ン ト ロールを追加 し、 こ の VAccess コ ン ト ロールにバ イ ン ド す る こ と がで き ま す。 こ れに よ り 、 それ ら のバ ウ ン ド コ ン ト ロ ールは VAccess コ ン ト ロ ールが指定するデー タ に リ ン ク さ れます。 特定のバ ウ ン ド コ ン ト ロールについては、 「ActiveX コ ン ト ロール リ フ ァ レ ン ス」 (4-1 ページ) を参照 し て く だ さ い。

¾

8 個ある Pervasive バウン ド コ ン ト ロールのどれかをデー タ に リ ン ク す るには 1 バ ウ ン ド コ ン ト ロールの VAccessName プ ロ パテ ィ を、 既にデータ を ポ イ ン ト し てい る VAccess デー タ ソ ース コ ン ト ロ ールの名前に設定 し ます。 2 VATextBox や VAOptionButton な どのフ ィ ール ド バウ ン ド コ ン ト ロー ルの場合は、VAFieldName プ ロ パテ ィ をデータ ソ ース コ ン ト ロール内 の フ ィ ール ド の う ちの 1 つの名前に設定する必要 も あ り ます。

レ コ ー ド の取得

以下の 3 つの方法で レ コー ド を取得で き ます。 „ VAHScrollBar ま たは VAVScrollBar に よ る方法 „ VACommandButton に よ る方法 „ コ ー ド に よ る 方法

¾

ス ク ロール バーで レ コ ー ド を取得するには 1 VAHScrollBar ま たは VAVScrollBar を フ ォームに追加し て選択し ます。 2 VAccessName プ ロ パテ ィ を使用する VAccess コ ン ト ロールに設定 し ます。

¾

コ マ ン ド ボ タ ン で レ コ ー ド を取得するには 1 フ ォームに VACommandButton を追加 し て選択 し ます。

(38)

設定 し 、VAOperation プ ロ パテ ィ を希望の取得オペレーシ ョ ンに設定 し ます。 使 用 可 能 な Pervasive PSQL オ ペ レ ー シ ョ ン の リ ス ト に つ い て は 、 「VAOperation」 (6-91 ページ) を参照 し て く だ さ い。

¾

コ ー ド で レ コ ー ド を取得するには „ 表 2-2 のメ ソ ッ ド のう ち の 1 つを 使用し ま す。 Get メ ソ ッ ド は、 IndexNumber プ ロ パテ ィ で指定 さ れた イ ン デ ッ ク ス を 使用 し ま す。 Step メ ソ ッ ド は イ ンデ ッ ク ス を使用 し ません。 例 ' 人の名前を表示 ' データ辞書情報を設定 'VAccess1.DdfPath = "file_path\PSQL\Demodata\" 'VAccess1.TableName = "Person"

'VAccess1.IndexNumber = 1 '(Last_Name + First_Name)

Stat = VAccess1.GetFirst While Stat = 0

List1.AddItem VAccess1.FieldValue("Last_Name") _ & " " & VAccess1.FieldValue("First_Name")

Stat = VAccess1.GetNext Wend

特定のレ コ ー ド の検索

以下の 2 つの方法で特定のレ コー ド を検索で き ます。 „ バ ウ ン ド コ ン ト ロールに よ る方法 „ コ ー ド に よ る 方法

¾

テキス ト ボ ッ ク スで特定のレ コ ー ド を検索するには 1 フ ォームに VATextBox を配置 し ます。 表 2-2 個々のレ コ ー ド を取得するための メ ソ ッ ド

GetDirect GetLast StepFirst GetEqual GetLess StepLast

GetFirst GetLessOrEqual StepNext

GetGreater GetNext StepPrevious GetGreaterOrEqual GetPrevious

(39)

2-13 ActiveX イ ン タ ー フ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成 2 VATextBox の VASearch プ ロ パテ ィ を True に設定 し ます。 こ れに よ り 、 テ キ ス ト ボ ッ ク ス にテキ ス ト が入力 さ れる と 、 一致する レ コー ド を取得す る ために VAccess コ ン ト ロールで GetGreaterOrEqual メ ソ ッ ド が実行 さ れ る よ う にな り ます。

¾

コ ー ド で特定のレ コ ー ド を取得するには 1 VAccess コ ン ト ロールを ダブル ク リ ッ ク し ます。 2 IndexNumber プロ パティ を 設定し て適切なイ ン デッ ク ス を 選択し ま す。 3 FieldValue メ ソ ッ ド を使用 し て、 検索する値を イ ンデ ッ ク ス フ ィ ール ド に設定 し ます。複数の フ ィ ール ド を使用す る イ ンデ ッ ク ス の場合は、 必ず各フ ィ ール ド に値を代入 し て く だ さ い。 4 次に、 表 2-3 の メ ソ ッ ド の う ちの 1 つを実行 し て目的の レ コー ド を取 得 し ます。 5 IndexNumber プ ロ パテ ィ が、検索が行われ る フ ィ ール ド に対応する イ ンデ ッ ク ス に設定 さ れてい る こ と を確認 し て く だ さ い。 例 ' キー フ ィ ール ド に検索値を入力 VAccess1.FieldValue("last_name") = "Reich" VAccess1.FieldValue("first_name") = "Steve" ' 正し い イ ンデ ッ ク ス番号を設定し て レ コー ド を取得 VAccess1.IndexNumber = 1 stat = VAccess1.GetEqual If stat = 0 Then MsgBox " レ コー ド が見つか り ま し た。 " Else MsgBox " フ ァ イ ルには該当する レ コー ド があ り ません。 " End If 表 2-3 特定のレ コ ー ド を取得するための メ ソ ッ ド GetEqual キー と 一致す る 最初の レ コ ー ド を返 し ます。 GetGreater キー よ り 後の次の レ コ ー ド を返 し ます。 GetGreaterOrEqual キー レ コー ド 、ま たはキー よ り 後の レ コー ド を返 し ます。 GetLess キー よ り 前の レ コ ー ド を返 し ます。 GetLessOrEqual キー レ コー ド 、ま たはキー よ り 前の レ コー ド を返 し ます。

(40)

レ コ ー ド を追加、 更新ま たは削除す る 方法 と し て、 以下の 2 つの方法があ り ます。 „ VACommandButton に よ る方法 „ コ ー ド に よ る 方法

¾

コ マ ン ド ボ タ ン で レ コ ー ド を追加、 更新または削除するには 1 フ ォームに VACommandButton を配置 し ます。 2 VAccessName プ ロ パテ ィ を対応する VAccess コ ン ト ロールの名前に設 定 し ます。 3 VAOperation プ ロ パテ ィ を希望のオペレーシ ョ ンに設定 し ます。 可能 なオペレーシ ョ ンの リ ス ト については、 本書の 「プ ロ パテ ィ リ フ ァ レ ン ス」 の VAOperation プ ロ パテ ィ を参照 し て く だ さ い。

¾

コ ー ド で レ コ ー ド を追加、 更新または削除するには 以下の VAccess コ ン ト ロール用カ ス タ ム メ ソ ッ ド の 1 つを使用し 、 コー ド か ら デー タ ベースへの書 き 込みを行い ます。 例 ' 指定 さ れた学生の専攻科目を変更 VAccess1.TableName = "Student" VAccess1.IndexNumber = 1 FieldValue (ID) = 2001100 stat = GetEqual If stat = 0

VAccess1.FieldValue ("Major") = "Music" VAccess1.Update

End If

レ コ ー ド のロ ッ ク

Pervasive PSQL には、 Pervasive の VAccess イ ン ターフ ェ イ ス でサポー ト さ れ る 次の 2 種類の ロ ッ ク があ り ます。単一レ コー ド ノ ーウ ェ イ ト ロ ッ ク と 複数レ コ ー ド ノ ーウ ェ イ ト ロ ッ ク です。 表 2-4 レ コ ー ド を追加、 更新および削除するためのカ ス タ ム メ ソ ッ ド Delete 現在の レ コ ー ド を削除 し ます。 Insert メ モ リ 内の レ コ ー ド を新 し い レ コ ー ド と し て挿入 し ます。 Update 現在の レ コ ー ド を メ モ リ 内の レ コ ー ド で更新 し ます。

(41)

2-15 ActiveX イ ン タ ー フ ェ イ ス を使用 し たアプ リ ケーシ ョ ンの作成 Pervasive の VAccess イ ン ターフ ェ イ ス で こ れ ら の ロ ッ ク を適用する には、 以下のアプ ロ ーチの う ちの 1 つを使用し ます。 „ VACommandButton を使用 し て レ コー ド の取得 と ロ ッ ク を行 う 場合は、 VALockBias プ ロ パテ ィ を設定 し ます。 „ Get ま たは Step メ ソ ッ ド を呼び出す と き は、 オプシ ョ ン パ ラ メ ーター と し て対応す る ロ ッ ク バ イ ア ス (単一レ コー ド の場合は 200、 複数レ コ ー ド の場合は 400) を含めます。 レ コ ー ド を ロ ッ ク 解除す る には、Unlock メ ソ ッ ド を使用 し ます。 レ コ ー ド ロ ッ ク と 並行制御の詳細説明は、 『Pervasive PSQL Programmer's Guide』 で 「デー タ整合性」 (4-42 ページ) を参照し て く だ さ い。 例 ' レ コー ド を ロ ッ ク し、 学生の名前を変更 し て、 レ コー ド を更新する Const SINGLE_NOWAIT_LOCK = 200 Const MULTIPLE_NOWAIT_LOCK = 400 VAccess1.FieldValue("ID") = "<valid #>" ' ロ ッ ク バ イ ア ス付き の ロ ッ ク をかけて レ コー ド を取得

stat = VAccess1.GetEqual SINGLE_NOWAIT_LOCK

' 学生の名前を変更し て レ コー ド を更新 ' レ コー ド の更新に よ り ロ ッ ク が解除 さ れる If stat = 0 VAccess1.FieldValue("Major") = "Astronomy" VAccess1.Update End If

フ ァ イルの結合

VAccess コ ン ト ロールの Join プ ロ パテ ィ を使用する と 、 2 つのフ ァ イ ルを キー値で リ ン ク し 、第 1 フ ァ イ ルの レ コー ド 位置におけ る あ ら ゆ る変更が、 第 2 フ ァ イ ルか ら 取得 さ れる レ コー ド に も 反映 さ れ る よ う にする こ と がで き ます。Join プ ロ パテ ィ は、 リ レーシ ョ ナル データベース を参照する ため の簡単な メ カ ニズ ム を提供 し ます。 ス レ ーブ コ ン ト ロ ール内の結合フ ィ ール ド は イ ンデ ッ ク ス フ ィ ール ド で あ る 必要があ り 、 ま た、 マ ス タ ー コ ン ト ロール内の対応する フ ィ ール ド と 同 じ 未加工デー タ が含まれていなければな り ません。 マ ス タ ー コ ン ト ロー ル内の フ ィ ール ド は、 イ ンデ ッ ク ス であ る 必要はあ り ません。 ス レーブ コ ン ト ロ ールの IndexNumber プ ロ パテ ィ は、結合に関係する イ ンデ ッ ク ス に 設定 さ れた ま ま に し てお く 必要があ り ます。 そ う し ない と 、 結合が断たれ ます。 1 対 1、多対 1、1 対多、多対多の結合はすべてサポー ト さ れます。VAListBox の VAccessName プ ロ パテ ィ を ス レ ーブ コ ン ト ロ ールの名前に設定 し、 VAFieldName プ ロ パテ ィ を表示 さ れ る フ ィ ール ド に設定す る こ と に よ っ て、 デー タ を レ コ ー ド リ ス ト モー ド で表示で き ます。

参照

関連したドキュメント

機能(目的) 設定方法 画面で見るマニュアル 参照先.. 便利な使い方.

HORS

ICレコーダーの本体メモリーには、ソフトウェアSound Organizer 2が保存されて います。Sound Organizer 1.6をお使いの方も、必ずSound Organizer

お客様は、各ASLロケーションにおいて、マスター・インストール・メデ ィア及びApproved Volume License

※ 硬化時 間につ いては 使用材 料によ って異 なるの で使用 材料の 特性を 十分熟 知する こと

注:一般品についての機種型名は、その部品が最初に使用された機種型名を示します。

Nintendo Switchでは引き続きハードウェア・ソフトウェアの魅力をお伝えし、これまでの販売の勢いを高い水準

一次製品に関連する第1節において、39.01 項から 39.11 項までの物品は化学合成によって得 られ、また 39.12 項又は