📄 ct_ybcz.frm
字号:
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
'**************************************************************************************************
'* 功 能 : 台帐恢复
'* 作 者 : 梁卫
'* 作成日期 : 1999.05.10
'* 修改日期 : 1999.05.10
'* 参数说明 : tzhf_yth -- 原台号
'* tzhf_yjsr -- 原结算日期
'* tzhf_yzdh -- 原帐单号
'* tzhf_yjsmc -- 原结算名称
'* tzhf_yr2 --
'* tzhf_yfkmc -- 原付款名称
'* tzhf_yr5 --
'* tzgd -- 台帐归档表名
'* yyk -- 台帐列表归档表名
'* tzhf_lsk -- 标准台帐临时表名
'* tzhf_hzk -- 汇总表名
'* tzhf_lslb -- 台帐列表表名
'* tzhf_czh -- 冲正号
'**************************************************************************************************
Private Function ct_tzhf(tzhf_yth As String, tzhf_yjsr As Date, tzhf_yzdh As String, tzhf_yjsmc As String, tzhf_yr2 As String, tzhf_yfkmc As String, tzhf_yr5 As String, tzgd As String, yyk As String, tzhf_lsk As String, tzhf_hzk As String, tzhf_lslb As String, tzhf_czh As String) As Boolean
tzhf_fwf = 0
tzhf_fjf = 0
tzhf_rec = Pub_czls(PUB_data, "CT_TZHF", Time(), " ")
tzhf_over = False
Dim tzlb_rec As Recordset
Set tzlb_rec = LOCAL_data.OpenRecordset("SELECT * FROM CT_TZLB WHERE TRIM(TH)='" & Trim(tzhf_yth) & "'", 2, 0, 2)
If Not tzlb_rec.BOF Then
tzlb_rec.MoveLast
Dim czqr_ft As Boolean
czqr_ft = False
ct_xthqr.thqr_Rt = czqr_ft
Call ct_xthqr.MAIN(tzlb_rec)
ct_xthqr.Show (1)
czqr_ft = ct_xthqr.thqr_Rt
If Not czqr_ft Then '未确认
Call MsgBox("该台已有客人, 请输入新台号 !")
Dim temp_rec As Recordset
t_TH = InputBox("请输入新台号:", SYS_GWMC & "台帐恢复", "")
Do While True
temp_rec = LOCAL_data.OpenRecordset("SELECT * FROM CT_TZLB WHERE TRIM(TH)='" & Trim(t_TH) & "'", 4, 0, 2)
If Not temp_rec.BOF Then
temp_rec.MoveLast
t_TH = InputBox("台号" & Trim(t_TH) & " 已经有客人, 请重新输入台号", SYS_GWMC & "台帐恢复", Trim(t_TH))
Else
Exit Do
End If
temp_rec.Close
Loop
t_TH = Trim(t_TH)
If Len(t_TH) = 0 Then
Exit Function
End If
'把临时台帐的台号修改为新台号 (tzhf_lsk)
LOCAL_data.Execute "UPDATE " & Trim(tzhf_lsk) & " SET TH='" & Trim(t_TH) & "'"
'把临时台帐帐首的台号修改为新台号 (tzhf_lslb)
LOCAL_data.Execute "UPDATE " & Trim(tzhf_lslb) & " SET TH='" & Trim(t_TH) & "'"
'恢复台帐帐首
Call tPtzzs_hf(tzlb_rec)
'恢复台帐帐页
Call tPtzzy_hf
'把临时台帐帐页中的台号恢复为原台号 (tzhf_lsk)
LOCAL_data.Execute "UPDATE " & Trim(tzhf_lsk) & " SET TH='" & Trim(tzhf_yth) & "'"
'把临时台帐帐首中的台号恢复为原台号 (tzhf_lslb)
LOCAL_data.Execute "UPDATE " & Trim(tzhf_lslb) & " SET TH='" & Trim(tzhf_yth) & "'"
Else
t_TH = Trim(tzlb_rec!TH)
'恢复台帐帐页
Call tPtzzy_hf
End If
Else
t_TH = Trim(tzhf_yth)
'恢复台帐帐首
Call tPtzzs_hf(tzlb_rec)
'恢复台帐帐页
Call tPtzzy_hf
End If
tzlb_rec.Close
'计算台帐帐页(tzk)中的合计金额, 并修改台帐帐首(tzlb)
Dim hj_sjhj As Double
Dim hj_xfhj As Double
Dim hjje_rec As Recordset
Set hjje_rec = LOCAL_data.OpenRecordset("SELECT SUM(SJHJ) AS HJ_SJHJ, SUM(HJ) AS HJ_XFHJ FROM CT_TZK WHERE TRIM(TH)='" & Trim(t_TH) & "'", 4, 0, 2)
If Not hjje_rec.BOF Then
hjje_rec.MoveLast
hj_sjhj = IIf(IsNull(hjje_rec!hj_sjhj), 0, hjje_rec!hj_sjhj)
hj_xfhj = IIf(IsNull(hjje_rec!hj_xfhj), 0, hjje_rec!hj_xfhj)
Else
hj_sjhj = 0
hj_xfhj = 0
End If
hjje_rec.Close
LOCAL_data.Execute "UPDATE CT_TZLB SET HJ=" & hj_xfhj & ", SFHJ=" & hj_xfhj
'***************************************************
'置临时台帐帐首(tzhf_lslb)中的值为负值
LOCAL_data.Execute "UPDATE " & Trim(tzhf_lslb) & " SET HJ=-HJ, FWF=-FWF, FJF=-FJF, JSJE=-JSJE, BZJE=-BZJE, XJ_SR=-XJSR, ZP_SR=-ZP_SR, XYK_SR=-XYK_SR, MFCK=-MFCK, MFCK_HJ=-MFCK_HJ, MFCK_CT=-MFCK_CT, YHQ=-YHQ, SJF=-SJF, CZY='" & SYS_USER & "'"
'置临时台帐帐页(tzhf_lsk)中的值为负值
LOCAL_data.Execute "UPDATE " & Trim(tzhf_lsk) & " SET XFJE=-XFJE, XJJE=-SJJE, SL=-SL"
'置临时汇总表(tzhf_hzk)中的值为负值
LOCAL_data.Execute "UPDATE " & Trim(tzhf_hzk) & " SET XFJE=-XFJE, XJJE=-SJJE"
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
R1 = Trim(ctrl_rec!BMJSDM)
tzhf_mc = Trim(ctrl_rec!XFXM_ZW)
ctrl_rec.Close
tzhf_bz = "冲" & tzhf_yjsr & ":" & Trim(tzhf_yzdh) & "帐"
Dim lslslb_rec As Recordset
Set lslslb_rec = LOCAL_data.OpenRecordset("SELECT * FROM " & Trim(tzhf_lslb), 4, 0, 2)
If Not lslslb_rec.BOF Then
lslslb_rec.MoveLast
End If
If tzhf_yjsmc <> "现场结算" And tzhf_yjsmc <> "全部报帐" Then
Call PUB_TZCZ(SYS_GWDM, tzhf_yjsr, Trim(lslslb_rec!dfzh), Trim(tzhf_yzdh), "1")
End If
Select Case Trim(tzhf_yjsmc)
Case "现场结算"
tzhf_over = ct_czxcj(tzhf_yfkmc, tzhf_yr5, m.MFCK, m.YHQ, tzhf_yjsmc, tzhf_yr2, tzhf_lsk, tzhf_hzk, tzhf_lslb, m.hj, yyxm, R1, tzhf_yzdh, m.FWF, m.FJF, m.JSJE, tzhf_bz, tzhf_yjsr, tzhf_yzdh)
Case "挂帐"
tzhf_over = ct_czgzj(m.dfzh, m.MFCK, m.YHQ, m.hj, tzhf_yjsmc, tzhf_yr2, R1, tzhf_yfkmc, tzhf_yr5, tzhf_lsk, tzhf_hzk, tzhf_lslb, yyxm, tzhf_yzdh, m.FWF, m.FJF, m.JSJE, tzhf_bz, tzhf_yjsr, tzhf_yzdh)
Case "全部报帐"
tzhf_over = ct_czbzj(m.dfzh, m.MFCK, m.YHQ, m.hj, tzhf_yjsmc, tzhf_yr2, R1, tzhf_yfkmc, tzhf_yr5, tzhf_lsk, tzhf_hzk, tzhf_lslb, yyxm, tzhf_yzdh, m.FWF, m.FJF, m.JSJE, tzhf_bz, tzhf_yjsr, tzhf_yzdh)
Case "转特殊内部帐"
tzhf_over = ct_cztsj(m.dfzh, m.MFCK, m.YHQ, m.hj, tzhf_yjsmc, tzhf_yr2, R1, tzhf_yfkmc, tzhf_yr5, tzhf_lsk, tzhf_hzk, tzhf_lslb, yyxm, tzhf_yzdh, m.FWF, m.FJF, m.JSJE, tzhf_bz, tzhf_yjsr, tzhf_yzdh)
Case "免费早餐卡"
tzhf_over = ct_czmfj(m.dfzh, m.MFCK, m.YHQ, m.hj, tzhf_yjsmc, tzhf_yr2, R1, tzhf_yfkmc, tzhf_yr5, tzhf_lsk, tzhf_hzk, tzhf_lslb, yyxm, tzhf_yzdh, m.FWF, m.FJF, m.JSJE, tzhf_bz, tzhf_yjsr, tzhf_yzdh)
tzhf_over = True
End Select
lslslb_rec.Close
If tzhf_over Then
Call Pub_czle(tzhf_rec, "台帐恢复:" + tzhf_yth + ":" + tzhf_yzdh, Time(), " ")
Else
Call Pub_czle(tzhf_rec, "台帐恢复: 未完成" + tzhf_yth, Time(), " ")
End If
ct_tzhf = tzhf_over
End Sub
'******************************************************************************************
'* - 恢复台帐帐页 -
'******************************************************************************************
Private Sub tPtzzy_hf()
'恢复台帐帐页
Dim tzk_rec As Recordset '台帐记录集
Set tzk_rec = LOCAL_data.OpenRecordset("SELECT * FROM CT_TZK", 2, 0, 2)
If Not tzk_rec.BOF Then
tzk_rec.MoveLast
End If
Dim lsk_rec As Recordset '临时台帐记录集
Set lsk_rec = LOCAL_data.OpenRecordset("", 4, 0, 2)
If Not lsk_rec.BOF Then
lsk_rec.MoveLast
lsk_rec.MoveFirst
Do While Not lsk_rec.EOF
tzk_rec.AddNew
tzk_rec!CZY = Trim(lsk_rec!CZY)
tzk_rec!FSRQ = lsk_rec!FSRQ
tzk_rec!lock_no = 0
tzk_rec!DY_FT = "0"
tzk_rec!GWDM = Trim(lsk_rec!GWDM)
tzk_rec!GWMC = Trim(lsk_rec!GWMC)
tzk_rec!FSSJ = Trim(lsk_rec!FSSJ)
tzk_rec!JS_FT = Trim(lsk_rec!JS_FT)
tzk_rec!ZKL = lsk_rec!ZKL
tzk_rec!DJ = lsk_rec!DJ
tzk_rec!TH = Trim(lsk_rec!TH)
tzk_rec!BHA = Trim(lsk_rec!BHA)
tzk_rec!ZWMC = Trim(lsk_rec!ZWMC)
tzk_rec!YWMC = Trim(lsk_rec!YWMC)
tzk_rec!SL = lsk_rec!SL
tzk_rec!JLDW = Trim(lsk_rec!JLDW)
tzk_rec!SJC = lsk_rec!SJC
tzk_rec!DYSJ = Trim(lsk_rec!DYSJ)
tzk_rec!SJ_FT = Trim(lsk_rec!SJ_FT)
tzk_rec!XFJE = lsk_rec!XFJE
tzk_rec!SJJE = lsk_rec!SJJE
tzk_rec!TJ_FT = Trim(lsk_rec!TJ_FT)
tzk_rec!LBDMA = Trim(lsk_rec!LBDMA)
tzk_rec!DCDH = Trim(lsk_rec!DCDH)
tzk_rec.Update
lsk_rec.MoveNext
Loop
End If
lsk_rec.Close
tzk_rec.Close
End Sub
'******************************************************************************************
'* - 恢复台帐帐页 -
'******************************************************************************************
Private Sub tPtzzs_hf(t_rec As Recordset)
'恢复台帐帐首
Dim lslb_rec As Recordset
Set lslb_rec = LOCAL_data.OpenRecordset("SELECT * FROM " & Trim(tzhf_lslb), 4, 0, 2)
If Not lslb_rec.BOF Then
lslb_rec.MoveLast
End If
t_rec.AddNew
t_rec!CZY = Trim(lslb_rec!CZY)
t_rec!FSRQ = lslb_rec!FSRQ
t_rec!ZKL = lslb_rec!ZKL
t_rec!RS = lslb_rec!RS
t_rec!TH = Trim(lslb_rec!TH)
t_rec!hj = lslb_rec!hj
t_rec!SJHJ = lslb_rec!SJHJ
t_rec!BZN = Trim(lslb_rec!BZN)
t_rec!FWF = lslb_rec!FWF
t_rec!JSBL = lslb_rec!LSBL
t_rec!SJF = lslb_rec!SJF
t_rec!JSJE = lslb_rec!JSJE
t_rec!FWFL = lslb_rec!FWFL
t_rec!FJFWFL = lslb_rec!FJFWFL
t_rec!FJF = lslb_rec!FJF
t_rec!JTSJ = Trim(lslb_rec!JTSJ)
t_rec!HJS_FT = Trim(lslb_rec!HJS_FT)
t_rec!lock_no = 0
t_rec.Update
lslb_rec.Close
End Sub
'***************************************************************************************
'* -- 现场结算 的 台帐恢复
'***************************************************************************************
Private Function ct_czxcj(czxc_fkmc As String, czxc_r5 As String, czxc_mfck As Integer, czxc_yhq As Integer, czxc_jsmc As String, czxc_r2 As String, czxc_lsk As String, czxc_hzk As String, czxc_lbk As String, czxc_hj As Double, czxc_yyxm As String, czxc_r1 As String, czxc_czh As String, czxc_fwf As Double, czxc_fjf As Double, czxc_jsf As Double, czxc_bz As String, czxc_yjsr As Date, czxc_yzdh As String) As Boolean
ct_czxcj = False
Dim czxc_rq As Date
Dim czxc_sj As String
czxc_rq = Date
czxc_sj = Time()
Dim czxc_mfje1 As Double
Dim czxc_mfje2 As Double
Dim czxc_ye As Double
Dim czxc_zckbz As Double
Dim czxc_zckct As Double
Dim czxc_zckkf As Double
Dim lbk_rec As Recordset '临时列表记录集
Set lbk_rec = LOCAL_data.OpenRecordset("SELECT * FROM " & Trim(czxc_lbk), 2, 0, 2)
If Not lbk_rec.BOF Then
lbk_rec.MoveLast
End If
czxc_mfje1 = lbk_rec!mfck_hj
czxc_zckbz = lbk_rec!mfck_hj
czxc_zckct = lbk_rec!mfck_ct
czxc_zckkf = czxc_zckbz - czxc_zckct
czxc_mfje2 = czxc_yhq * SYS_YHQBZ
czxc_ye = czxc_hj - czxc_mfje1 - czxc_mfje2
lbk_rec.Close
If Abs(czxc_mfje1 + czxc_mfje2) > Abs(czxc_hj) Then
If Abs(czxc_mfje2) > Abs(czxc_ye) Then
czxc_mfje2 = czxc_mfje2 + czxc_ye
Else
czxc_mfje2 = 0
End If
czxc_ye = czxc_hj - czxc_mfje1 - czxc_mfje2
If czxc_mfje2 = 0 And Abs(czxc_mfje1) > Abs(czxc_hj) Then
czxc_mfje1 = czxc_mfje1 + czxc_ye
czxc_ye = 0
End If
End If
Dim czxc_r4 As String
Dim czxc_bl As Single
czxc_r4 = "1"
czxc_bl = 1
'? do ct_fxcl with czxc_hzk,czxc_yyxm,czxc_r1,czxc_r2,czxc_r4,czxc_bl,czxc_czh,czxc_bz,czxc_rq
Dim czxc_xfxm As String
If Abs(czxc_mfje1) > 0 Then
czxc_xfxm = "免费早餐卡"
'? do ct_dxcl with czxc_xfxm,czxc_yyxm,czxc_r1,czxc_r2,czxc_r4,'0', czxc_czh,czxc_mfje1,1,czxc_bz,czxc_rq
End If
If Abs(czxc_mfje2) > 0 Then
czxc_xfxm = "优惠券"
'? do ct_dxcl with czxc_xfxm,czxc_yyxm,czxc_r1,czxc_r2,czxc_r4,'0', czxc_czh,czxc_mfje2,1,czxc_bz,czxc_rq
End If
czxc_fwje = czxc_fwf + czxc_fjf + czxc_jsf
If Abs(czxc_fwje) > 0 Then
czxc_xfxm = "服务费"
'? do ct_dxcl with czxc_xfxm,czxc_yyxm,czxc_r1,czxc_r2,czxc_r4,'0',czxc_czh,czxc_fwje,1,czxc_bz,czxc_rq
End If
If Abs(czxc_ye) > 0 Then
czxc_xfxm = "余额"
Dim yyxm_rec As Recordset
Set yyxm_rec = PUB_data.OpenRecordset("SELECT * FROM " & Trim(czxc_yyxm) & " WHERE TRIM(GWDM)='" & SYS_GWDM & "' AND TRIM(LBMC_ZW)='" & TIRM(czxc_xfxm) & "'", 4, 0, 2)
If Not yyxm_rec.BOF Then
yyxm_rec.MoveLast
czxc_r3 = Trim(yyxm_rec!LBDMA)
Else
Call MsgBox("营业项目库异常出错 !")
Exit Function
End If
yyxm_rec.Close
Dim czxc_zy As String
Dim czxc_ye1 As Double
czxc_zy = "*"
czxc_ye1 = 0
Call CT_YECL(Trim(czxc_r1), Trim(czxc_r2), Trim(czxc_r4), Trim(czxc_r5), Trim(czxc_fkmc), Trim(czxc_czh), czxc_ye, "*", 1, czxc_ye1, Trim(czxc_yyxm), Trim(czxc_zy), czxc_rq)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -