■メニュー
1.得意先残高マスタの作成(2回目)
===================================================================
こんにちは、ティウェアの高橋です。
今日は、発行日ではありませんが、販売管理ソフトの価格変更につき
まして繰上げて発行します。
次回の発行は、5月8日となります。
得意先残高マスタの作成の2回目。
では、はじめましょう。
------------------------------------------------------------------
1.登録ボタンの処理
登録ボタンを押すことにより、得意先残高マスタに書き込みを行います。
1-1.btn登録_Click()について
'◎ポイント解説 1 -----*-----*-----*-----
If inttouroku = 1 Then
If MsgBox("登録しますか", (vbYesNo + vbDefaultButton2 _
+ vbInformation), "登録") = vbYes Then
Else
DoCmd.GoToControl "請求エリア"
Exit Sub
End If
End If
'◎ポイント解説 2 -----*-----*-----*-----
Select Case syorimode
Case 1
intRet = 得意先残高_更新(1)
End Select
p_eigyocd = Int(0)
p_tokucd = Int(0)
From_Clr
'◎ポイント解説 3 -----*-----*-----*-----
[営業所コード].Enabled = True
[営業所コード].Locked = False
[営業所コード].BackColor = 16777215
[得意先コード].Enabled = True
[得意先コード].Locked = False
[得意先コード].BackColor = 16777215
[営業所コード].SetFocus
--------------------------------------------------------------------
では、解説します。
1-2.◎ポイント解説 1 について
登録ボタンを押して書き込む前にコンボボックスを表示します。
再度、確認させます。
これは、間違ってボタンを押しても回避できるようにするためです。
1-3.◎ポイント解説 2 について
ここから、メイン処理です。
syorimodeは1で変更処理をします。
得意先マスタメンテナンスで登録、削除をするので
得意先残高マスタメンテナンスで変更のみ行います。
1-4.◎ポイント解説 3 について
[営業所コード].Enabled = True
[営業所コード].Locked = False
[営業所コード].BackColor = 16777215
[得意先コード].Enabled = True
[得意先コード].Locked = False
[得意先コード].BackColor = 16777215
この処理は営業所コード、得意先コード(テキスト)の入力が出来る
状態にします。
処理が終わればカーソルを営業所コードにフォーカスをあてます。
フォーカスをあてるのは、入力できる状態にするという事です。
--*--------*--------*--------*--------*--------*--------*--------*--
それでは、intRet = 得意先残高_更新(1)を解説します。
Function 得意先残高_更新(upd_mode As Integer)を作成して下さい。
得意先残高_更新 = True
cn.Errors.Clear
On Error GoTo 得意先残高_更新_err
cn.BeginTrans
Set cm = New ADODB.Command
Set pm = New ADODB.Parameter
With cm
.ActiveConnection = cn
.CommandType = adCmdStoredProc
If upd_mode = 0 Then
Exit Function
Else
'◎ポイント解説 4 -----*-----*-----*-----
.CommandText = "sp_得意先残高マスタ_upd"
End If
Set pm = .CreateParameter(, adInteger, adParamInput, , _
[営業所コード])
.Parameters.Append pm
Set pm = .CreateParameter(, adInteger, adParamInput, , _
[得意先コード])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[前年残高])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[開始残高])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[請求残高])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[請求今回残高])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[請求伝外税金額])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[請求請外税金額])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[請求内非金額])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[請求伝消費税])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[請求請消費税])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[請求入金金額])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[月次残高])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[月次今回残高])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[月次伝外税金額])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[月次請外税金額])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[月次内非金額])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[月次伝消費税])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[月次請消費税])
.Parameters.Append pm
Set pm = .CreateParameter(, adCurrency, adParamInput, , _
[月次入金金額])
.Parameters.Append pm
End With
cm.Execute
cn.CommitTrans
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
cn.RollbackTrans
Set pm = Nothing
Set cm = Nothing
--------------------------------------------------------------------
では、説明します。
1-5.◎ポイント解説 4 について
得意先残高マスタの変更の処理となります。
得意先残高_更新(upd_mode As Integer)のupd_modeには、1が入っています。
"sp_得意先残高マスタ_upd"のストアドプロシージャを実行します。
ALTER Procedure sp_得意先残高マスタ_upd
(
@営業所コード int,
@得意先コード int,
@前年残高 money,
@開始残高 money,
@請求残高 money,
@請求今回残高 money,
@請求伝外税金額 money,
@請求請外税金額 money,
@請求内非金額 money,
@請求伝消費税 money,
@請求請消費税 money,
@請求入金金額 money,
@月次残高 money,
@月次今回残高 money,
@月次伝外税金額 money,
@月次請外税金額 money,
@月次内非金額 money,
@月次伝消費税 money,
@月次請消費税 money,
@月次入金金額 money
)
As
update 得意先残高マスタ
set 営業所コード=@営業所コード,得意先コード=@得意先コード,
前年残高=@前年残高,開始残高=@開始残高,請求残高=@請求残高,
請求今回残高=@請求今回残高,請求伝外税金額=@請求伝外税金額,
請求請外税金額=@請求請外税金額,請求内非金額=@請求内非金額,
請求伝消費税=@請求伝消費税,請求請消費税=@請求請消費税,
請求入金金額=@請求入金金額,月次残高=@月次残高,
月次今回残高=@月次今回残高,月次伝外税金額=@月次伝外税金額,
月次請外税金額=@月次請外税金額,月次内非金額=@月次内非金額,
月次伝消費税=@月次伝消費税,月次請消費税=@月次請消費税,
月次入金金額=@月次入金金額
where (営業所コード=@営業所コード) and (得意先コード=@得意先コード)
return
次回も得意先残高マスタです。
===================================================================
◆
実践テクニック、Accessで作るクラサバシステム ◆
編集・構成:高橋浩
提供・発行:ティウェア
http://www.1tware.com/index.html
Access2000+MSDE2000、Access2002+MSDE2000、Access2003+MSDE2000で
作る販売管理ソフト、クライアントサーバーシステムを構築
※当メールマガジンに掲載された記事を許可なく転載することを禁じます。
===================================================================
実践テクニック、Accessで作るクラサバシステム(隔週 火曜日発行中)
SEが10年以上の開発ノウハウを惜しみなく完全公開!
|