VB.net : マスタメンテのキー入力のチェック処理

  入力値の基本チェックと編集処理




ブラウザでダウンロード

Mtn_form

キー部の入力なので、画面遷移と直接関わる場合もありますが、ここでは画面遷移は必ず
確認ボタンを押すようになっていますので、キーの Validating で行うのは、データのチェ
ックと、データベースの読み出しです。読み出し後の編集は、Validated で行います。

Validating と、Validated の大きな違いは、キャンセルできるかどうかですから、エラーの
発生する可能性のある処理を Validating で行います。

ここでは、Validating 内で、入力値を加工してからデーターベースに引き渡していますが、
これは、コードフォーマットが前ゼロ形式なので、エンドユーザの手間を省き、間違いを抑制
する効果があります。

Validating は、そのコントロールからフォーカスが失われようとする時に起こりますので
この雛型では、値を入力後、TAB や ENTER キーを使用する事によって発生します

キー入力は、必須項目なので未入力はエラーとなりますが、明細部分でコード入力が
ある場合で省略が許される場合は、未入力時には、以前に表示したいたコードと関連す
る情報を画面上から消去する必要があります


  
' ******************************************************
' キー入力のチェック処理
' ******************************************************
Private Sub 社員コード_Validating(ByVal sender As Object, _
ByVal e As System.ComponentModel.CancelEventArgs) Handles 社員コード.Validating

	' -------------------------------------------------
	' 未入力チェック
	' -------------------------------------------------
	If Trim(Me.社員コード.Text) = "" Then
		msg.DispError("001", Me.社員コード, e)	' 必須入力
		Exit Sub
	End If

	' -------------------------------------------------
	' 数値チェック
	' -------------------------------------------------
	If Not CheckInt(Me.社員コード.Text) Then
		msg.DispError("002", Me.社員コード, e)
		Exit Sub
	End If

	' -------------------------------------------------
	' キーコードの前ゼロ編集処理
	' -------------------------------------------------
	'Me.社員コード.Text = num.ToString("0000")
	Me.社員コード.Text = String.Format("{0:0000}", Integer.Parse(Me.社員コード.Text))

	' -------------------------------------------------
	' DB 読み出し
	' -------------------------------------------------
	Dim myQuery As String = GetSql(Me.SELECT_SQL, Me.社員コード.Text)

	myReader = db.Query(myQuery)
	Dim bExist As Boolean = myReader.HasRows

	' 処理区分により、チェック
	Select Case Me.処理区分.SelectedIndex
		Case 0, 2 ' 修正または削除
			If Not bExist Then
				msg.DispError("003", Me.社員コード, e)
				myReader.Close()
			End If
		Case 1 ' 新規
			If bExist Then
				msg.DispError("004", Me.社員コード, e)
				myReader.Close()
			End If
	End Select

End Sub
  

関連する記事











  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ