List 7-88 FormStockフォームのRefreshDataプロシージャ


  1: Private g_Order As String
  2: Private WithEvents g_objRec As ADODB.Recordset
  3: ' 絞り込みのためのデータ
  4: Private g_FilterFlag As FILTER_STOCK
  5: Private g_startDate As Variant
  6: Private g_endDate As Variant
  7: Private g_startDueDate As Variant
  8: Private g_endDueDate As Variant
  9: 
 10: 
 11: Private Sub RefreshData()
 12:     ' データグリッドの表示されているデータを最新の情報にする
 13:     Dim objProduct As Business.Product
 14:     
 15:     ' データベースに接続して、最新の情報を取得し、
 16:     ' データグリッドに表示する
 17:     On Error GoTo ErrHandle
 18:     
 19:     Set objProduct = CreateObject("Business.Product")
 20:     If CHK_FILTER.Value = 1 Then
 21:         ' [絞り込み]にチェックが付いている場合
 22:         Set g_objRec = objProduct.GetStorages(g_FilterFlag, _
                                                   g_startDate, _
                                                   g_endDate, _
                                                   g_startDueDate, _
                                                   g_endDueDate)
 23:     Else
 24:         ' [絞り込み]にチェックが付いていない場合
 25:         Set g_objRec = objProduct.GetStorages(FILTER_STOCK_ALL, _
                                                   Null, Null, _
                                                   Null, Null)
 26:     End If
 27:     
 28:     Set DGrid_Stock.DataSource = g_objRec
 29:     
 30:     g_objRec.Sort = g_Order
 31:     
 32:     DGrid_Stock.Refresh
 33:     
 34:     Set objProduct = Nothing
 35:     
 36:     Exit Sub
 37: 
 38: ErrHandle:
 39:     ' ビジネスオブジェクトの呼び出しに失敗
 40:     MsgBox Err.Description, vbOKOnly, "サーバーとの接続に失敗"
 41:     Set objProduct = Nothing
 42:     Set g_objRec = Nothing
 43:     
 44:     ' 絞り込み設定を解除する
 45:     CHK_FILTER.Value = 0
 46: End Sub