MSDE FunClub
Microsoft Data Engine FunClub
MSDE技術者向けメーリングリスト過去ログ[697]番
 
[TOP]>[MSDE技術者向けメーリングリスト過去ログ(697番)]>[ウィンドを閉じる]
 
SQLServer2005時代でも
開発の基本は T-SQL
上巻で T-SQL の基礎作り
 
SQLServer2005時代でも
運用の基本はバックアップ
下巻でバックアップ手法を学びましょう
PASSJ人気コンテンツで学んだ後は下巻でさらなる学習を!
 
ウィンドを閉じる
MSDE/SQLServer FAQ
MSDE / MSDE2000 
技術情報サポート
初心者向け
メーリングリスト
過去ログの表示
技術者向け
メーリングリスト
過去ログの表示
メーリングリスト
活動状況の
表示
MSDE TOP メニュー
MSDEトップメニューに移動します
 

 
1つのフォームで 2つの条件検索をしたい

Date: Fri, 6 Jul 2001 18:30:30 +0900
From: who@sub.example.jp


いつもお世話になっています。
パラメータオブジェクトを使ったADOのプログラミングで条件検索のアプリを作ってい
ます。
初歩的なことですみませんが教えてください。

■ 使用環境  <クライアント/サーバー>
 クライアントPC
OS/Windows 98
 Access/Access 2000
 SQLサーバ7.0 DESKTOP版をインストール
 サーバ名PC3としSQLサーバデータベースを作成

■ 検索のしくみ
・個人の属性検索をします。個人の属性は個人番号、所属、年齢です。
・ 1つのAccess2000のフォームを使って、所属 を条件に検索、年齢 を条件に検索しま
す。
・ フォームのモジュールで イベント実行をおこないます。
・ イベント時にストアードプロシージャが条件検索し、検索結果を一時ファイルに落
とします。
・ Access2000のフォームは一時ファイルの連結フォームになっています。

■ 実現したいこと
所属 を条件に検索したあと、検索結果がでている画面で、年齢を条件に検索を行う。


■ ADOのプログラミング

<イベント後の記述>

Option Compare Database
Option Explicit
Const cFormName_M = "MF"
Dim cn As ADODB.Connection
Dim cmd As ADODB.Command
Dim rs As ADODB.Recordset
Dim parm As ADODB.Parameter
Dim ado_err As ADODB.Error
Dim cmd1 As ADODB.Command
Dim parm1 As ADODB.Parameter
Dim intRet As Integer

Function 属性_v() As Integer
  属性_v = False
  If Trim(Forms(cFormName_M)![所属]) & "" = "" Or Forms(cFormName_M)![所属] =
0 Then
      所属_v = True
  Exit Functi属性Command

  Set rs = New ADODB.Recordset
  Set parm = New ADODB.Parameter
  Set temp = New ADODB.Recordset
  parm.Direction = adParamInput
  parm.Type = adInteger
  parm.Value = Forms(cFormName_M)![所属]
  With cmd
      .ActiveConnection = cn
      .CommandType = adCmdStoredProc
      .CommandText = "strProc_shozoku"
      .Parameters.Append parm
  End With
       cmd.Execute

  Set rs = Nothing
  Set parm = Nothing
  Set cmd = Nothing
  DoCmd.Close
  DoCmd.OpenForm cFormName_M

End Function

Function 属性_w() As Integer
  属性_w = False
  If Trim(Forms(cFormName_M)![年齢]) & "" = "" Or Forms(cFormName_M)![年齢] =
0 Then
      属性_w = True
      Exit Function
  End If
  Set cn = Application.CurrentProject.Connection
  Set cmd = New ADODB.Command
  Set rs = New ADODB.Recordset
  Set parm = New ADODB.Parameter
  Set temp = New ADODB.Recordset
  parm.Direction = adParamInput
  parm.Type = adInteger
  parm.Value = Forms(cFormName_M)![年齢]
  With cmd
      .ActiveConnection = cn
      .CommandType = adCmdStoredProc
      .CommandText = "strProc_nenrei"
      .Parameters.Append parm
  End With
       cmd.Execute

  Set rs = Nothing
  Set parm = Nothing
  Set cmd = Nothing
  DoCmd.Close
  DoCmd.OpenForm cFormName_M
End Function

■ 問題点
所属 を条件に検索したあと、検索結果が画面、一時ファイルに残って、その次に年齢
を条件に検索のしたいが一時ファイルの更新ができない。
前の検索結果を閉じて、新たな検索するところを教えていただきたい。
seki



[MSDE/SQLServerに関して、今、どんなことにお困りですか?]
よろしければお困りの内容を、電子メールで教えて下さい。
質問を電子メールで作成する


[ウィンドを閉じる]

[MSDE/SQLServer FAQ ]

[MSDE / MSDE2000 技術サポート情報一覧]

MSDE TOP ページに移動する

 
 
 
 
 
 
 
MSDE FunClubに関するご意見・ご要望等ございましたら、
msdefun@horikawa.ne.jp までご連絡下さい。
MSDEを始めとする各種データベースシステムの開発、コンサルタントに関するご要望等は、
msdedev@horikawa.ne.jp までご連絡下さい。