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

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



2004/06/21配信
 

第3コース  第8回 「区分マスタの作成」




 

 区分マスタの登録処理を解説します。

 syorimode=0ならば、新規登録。
 syorimode=1ならば、変更。

 upd_modeで更新を判断して処理する。


Function 区分_更新(upd_mode As Integer)

区分_更新 = True

On Error GoTo 区分_更新_err

Set cm = New ADODB.Command
Set pm = New ADODB.Parameter

With cm
.ActiveConnection = cn
.CommandType = adCmdStoredProc
If upd_mode = 0 Then
.CommandText = "sp_区分マスタ_ins"
Else
.CommandText = "sp_区分マスタ_upd"
End If

If Me![伝票区分] = "売上" Then
dencode = Int(1)
Else
If Me![伝票区分] = "入金" Then
dencode = Int(2)
End If
End If

Set pm = .CreateParameter(, adSmallInt, adParamInput, , dencode)
.Parameters.Append pm
Set pm = .CreateParameter(, adSmallInt, adParamInput, , _
[伝票区分番号])
.Parameters.Append pm
Set pm = .CreateParameter(, adVarChar, adParamInput, 20, [区分名])
.Parameters.Append pm
Set pm = .CreateParameter(, adSmallInt, adParamInput, , syukbn)
.Parameters.Append pm
Set pm = .CreateParameter(, adVarChar, adParamInput, 2, _
Format$([dencode], "00"))
.Parameters.Append pm
Set pm = .CreateParameter(, adVarChar, adParamInput, 2, _
Format$([伝票区分番号], "00"))
.Parameters.Append pm

End With

cm.Execute

Set pm = Nothing
Set cm = Nothing

Exit Function

区分_更新_err:

For Each ado_err In cn.Errors
MsgBox "エラーナンバー " & ado_err.Number & _
vbCrLf & _
"エラーソース " & ado_err.Source & _
vbCrLf & _
Err.Description, vbCritical, "エラー"

Next

区分_更新 = False

Set pm = Nothing
Set cm = Nothing

End Function

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

2.sp_区分マスタ_ins のストアドプロシジャーの処理です。

insert処理で値を送ります。
このとき、送る項目と受け取る項目をあわせる必要があります。
間違えないように。

Alter Procedure sp_区分マスタ_ins
(
@伝票区分 smallint,
@伝票区分番号 smallint,
@区分名 varchar (20),
@集計区分 smallint,
@伝票区分文字 varchar (2),
@伝票区分番号文字 varchar (2)
)
As
insert into 区分マスタ (伝票区分,伝票区分番号,区分名,集計区分,伝票区分文字,伝票区分番号文字)
values (@伝票区分,@伝票区分番号,@区分名,@集計区分,@伝票区分文字,@伝票区分番号文字)
return

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

2.sp_区分マスタ_upd のストアドプロシジャーの処理です。

whereの条件にあったデータをupdateします。
updateでは必ずwhereを忘れずに。

Alter Procedure sp_区分マスタ_upd
(
@伝票区分 smallint,
@伝票区分番号 smallint,
@区分名 varchar (20),
@集計区分 smallint,
@伝票区分文字 varchar (2),
@伝票区分番号文字 varchar (2)
)
As
update 区分マスタ
set 伝票区分=@伝票区分,伝票区分番号=@伝票区分番号,区分名=@区分名,集計区分=@集計区分,伝票区分文字=@伝票区分文字,伝票区分番号文字=@伝票区分番号文字
where (伝票区分=@伝票区分) and (伝票区分番号=@伝票区分番号)
return


お陰さまで第3コースも残り2となりました。
10回を持ちまして、少し充電時間を頂きます。

これ以上に充実した内容をお届けします。

次回も区分マスタです。
削除処理をメインに記述します。

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

                ◆ 実践テクニック、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.