📄 ct_fkcw.frm
字号:
Dim fkcw_ZH As String '帐号
Dim fkcw_ZHK As String '帐号库
Dim fkcw_GDK As String '归档库
Dim fkcw_HZK As String '汇总库
Dim fkcw_ZHXZ As String '帐号性质
Dim fkcw_SPR As String '审批人
Dim fkcw_name As String '记操作流水时的名称
Dim t_bt As String '存储列表显示的表头
Dim t_fields As Variant '存储列表显示的字段名
Dim t_fdxs As Variant '显示列是否有特殊处理 0 无, 1 有
Dim t_fdcounts As Integer '表示列表所显示的字段的个数
'**************************************************************************************************
'* 功 能 :
'* 作 者 : 梁卫
'* 作成日期 : 1999.03.18
'* 修改日期 : 1999.03.18
'**************************************************************************************************
Private Sub CMD_EXIT_Click()
If fkcw_over Then
Call Pub_czle(PUB_data, t_czlsh, "纠正付款方式错误:" & SYS_GWMC & " " & Trim(tx_yjsrq.Text) & " " & Trim(tx_yzdh.Text) & "完成", Time(), pub_code)
Else
Call Pub_czle(PUB_data, t_czlsh, "纠正付款方式错误:" & SYS_GWMC & " 未完成", Time(), pub_code)
End If
Unload Me
End Sub
'**************************************************************************************************
Private Sub CMD_HF_Click()
Dim temp_ft As Boolean
Dim yyk_rec As Recordset
Set yyk_rec = PUB_data.OpenRecordset("SELECT * FROM YY" & year(CDate(tx_yjsrq.Text)) & " WHERE TRIM(GWDM)='" & SYS_GWDM & "' AND JSRQ=#" & CDate(tx_yjsrq.Text) & "# AND TRIM(ZDH)='" & Trim(tx_yzdh.Text) & "' AND TRIM(JS_MC)='" & Trim(fkcw_YJSMC) & "' AND TRIM(FK_FS)='" & Trim(tx_yfkfs.Text) & "' AND TRIM(TH)='" & Trim(tx_yth.Text) & "' AND SJHJ=" & CDec(tx_ye.Text), 2, 0, 2)
If Not yyk_rec.BOF Then
yyk_rec.MoveLast
If Trim(yyk_rec!czbj) = "1" Then
Call MsgBox("该笔帐是一笔冲正帐, 不可以重复操作 !")
Call CMD_EXIT_Click
End If
fkcw_ZH = Trim(yyk_rec!dfzh)
ct_ythqr.thqr_Rt = False
Call ct_ythqr.MAIN(yyk_rec)
ct_ythqr.Show (1)
temp_ft = ct_ythqr.thqr_Rt
If Not temp_ft Then
Call MsgBox("您输入的数据有误 ! ")
Call CMD_EXIT_Click
End If
Dim jsfs_rec As Recordset
Set jsfs_rec = PUB_data.OpenRecordset("SELECT * FROM ZW_JSFS WHERE TRIM(JS_MC)='" & Trim(fkcw_JSMC) & "'", 4, 0, 2)
If Not jsfs_rec.BOF Then
jsfs_rec.MoveLast
End If
fkcw_R2 = Trim(jsfs_rec!js_fs)
jsfs_rec.Close
Dim ctrl_rec As Recordset
Set ctrl_rec = PUB_data.OpenRecordset("SELECT * FROM SYS_CTRL WHERE TRIM(GWDM)='" & SYS_GWDM & "'", 4, 0, 2)
If Not ctrl_rec.BOF Then
ctrl_rec.MoveLast
End If
fkcw_R1 = Trim(ctrl_rec!BMJSDM)
fkcw_MC = Trim(ctrl_rec!XFXM_ZW)
ctrl_rec.Close
fkcw_R4 = "1"
Dim fkcw_ZY As String
Dim fkcw_YE1 As Double
fkcw_ZY = "*"
fkcw_YE1 = 0
Call CT_YECL(Trim(fkcw_R1), Trim(fkcw_R2), Trim(fkcw_R4), Trim(tx_yfkfs.Text), Trim(fkcw_YFKMC), Trim(tx_czh.Text), -fkcw_YE, "*", 1, fkcw_YE1, "YYXMA", fkcw_ZY, Date)
Dim fkcw_JSDM As String
fkcw_JSDM = fkcw_R1 & fkcw_R2 & "00" & fkcw_R4 & Trim(tx_yfkfs.Text)
If fkcw_YE <> 0 And Trim(fkcw_YFKMC) <> "现金" And Len(Trim(fkcw_YFKMC)) <> 0 And fkcw_R4 = "1" Then
frm_msg.Visible = True
frm_msg.Caption = "客人原来付了支票或(和)信用卡 !"
Call ZW_ZPDJ(Trim(fkcw_JSDM), Trim(fkcw_YFKMC), -fkcw_YE, fkcw_YE1, Trim(tx_yzdh.Text), Trim(fkcw_ZH), SYS_GWMC, Date)
frm_msg.Visible = False
frm_msg.Caption = ""
End If
fkcw_R5 = "0"
fkcw_FKMC = ""
frm_msg.Visible = True
frm_msg.Caption = "请输入新的付款方式..."
Do While fkcw_R5 = "0"
fkcw_R5 = t_tools.ZW_FKFS(PUB_data, "1", pub_code)
Loop
Dim fkfs_rec As Recordset
Set fkfs_rec = PUB_data.OpenRecordset("SELECT * FROM ZW_FKFS WHERE TRIM(FK_DM)='" & Trim(tx_yfkfs.Text) & "'", 4, 0, 2)
If Not fkfs_rec.BOF Then
fkfs_rec.MoveLast
fkcw_FKMC = Trim(fkfs_rec!fk_mc)
Else
fkcw_FKMC = "*"
End If
fkfs_rec.Close
Dim fkcw_YE2 As Double
fkcw_YE2 = 0
Call CT_YECL(Trim(fkcw_R1), Trim(fkcw_R2), Trim(fkcw_R4), Trim(fkcw_R5), Trim(fkcw_FKMC), Trim(tx_yzdh.Text), fkcw_YE, "*", 1, fkcw_YE2, "YYXMA", Trim(fkcw_ZY), Date)
Dim fkcw_XJ As Double
Dim fkcw_ZP As Double
Dim fkcw_XYK As Double
fkcw_XJ = 0
fkcw_ZP = 0
fkcw_XYK = 0
Call CT_YEXS(fkcw_YE, fkcw_YE2, Trim(fkcw_FKMC), fkcw_XJ, fkcw_ZP, fkcw_XYK)
'生成要冲正的台帐帐首记录的拷贝, 并增加一条补记新付款方式的记录
' LOCAL_data.Execute "DELETE FROM CT_LSZSGD WHERE TRIM(GWDM)='" & SYS_GWDM & "' AND JSRQ=#" & CDate(tx_yjsrq.Text) & "# AND TRIM(ZDH)='" & Trim(tx_yzdh.Text) & "' AND TRIM(JS_MC)='" & Trim(ybcz_YJSMC) & "' AND TRIM(FK_FS)='" & Trim(tx_yfkfs.Text) & "' AND TRIM(TH)='" & Trim(tx_yth.Text) & "' AND SJHJ=" & CDec(tx_ye.Text)
LOCAL_data.Execute "DELETE FROM CT_LSZSGD "
PUB_data.Execute "INSERT INTO CT_LSZSGD IN '" & Trim(SYS_LOCALBASE) & "' SELECT * FROM YY" & year(CDate(tx_yjsrq.Text)) & " WHERE TRIM(GWDM)='" & SYS_GWDM & "' AND JSRQ=#" & CDate(tx_yjsrq.Text) & "# AND TRIM(ZDH)='" & Trim(tx_yzdh.Text) & "' AND TRIM(JS_MC)='" & Trim(fkcw_YJSMC) & "' AND TRIM(FK_FS)='" & Trim(tx_yfkfs.Text) & "' AND TRIM(TH)='" & Trim(tx_yth.Text) & "' AND SJHJ=" & CDec(tx_ye.Text) & " AND CZBJ='0'"
'补记
LOCAL_data.Execute "UPDATE CT_LSZSGD SET JSRQ=#" & Date & "#, JSSJ='" & Time & "', GWDM='" & SYS_GWDM & "', FK_FS='" & Trim(fkcw_R5) & "', FK_MC='" & Trim(fkcw_FKMC) & "', ZDH='" & Trim(tx_czh.Text) & "', XJ_SR=" & fkcw_XJ & ", ZP_SR=" & fkcw_ZP & ", XYK_SR=" & fkcw_XYK & ", JH_FT='0', BZN='补记 " & Trim(tx_yjsrq.Text) & ":" & Trim(tx_yzdh.Text) & "帐', CZBJ='0'"
PUB_data.Execute "INSERT INTO YY" & year(Date) & " SELECT * FROM CT_LSZSGD IN '" & Trim(SYS_LOCALBASE) & "'"
'生成要冲正的台帐帐首记录的拷贝, 并增加一条冲正新付款方式的记录
' LOCAL_data.Execute "DELETE FROM CT_LSZSGD WHERE TRIM(GWDM)='" & SYS_GWDM & "' AND JSRQ=#" & CDate(tx_yjsrq.Text) & "# AND TRIM(ZDH)='" & Trim(tx_yzdh.Text) & "' AND TRIM(JS_MC)='" & Trim(ybcz_YJSMC) & "' AND TRIM(FK_FS)='" & Trim(tx_yfkfs.Text) & "' AND TRIM(TH)='" & Trim(tx_yth.Text) & "' AND SJHJ=" & CDec(tx_ye.Text)
LOCAL_data.Execute "DELETE FROM CT_LSZSGD "
PUB_data.Execute "INSERT INTO CT_LSZSGD IN '" & Trim(SYS_LOCALBASE) & "' SELECT * FROM YY" & year(CDate(tx_yjsrq.Text)) & " WHERE TRIM(GWDM)='" & SYS_GWDM & "' AND JSRQ=#" & CDate(tx_yjsrq.Text) & "# AND TRIM(ZDH)='" & Trim(tx_yzdh.Text) & "' AND TRIM(JS_MC)='" & Trim(fkcw_YJSMC) & "' AND TRIM(FK_FS)='" & Trim(tx_yfkfs.Text) & "' AND TRIM(TH)='" & Trim(tx_yth.Text) & "' AND SJHJ=" & CDec(tx_ye.Text) & " AND CZBJ='0'"
'冲正
LOCAL_data.Execute "UPDATE CT_LSZSGD SET CZBJ='1', HJ=-HJ, FWF=-FWF, MFCK=-MFCK, MFCK_HJ=-MFCK_HJ, MFCK_CT=-MFCK_CT, FJF=-FJF, SJF=-SJF, ZDH='" & Trim(tx_yzdh.Text) & "', XJ_SR=-XJ_SR, ZP_SR=-ZP_SR, XYK_SR=-XYK_SR, BZN='冲" & Trim(tx_yjsrq.Text) & "帐单号:" & Trim(tx_yzdh.Text) & "帐'"
PUB_data.Execute "INSERT INTO YY" & year(Date) & " SELECT * FROM CT_LSZSGD IN '" & Trim(SYS_LOCALBASE) & "'"
If fkcw_YE <> 0 And Trim(fkcw_FKMC) <> "现金" And Len(Trim(fkcw_FKMC)) <> 0 And Trim(fkcw_R4) = "1" Then
Call ZW_ZPDJ(Trim(fkcw_JSDM), Trim(fkcw_FKMC), fkcw_YE, fkcw_YE2, Trim(tx_yzdh.Text), Trim(fkcw_ZH), SYS_GWMC, Date)
End If
'把要冲正的台帐帐首记录的 CZBJ = "1"
Dim temp_lockno As Integer
Do
temp_lockno = Pub_lock("PUBLIC", "YY" & year(CDate(tx_yjsrq.Text)), yyk_rec)
Loop Until temp_lockno <> 0
yyk_rec.Edit
yyk_rec!czbj = "1"
yyk_rec.Update
Call Pub_UNlock("YY" & year(CDate(tx_yjsrq.Text)), yyk_rec)
fkcw_over = True
Else
Call MsgBox("没有找到该笔帐 ! ")
End If
yyk_rec.Close
Call CMD_EXIT_Click
End Sub
'**************************************************************************************************
'* 功 能 :
'* 作 者 : 梁卫
'* 作成日期 : 1999.03.18
'* 修改日期 : 1999.03.18
'**************************************************************************************************
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyEscape Then
Call CMD_EXIT_Click
End If
End Sub
'**************************************************************************************************
Sub MAIN(t_TITLE As String, t_CWFS As String)
CS_title = Trim(t_TITLE)
CS_cwfs = Trim(t_CWFS)
End Sub
'**************************************************************************************************
'* 功 能 :
'* 作 者 : 梁卫
'* 作成日期 : 1999.03.18
'* 修改日期 : 1999.03.18
'**************************************************************************************************
Private Sub Form_Load()
pub_code = Left(Pub_getcode(PUB_data, "CT_FKCW"), 5)
KeyPreview = True
frm_msg.Visible = True
frm_msg.Caption = "本功能只适应现场结算情况下的错帐处理"
lb_title.Caption = Trim(CS_title)
fkcw_YJSMC = "现场结算"
fkcw_R1 = "0"
tx_yth.Text = ""
tx_yzdh.Text = ""
tx_yjsrq.Text = Date
tx_yfkfs.Text = "0"
lb_yfkmc.Caption = ""
tx_czh.Text = ""
tx_ye.Text = 0
t_czlsh = Pub_czls(PUB_data, "CT_FKCW", Time(), pub_code)
fkcw_over = False
End Sub
'**************************************************************************************************
Private Sub tx_czh_LostFocus()
frm_msg.Visible = False
frm_msg.Caption = ""
If Trim(tx_czh.Text) = "" Then
frm_msg.Visible = True
frm_msg.Caption = "冲正凭证号不应为空白!"
tx_czh.SetFocus
End If
End Sub
'**************************************************************************************************
Private Sub tx_ye_GotFocus()
If IsNumeric(tx_ye.Text) Then
tx_ye.Text = Format(tx_ye.Text)
Else
tx_ye.Text = 0
End If
End Sub
'**************************************************************************************************
Private Sub tx_ye_LostFocus()
frm_msg.Visible = False
frm_msg.Caption = ""
If PUB_SZJY(tx_ye, frm_msg) Then
If CDec(tx_ye.Text) >= 0 Then
tx_ye.Text = Format(tx_ye.Text, "#,##0.00")
Else
frm_msg.Visible = True
frm_msg.Caption = "原付款总额不能 < 0 !"
tx_ye.SetFocus
End If
End If
End Sub
'**************************************************************************************************
Private Sub tx_yfkfs_GotFocus()
If Trim(fkcw_YJSMC) = "现场结算" Then
tx_yfkfs.Text = t_tools.ZW_FKFS(PUB_data, "1", pub_code)
Else
tx_yfkfs.Enabled = False
tx_yfkfs.Text = "*"
lb_yfkmc.Enabled = False
lb_yfkmc.Caption = "*"
fkcw_YFKMC = "*"
End If
End Sub
'**************************************************************************************************
Private Sub tx_yfkfs_LostFocus()
If Trim(tx_yfkfs.Text) = "" Then
fkcw_YFKMC = ""
Call CMD_EXIT_Click
Else
Dim fkfs_rec As Recordset
Set fkfs_rec = PUB_data.OpenRecordset("SELECT * FROM ZW_FKFS WHERE TRIM(FK_DM)='" & Trim(tx_yfkfs.Text) & "'", 4, 0, 2)
If Not fkfs_rec.BOF Then
fkfs_rec.MoveLast
fkcw_YFKMC = Trim(fkfs_rec!fk_mc)
lb_yfkmc.Caption = fkcw_YFKMC
Else
fkcw_YFKMC = ""
Call CMD_EXIT_Click
End If
fkfs_rec.Close
End If
End Sub
'**************************************************************************************************
Private Sub tx_yjsrq_LostFocus()
frm_msg.Visible = False
frm_msg.Caption = ""
If PUB_RQJY(tx_yjsrq, frm_msg) Then
If Trim(tx_yjsrq.Text) = "____-__-__" Then
frm_msg.Visible = True
frm_msg.Caption = "请输入原结算日期"
Else
If CDate(tx_yjsrq.Text) >= SYS_START And CDate(tx_yjsrq.Text) <= Date Then
Else
frm_msg.Visible = True
frm_msg.Caption = "请输入适当的原结算日期"
tx_yjsrq.SetFocus
End If
End If
End If
End Sub
'**************************************************************************************************
'校验台号的正确性
Private Sub tx_yth_LostFocus()
Dim temp_i As Integer
Dim temp_char As String
Dim temp_ft As Boolean
frm_msg.Visible = False
frm_msg.Caption = ""
temp_ft = True
If Len(Trim(tx_yth.Text)) = 0 Then
temp_ft = False
Else
'按字符判断台号的合法性
For temp_i = 1 To Len(Trim(tx_yth.Text))
temp_char = Mid(Trim(tx_yth.Text), temp_i, 1)
If Not (IsNumeric(temp_char) Or (UCase(temp_char) >= "A" And UCase(temp_char) <= "Z")) Then
temp_ft = False
Exit For
End If
Next
End If
If Not temp_ft Then
frm_msg.Visible = True
frm_msg.Caption = "此台号不合理, 应该用数字或字母组合 !"
tx_yth.SetFocus
End If
End Sub
'**************************************************************************************************
Private Sub tx_yzdh_LostFocus()
If Trim(tx_yzdh.Text) = "" Then
Call CMD_EXIT_Click
Else
tx_yzdh.Enabled = False
' tx_yfkfs.SetFocus
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -