List 7-109 FormStockフォームのg_objRec_MoveCompleteプロシージャ


  1: Private Sub g_objRec_MoveComplete( _
             ByVal adReason As ADODB.EventReasonEnum, _
             ByVal pError As ADODB.Error, _
             adStatus As ADODB.EventStatusEnum, _
             ByVal pRecordset As ADODB.Recordset)
  2:     ' カレントレコードの位置が変更されたときの処理
  3:     Dim enableFlag As Boolean
  4:     
  5:     If pRecordset.EOF Or pRecordset.BOF Then
  6:         ' カレントレコードが空である
  7:         enableFlag = False
  8:         BTN_PRODUCT.Enabled = False
  9:     Else
 10:         ' カレントレコードが空ではない
 11:         BTN_PRODUCT.Enabled = True
 12:         ' 出庫用のレコードかどうか
 13:         If pRecordset.Fields("NUMBER").Value < 0 Then
 14:             ' 出庫用である
 15:             ' 出庫用のレコードは編集させない
 16:             enableFlag = False
 17:         Else
 18:             ' 入庫用である
 19:             enableFlag = True
 20:         End If
 21:     End If
 22:     
 23:     BTN_EDIT.Enabled = enableFlag
 24:     BTN_DUE.Enabled = enableFlag
 25:     BTN_CANCELDUE.Enabled = enableFlag
 26:     
 27:     ' 削除権限ならびに施行権限を持っているかどうか
 28:     If g_uRole And (ROLE_ALLADMIN Or ROLE_PRODUCTS Or ROLE_PRODUCTSADMIN) Then
 29:         ' 削除権限ならびに施行権限がある
 30:         BTN_DELETE.Enabled = enableFlag
 31:         BTN_DUE.Enabled = enableFlag
 32:     End If
 33:     
 34:     If enableFlag Then
 35:         If pRecordset.Fields("DELETEDFLAG").Value = True Then
 36:             ' 削除ずみであるレコード
 37:             ' 復帰権限があるか
 38:             If g_uRole And (ROLE_ALLADMIN Or ROLE_PRODUCTSADMIN) Then
 39:                 ' 復帰を可能にする
 40:                 BTN_UNDELETE.Enabled = True
 41:             End If
 42:             ' 編集を不可にする
 43:             BTN_EDIT.Enabled = False
 44:         Else
 45:             ' 復帰を不可能にする
 46:             BTN_UNDELETE.Enabled = False
 47:             BTN_EDIT.Enabled = True
 48:         End If
 49:         
 50:         If pRecordset.Fields("CONFIRMEDFLAG").Value = True Then
 51:             ' 施行ずみであるレコード
 52:             ' [入庫施行]ボタンを不可にする
 53:             BTN_DUE.Enabled = False
 54:             ' 施行取り消し権限があるか
 55:             If g_uRole And (ROLE_ALLADMIN Or ROLE_PRODUCTSADMIN) Then
 56:                 ' 取り消しを可能にする
 57:                 BTN_CANCELDUE.Enabled = True
 58:             End If
 59:             ' 編集を不可にする
 60:             BTN_EDIT.Enabled = False
 61:             ' 削除も不可にする
 62:             BTN_DELETE.Enabled = False
 63:         Else
 64:             ' 施行取り消しを不可にする
 65:             BTN_CANCELDUE.Enabled = False
 66:         End If
 67:     End If
 68: End Sub