次の方法で共有


アドレス帳のコマンド ボタン

適用先: Access 2013、Office 2013

アドレス帳アプリケーションには次のコマンド ボタンがあります。

  • クエリをデータベースに送信するための [検索] ボタン。

  • 新しい検索を開始する前にテキスト ボックスをクリアするための [クリア] ボタン。

  • 従業員レコードに対する変更を保存するための [プロファイルの更新] ボタン。

  • 変更を破棄するための [変更の取り消し] ボタン。

[検索] ボタン

[検索] ボタンをクリックすると、SQL クエリの作成と送信を行う VBScript Find_OnClick Sub プロシージャがアクティブ化します。 このボタンをクリックすると、データ グリッドが設定されます。

SQL クエリの作成

Find_OnClick Sub プロシージャの最初の部分では、グローバル SQL SELECT ステートメントにテキスト文字列を一度に 1 フレーズずつ追加することで SQL クエリを作成します。 この Sub プロシージャは、データ ソース テーブルからすべてのデータ行を要求する SQL SELECT ステートメントに変数を設定することから始まります。 次に、ページ上の 4 つの入力ボックスをそれぞれスキャンします。

プログラムでは、SQL ステートメントの作成時にワードを使用するため、クエリは完全一致ではなく、サブ文字列検索になります。

たとえば、[ ] ボックスに "Berge" が入力され、[ タイトル ] ボックスに "Program Manager" が入力された場合、SQL ステートメント (値) は次のようになります。

 
Select FirstName, LastName, Title, Email, Building, Room, Phone from Employee where lastname like 'Berge%' and title like 'Program Manager%' 

クエリが成功すると、"Berge" という文字を含む姓 (Berge や Berger など) と、"Program Manager" という単語を含むタイトル (Program Manager, Advanced Technologies など) が HTML データ グリッドに表示されます。

クエリの準備と送信

Find_OnClick Sub プロシージャの最後の部分は、2 つのステートメントで構成されます。 最初のステートメントは、RDS.DataControl オブジェクトの SQL プロパティを、動的に作成される SQL クエリと等しくなるように割り当てます。 2 番目のステートメントでは、RDS.DataControl オブジェクト ( ) でデータベースにクエリを実行した後、クエリの新しい結果をグリッドに表示します。

 
Sub Find_OnClick 
 '... 
 DC1.SQL = myQuery 
 DC1.Refresh 
End Sub 

[プロファイルの更新] ボタン

[プロファイルの更新] ボタンをクリックすると、RDS.DataControl オブジェクトの ( ) SubmitChanges メソッドと Refresh メソッドを実行する VBScript Update_OnClick Sub プロシージャがアクティブ化します。

 
Sub Update_OnClick 
 DC1.SubmitChanges 
 DC1.Refresh 
End Sub 

DC1 の場合。SubmitChanges が実行されると、リモート データ サービスはすべての更新情報をパッケージ化し、HTTP 経由でサーバーに送信します。 更新プログラムは、すべてまたはまったくありません。更新の一部が失敗した場合、変更は行われ、ステータス メッセージが返されます。 は、リモート データ サービスによってすべての更新情報がパッケージ化され、HTTP 経由でサーバーに送信されます。 更新プログラムは、すべてまたはまったくありません。更新の一部が失敗した場合、変更は行われ、ステータス メッセージが返されます。 DC1。リモート データ サービスを 使用して SubmitChanges を実行 した後は更新は必要ありませんが、新しいデータが保証されます。

[変更の取り消し] ボタン

[ 変更の取り消し ] をクリックすると、RDS.DataControl オブジェクトの CancelUpdate メソッドを実行する VBScript Cancel_OnClick Sub プロシージャがアクティブ化します。

 
Sub Cancel_OnClick 
 DC1.CancelUpdate 
End Sub 

を実行すると、最後のクエリまたは更新以降にユーザーがデータ グリッド上の従業員レコードに対して行った編集が破棄されます。 元の値が復元されます。