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

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



2004/12/27配信
 

第4コース  第6回 「会社マスタの作成」




 

今年最後のメルマガです。

会社マスタメンテナンスの作成をします。

では、始めましょう。

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

 1.会社マスタマスタを読み込む

  1-1.form → load

        画面を開いた場合に1回だけ通る処理です。

Private Sub Form_Load()

'cn_mdo.Open "Provider=Microsoft.jet.OLEDB.4.0;Data Source= _
c:\Program Files\yubin\yubin.mdb"
'cn_mdo.CursorLocation = adUseClient

Set cn = Application.CurrentProject.Connection
cn.CursorLocation = adUseClient

If コントロール_読む = False Then
DoCmd.Close
DoCmd.OpenForm "m_マスタメンテナンス処理メニュー"
Exit Sub
End If

If 定数_読む = False Then
DoCmd.Close
DoCmd.OpenForm "m_マスタメンテナンス処理メニュー"
Exit Sub
End If

'処理モード(0:登録、1:変更、削除)
syorimode = 0

'会社マスタ読み込み開始
[会社コード] = 1
Set cm = New ADODB.Command
Set rs = New ADODB.Recordset
Set pm = New ADODB.Parameter
pm.Direction = adParamInput
pm.Type = adInteger
pm.Value = [会社コード]

With cm
.ActiveConnection = cn
.CommandType = adCmdStoredProc
.CommandText = "sp_会社マスタ_get"
.Parameters.Append pm
End With
Set rs = cm.Execute

If rs.EOF Then
syorimode = 0 '登録

[代表者名] = ""
[会社名] = ""
[郵便番号] = ""
[住所1] = ""
[住所2] = ""
[電話番号] = ""
[FAX番号] = ""
[振込先1] = ""
[振込先2] = ""
[振込先3] = ""

Else
syorimode = 1 '変更、削除

[代表者名] = rs![代表者名]
[会社名] = rs![会社名]
[郵便番号] = rs![郵便番号]
[住所1] = rs![住所1]
[住所2] = rs![住所2]
[電話番号] = rs![電話番号]
[FAX番号] = rs![FAX番号]
[振込先1] = rs![振込先1]
[振込先2] = rs![振込先2]
[振込先3] = rs![振込先3]

End If

rs.Close
Set rs = Nothing
Set pm = Nothing
Set cm = Nothing
'会社マスタ読み込み終了

[代表者名].Enabled = True
[会社名].Enabled = True
[郵便番号].Enabled = True
[住所1].Enabled = True
[住所2].Enabled = True
[電話番号].Enabled = True
[FAX番号].Enabled = True
[振込先1].Enabled = True
[振込先2].Enabled = True
[振込先3].Enabled = True

[btn登録].Enabled = True
[btn終了].Enabled = True

[会社名].SetFocus

End Sub   

  *説明

    会社マスタは1件しかありませんのでformをloadした時に
    読み込み各テキストにデータを送ります。

    formをloadの直後にある命令は郵便番号辞書のデータを
開いています。
    最新のデータを自分のパソコンに取り込み利用しています。
    今回は詳しく説明しません。
    機会があれば説明したいと思います。
    この部分は注釈にしています。

cn_mdo.Open "Provider=Microsoft.jet.OLEDB.4.0;Data Source= _
c:\Program Files\yubin\yubin.mdb"
cn_mdo.CursorLocation = adUseClient

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

  1-2.form → Unload

           画面を閉じる場合に1回だけ通る処理です。

Private Sub Form_Unload(Cancel As Integer)

cn_mdo.Close
Set cn_mdo = Nothing

cn.Close
Set cn = Nothing

End Sub

接続を開放します。

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

  1-3.form → KeyDown

    フォーム上で何かしらのキーが押されたときの処理です。

    注意:Form上のキーボードイベント取得を「はい」にすると
       Form上のKeyDownを優先されます

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
On Error GoTo Form_KeyDown_err

Select Case KeyCode

Case 119 '登録(F8)
If btn登録.Enabled = True Then
btn登録.SetFocus
SendKeys "{ENTER}"
NumLock_処理
End If

Case 35 '終了(END)
If btn終了.Enabled = True Then
btn終了.SetFocus
SendKeys "{ENTER}"
NumLock_処理
End If

End Select

Exit Sub

Form_KeyDown_err:

MsgBox "エラーが発生しました。再度、見直してください。", _
vbCritical, "エラー"

End Sub

次回も会社マスタの作成です。

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

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

アクセスの速習法をマスターするなら、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.