Access(ADP & VBA)とMSDEで作るクライアントサーバーシステム(c/s)

 
実践テクニック、Accessで作るクラサバシステム



2006/12/19配信
 

第8コース  第10回 「得意先マスタの作成」




 

 ■メニュー

   1.得意先マスタの作成(6回目)

===================================================================

 こんにちは、ティウェアの高橋です。

 それでは、得意先マスタの作成の6回目をはじめましょう。

 開始します。

-------------------------------------------------------------------

 1.営業所コード_KeyDownについて

   営業所コード上でキーを押した時の処理です。
   処理は、営業所コード_DblClickと同じです。

On Error GoTo Err_営業所コード_DblClick


If KeyCode <> 123 Then
Exit Sub
End If

[営業所コード] = Null
[得意先コード] = Null

If [営業所コード].Enabled = False Then
Exit Sub
End If

form_modoriname = "得意先マスタメンテナンス"

stDocName = "得意先問い合せ"

form_modoricontrols_name_1 = "営業所コード"
form_modoricontrols_name_2 = "得意先コード"

form_modoricontrols_name_setfocus = "得意先コード"

Me.Visible = False

DoCmd.OpenForm stDocName

Exit_営業所コード_DblClick:
Exit Sub

Err_営業所コード_DblClick:
MsgBox "エラーナンバー " & Err.Number & _
vbCrLf & _
Err.Description, vbCritical, "エラー"

Resume Exit_営業所コード_DblClick

--*--------*--------*--------*--------*--------*--------*--------*---

 2.得意先コード_GotFocusについて

   得意先コードにフォーカスが入った時の処理です。

From_Clr_btn

If IsNull([得意先コード]) Or Trim([得意先コード]) & "" = "" Then
Else
SendKeys "{ENTER}"
End If


  問い合せより戻った場合、得意先コードに何かしら入ってると
  SendKeys "{ENTER}"によりENTERキーを押した状態になります。
  これで、次の項目に移動します。

--*--------*--------*--------*--------*--------*--------*--------*---

 3.得意先コード_LostFocusについて

   得意先コードからフォーカスが出て行くときの処理です。

syorimode = 0

If IsNull([得意先コード]) Or Trim([得意先コード]) & "" = "" _
Or [得意先コード] = 0 Then
[得意先コード] = ""
Exit Sub
Else
Me![得意先コード] = Format$(Me![得意先コード], "00")
End If

Set cm = New ADODB.Command
Set rs = New ADODB.Recordset
Set pm = New ADODB.Parameter
pm.Direction = adParamInput
pm.Type = adInteger
pm.Value = [得意先コード]

'◎ポイント解説 9  -----*-----*-----*-----

With cm
.ActiveConnection = cn
.CommandType = adCmdStoredProc
.CommandText = "sp_得意先マスタ_get"
.Parameters.Append pm
End With

Set rs = cm.Execute

If rs.EOF Then
syorimode = 0
[ロックフラグ] = MyCompName
Else
Me![得意先名] = rs![得意先名]
Me![カナ名] = rs![カナ名]
Me![略名] = rs![略名]
Me![郵便番号] = rs![郵便番号]
Me![住所1] = rs![住所1]
Me![住所2] = rs![住所2]
Me![電話番号] = rs![電話番号]
Me![FAX番号] = rs![FAX番号]
Me![締日] = rs![締日]

Me![担当者コード] = rs![担当者コード]
If IsNull([担当者コード]) Or Trim([担当者コード]) & "" = "" Then
Else
Me![担当者コード] = Format$(Me![担当者コード], "00")
End If

Me![請求先営業所コード] = rs![請求先営業所コード]
If IsNull([請求先営業所コード]) Or Trim([請求先営業所コード]) & "" = "" Then
Else
Me![請求先営業所コード] = Format$(Me![請求先営業所コード], "00")
End If

Me![請求先得意先コード] = rs![請求先得意先コード]
If IsNull([請求先得意先コード]) Or Trim([請求先得意先コード]) & "" = "" Then
Else
Me![請求先得意先コード] = Format$(Me![請求先得意先コード], "00000")
End If

End If

rs.Close

Set rs = Nothing
Set pm = Nothing
Set cm = Nothing

Me![得意先名].Enabled = True
Me![カナ名].Enabled = True
Me![略名].Enabled = True
Me![郵便番号].Enabled = True
Me![住所1].Enabled = True
Me![住所2].Enabled = True
Me![電話番号].Enabled = True
Me![FAX番号].Enabled = True
Me![締日].Enabled = True
Me![担当者コード].Enabled = True
Me![請求先営業所コード].Enabled = True
Me![請求先得意先コード].Enabled = True
Me![消費税計算法].Enabled = True
Me![掛区分].Enabled = True

If syorimode = 0 Then
[btn削除].Enabled = False
[btnデータ先頭].Enabled = False
[btnデータ後退].Enabled = False
[btnデータ前進].Enabled = False
[btnデータ最終].Enabled = False
Else
[btn削除].Enabled = True
[btnデータ先頭].Enabled = True
[btnデータ後退].Enabled = True
[btnデータ前進].Enabled = True
[btnデータ最終].Enabled = True
End If

[得意先名].SetFocus

-------------------------------------------------------------------

 syorimodeは0:登録、1:変更、削除となります。

 3-1.◎ポイント解説 9 について

sp_得意先マスタ_getのストアドプロシージャです。

ALTER Procedure sp_得意先マスタ_get
(
@営業所コード int,
@得意先コード int
)
As
select * from 得意先マスタ
where (営業所コード = @営業所コード) and
(得意先コード = @得意先コード)
return


 次回も、得意先マスタの作成となります。

===================================================================

                ◆ 実践テクニック、Accessで作るクラサバシステム ◆

  編集・構成:高橋浩
  提供・発行:ティウェア

http://www.1tware.com/index.html

Access2000+MSDE2000、Access2002+MSDE2000、Access2003+MSDE2000で
作る販売管理ソフト、クライアントサーバーシステムを構築

※当メールマガジンに掲載された記事を許可なく転載することを禁じます。

===================================================================

実践テクニック、Accessで作るクラサバシステム(隔週 火曜日発行中)

SEが10年以上の開発ノウハウを惜しみなく完全公開!

Mail:  (半角英数字)     Powered byまぐまぐ


HOME / お客様の声 / メルマガ / 販売管理ソフト教材 / 会社概要/ 特定商取引法/ お申し込み
 お問い合わせ / メルマガのご意見ご感想 / メルマガのバックナンバー/ プライバシーポリシー
 


 Copyright (c) 2001 ティウェア All rights reserved.