📄 pub_ct.bas
字号:
Attribute VB_Name = "pub_ct"
Option Explicit
'**************************************************************************************************
'* 功 能 : 餐厅优惠券处理
'* 作 者 : 梁卫
'* 作成日期 : 1999.04.15
'* 修改日期 : 1999.04.15
'* 参数说明 : (输入) t_zy -- 领用, 发放, 回收
'* t_sl -- 数量
'* (返回) t_sl -- 记录实际数量
'**************************************************************************************************
Public Sub CT_YHQ(t_ZY As String, t_sl As Integer)
Dim yhq_rec As Recordset
Dim lsh_rec As Recordset
Dim temp_sl As Variant
Dim t_hssl As Integer
Dim t_lysl As Integer
Dim t_ffsl As Integer
If Not (t_sl = 0 And t_ZY = "回收") Then
t_hssl = 0
t_lysl = 0
t_ffsl = 0
Select Case t_ZY
Case "回收"
t_hssl = t_sl
Case "领用"
temp_sl = InputBox("请输入优惠券数量:", Trim(t_ZY) & "优惠券", 1)
Do While True
If IsNumeric(temp_sl) Then
If CInt(temp_sl) >= 0 Then
Exit Do
End If
End If
temp_sl = InputBox("请输入正确的数量:", Trim(t_ZY) & "优惠券", 1)
Loop
t_lysl = CInt(temp_sl)
t_sl = t_lysl
Case "发放"
temp_sl = InputBox("请输入优惠券数量:", Trim(t_ZY) & "优惠券", 1)
Do While True
If IsNumeric(temp_sl) Then
If CInt(temp_sl) >= 0 Then
Exit Do
End If
End If
temp_sl = InputBox("请输入正确的数量:", Trim(t_ZY) & "优惠券", 1)
Loop
t_ffsl = CInt(temp_sl)
t_sl = t_ffsl
End Select
Set yhq_rec = PUB_data.OpenRecordset("SELECT * FROM CT_YHQ", 2, 0, 2)
If Not yhq_rec.BOF Then
yhq_rec.MoveLast
End If
yhq_rec.AddNew
yhq_rec.Fields("GWDM") = SYS_GWDM
yhq_rec.Fields("GWMC") = SYS_GWMC
yhq_rec.Fields("FSRQ") = Date
Set lsh_rec = PUB_data.OpenRecordset("SELECT MAX(LSH) AS MAX_LSH FROM CT_YHQ WHERE TRIM(GWDM)='" & Trim(SYS_GWDM) & "' AND FSRQ=#" & Format(Date, "YYYY-MM-DD") & "#", 4, 0, 2)
If Not lsh_rec.BOF Then
lsh_rec.MoveLast
If IsNull(lsh_rec.Fields("MAX_LSH")) Then
yhq_rec.Fields("LSH") = 1
Else
yhq_rec.Fields("LSH") = lsh_rec.Fields("MAX_LSH") + 1
End If
Else
yhq_rec.Fields("LSH") = 1
End If
lsh_rec.Close
yhq_rec.Fields("HSSL") = t_hssl
yhq_rec.Fields("LYSL") = t_lysl
yhq_rec.Fields("FFSL") = t_ffsl
yhq_rec.Fields("BZ") = Trim(t_ZY)
yhq_rec.Fields("CZY") = SYS_USER
yhq_rec.Fields("LOCK_NO") = 0
yhq_rec.Update
yhq_rec.Close
End If
End Sub
'**************************************************************************************************
'* 功 能 : 酒水统计
'* 作 者 : 梁卫
'* 作成日期 : 1999.04.15
'* 修改日期 : 1999.04.15
'**************************************************************************************************
Public Sub CT_JSTJ()
Dim yyxma_rec As Recordset 'YYXMA
Dim ctzy_rec As Recordset 'ZYyyyy
Dim jstj_rec As Recordset 'ZYyyyy
Dim jstj_lbdma As String
Dim temp_rq As Variant
Dim t_czlsh As String
Dim temp_ft As Boolean
Dim temp_lock As Integer
pub_code = Left(Pub_getcode(PUB_data, "CT_JSTJ"), 5)
jstj_lbdma = ""
Set yyxma_rec = PUB_data.OpenRecordset("SELECT * FROM YYXMA WHERE TRIM(GWDM)='" & SYS_GWDM & "'", 4, 0, 2)
If Not yyxma_rec.BOF Then
yyxma_rec.MoveLast
yyxma_rec.MoveFirst
yyxma_rec.FindFirst "TRIM(LBMC_ZW)='酒水'"
If Not yyxma_rec.NoMatch Then
jstj_lbdma = jstj_lbdma & Trim(yyxma_rec.Fields("LBDMA"))
End If
yyxma_rec.FindFirst "TRIM(LBMC_ZW)='香烟'"
If Not yyxma_rec.NoMatch Then
jstj_lbdma = jstj_lbdma & "," & Trim(yyxma_rec.Fields("LBDMA"))
End If
End If
yyxma_rec.Close
If Trim(jstj_lbdma) = "" Then
Call MsgBox("本部门目前无酒水, 香烟项目")
Else
temp_rq = InputBox("统计日期:", "酒水统计", Date)
Do While True
If IsDate(temp_rq) Then
If CDate(temp_rq) <= Date Then
Exit Do
End If
End If
temp_rq = InputBox("重新输入正确的统计日期:", "酒水统计", Date)
Loop
temp_ft = False
Set jstj_rec = PUB_data.OpenRecordset("SELECT * FROM CT_JSTJ WHERE TRIM(GWDM)='" & SYS_GWDM & "' AND FSRQ=#" & temp_rq & "#", 2, 0, 2)
If Not jstj_rec.BOF Then
jstj_rec.MoveLast
If MsgBox(temp_rq & "已经统计过酒水, 是否重新统计酒水?", vbOKCancel, SYS_GWMC) = vbOK Then
temp_ft = True
Do
temp_lock = Pub_lock("CT", "CT_JSTJ", jstj_rec)
Loop Until temp_lock <> 0
Select Case temp_lock
Case 1
jstj_rec.Delete
Case 2
End Select
Call Pub_UNlock("CT_JSTJ", jstj_rec)
End If
Else
temp_ft = True
End If
If temp_ft Then
Set ctzy_rec = PUB_data.OpenRecordset("SELECT JSRQ,BHA,ZWMC,YWMC,DJ,SUM(SL) AS SM_SL,SUM(SJJE) AS SM_SJJE FROM ZY" & year(temp_rq) & " WHERE TRIM(GWDM)='" & Trim(SYS_GWDM) & "' AND JSRQ=#" & temp_rq & "# AND INSTR(1,'" & jstj_lbdma & "',LBDMA)<>0 GROUP BY JSRQ,BHA,ZWMC,YWMC,DJ", 4, 0, 2)
If Not ctzy_rec.BOF Then
ctzy_rec.MoveLast
ctzy_rec.MoveFirst
t_czlsh = Pub_czls(PUB_data, "CT_JSTJ", Time(), pub_code)
Do While Not ctzy_rec.EOF
jstj_rec.AddNew
jstj_rec.Fields("FSRQ") = ctzy_rec.Fields("JSRQ")
jstj_rec.Fields("BHA") = ctzy_rec.Fields("BHA")
jstj_rec.Fields("ZWMC") = ctzy_rec.Fields("ZWMC")
jstj_rec.Fields("YWMC") = ctzy_rec.Fields("YWMC")
jstj_rec.Fields("DJ") = ctzy_rec.Fields("DJ")
jstj_rec.Fields("SL") = ctzy_rec.Fields("SM_SL")
jstj_rec.Fields("SJJE") = ctzy_rec.Fields("SM_SJJE")
jstj_rec.Fields("GWDM") = Trim(SYS_GWDM)
jstj_rec.Fields("GWMC") = Trim(SYS_GWMC)
jstj_rec.Fields("CZY") = SYS_USER
jstj_rec.Fields("LOCK_NO") = 0
jstj_rec.Update
ctzy_rec.MoveNext
Loop
Call Pub_czle(PUB_data, t_czlsh, SYS_GWDM & " " & SYS_GWMC & "酒水统计成功", Time(), pub_code)
End If
ctzy_rec.Close
End If
jstj_rec.Close
End If
End Sub
'**************************************************************************************************
'* 功 能 : 本功能用于餐饮部门客帐结算时 , 台帐和台帐列表的归档
'* 作 者 : 梁卫
'* 作成日期 : 1999.04.23
'* 修改日期 : 1999.04.23
'* 参数说明 : kzgd_tzlb -- 台帐帐首
'* kzgd_tzk -- 台帐帐页
'* kzgd_hzk -- 台帐汇总
'* kzgd_zdh -- 帐单号
'* kzgd_r2 -- 结算代码(第 2 位)
'* kzgd_jsmc -- 结算名称
'* kzgd_r5 -- 结算代码(第 5 位)
'* kzgd_fkmc -- 付款名称
'* kzgd_dfzh -- 对方帐号
'* kzgd_mfck -- 免费早餐卡数量
'* kzgd_yhq -- 优惠券数量
'* kzgd_bzje -- 报帐金额
'* kzgd_th -- 台号
'* kzgd_xj -- 现金金额
'* kzgd_zp -- 支票金额
'* kzgd_xyk -- 信用卡金额
'* kzgd_mfje1 -- 免费早餐卡实际金额
'* kzgd_mfje2 -- 优惠券实际金额
'* kzgd_fwje -- 服务费总金额
'* kzgd_bl -- 报帐/挂帐等比率
'* kzgd_ye -- 余额
'* kzgd_zy -- 摘要
'* kzgd_rq -- 归档日期
'* kzgd_sj -- 归档时间
'**************************************************************************************************
Public Sub CT_KZGD(kzgd_tzlb As String, kzgd_tzk As String, kzgd_hzk As String, kzgd_zdh As String, kzgd_r2 As String, kzgd_jsmc As String, kzgd_r5 As String, kzgd_fkmc As String, kzgd_dfzh As String, kzgd_mfck As Integer, kzgd_yhq As Integer, kzgd_bzje As Double, kzgd_th As String, kzgd_xj As Double, kzgd_zp As Double, kzgd_xyk As Double, kzgd_zckbz As Double, kzgd_zckct As Double, kzgd_mfje1 As Double, kzgd_mfje2 As Double, kzgd_fwje As Double, kzgd_bl As Single, kzgd_ye As Double, kzgd_zy As String, kzgd_rq As Date, kzgd_sj As String)
'把已结算的(CT_TZK)帐页内容追加至临时归档表(CT_ZYGD)中, 修改相应的字段, 追加至实际的归档表(ZYyyyy)中, 删除CT_TZK中已经结算的台帐帐页
' LOCAL_data.Execute "DELETE FROM CT_ZYGD WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
LOCAL_data.Execute "DELETE FROM CT_ZYGD "
LOCAL_data.Execute "INSERT INTO CT_ZYGD SELECT * FROM " & kzgd_tzk & " WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
' LOCAL_data.Execute "UPDATE CT_ZYGD SET JH_FT='0', GWDM='" & SYS_GWDM & "', GWMC='" & SYS_GWMC & "',ZDH='" & Trim(kzgd_zdh) & "',CZY='" & SYS_USER & "',JSRQ=#" & kzgd_rq & "#, JSSJ='" & kzgd_sj & "' WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
LOCAL_data.Execute "UPDATE CT_ZYGD SET JH_FT='0', GWDM='" & SYS_GWDM & "', GWMC='" & SYS_GWMC & "',ZDH='" & Trim(kzgd_zdh) & "',CZY='" & SYS_USER & "',JSRQ=#" & kzgd_rq & "#, JSSJ='" & kzgd_sj & "'"
PUB_data.Execute "INSERT INTO ZY" & year(kzgd_rq) & " SELECT * FROM CT_ZYGD IN '" & Trim(SYS_LOCALBASE) & "'"
' LOCAL_data.Execute "DELETE FROM CT_ZYGD WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
LOCAL_data.Execute "DELETE FROM CT_ZYGD "
LOCAL_data.Execute "DELETE FROM " & kzgd_tzk & " WHERE TRIM(TH)='" & Trim(kzgd_th) & "' AND DY_FT='1'"
'把已结算的(CT_TZLBK)帐首内容追加至临时归档表(CT_ZSGD)中, 修改相应的字段, 追加至实际的归档表(YYyyyy)中, 删除CT_TZLB中已经结算的台帐帐首
' LOCAL_data.Execute "DELETE FROM CT_ZSGD WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
LOCAL_data.Execute "DELETE FROM CT_ZSGD "
LOCAL_data.Execute "INSERT INTO CT_ZSGD SELECT * FROM " & kzgd_tzlb & " WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
' LOCAL_data.Execute "UPDATE CT_ZSGD SET GWDM='" & SYS_GWDM & "', GWMC='" & SYS_GWMC & "',JSRQ=#" & kzgd_rq & "#, JSSJ='" & kzgd_sj & "', ZDH='" & Trim(kzgd_zdh) & "', JS_FS='" & kzgd_r2 & "',CZY='" & SYS_USER & "', JS_MC='" & Trim(kzgd_jsmc) & "', FK_FS='" & kzgd_r5 & "', FK_MC='" & Trim(kzgd_fkmc) & "', DFZH='" & Trim(kzgd_dfzh) & "', XJ_SR=" & kzgd_xj & ",ZP_SR=" & kzgd_zp & ",XYK_SR=" & kzgd_xyk & ", MFCK=" & kzgd_mfck & ", MFCK_HJ=" & kzgd_zckbz & ", MFCK_CT=" & kzgd_zckct & ",YHQ=" & kzgd_yhq & ", BZJE=" & kzgd_bzje & ", JH_FT='0',MFJE_ZCK=" & kzgd_mfje1 & ", MFJE_YHQ=" & kzgd_mfje2 & ", FWJE=" & kzgd_fwje & ", BL=" & kzgd_bl & ", YE=" & kzgd_ye & ", ZY='" & kzgd_zy & "' WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
LOCAL_data.Execute "UPDATE CT_ZSGD SET GWDM='" & SYS_GWDM & "', GWMC='" & SYS_GWMC & "',JSRQ=#" & kzgd_rq & "#, JSSJ='" & kzgd_sj & "', ZDH='" & Trim(kzgd_zdh) & "', JS_FS='" & kzgd_r2 & "',CZY='" & SYS_USER & "', JS_MC='" & Trim(kzgd_jsmc) & "', FK_FS='" & kzgd_r5 & "', FK_MC='" & Trim(kzgd_fkmc) & "', DFZH='" & Trim(kzgd_dfzh) & "', XJ_SR=" & kzgd_xj & ",ZP_SR=" & kzgd_zp & ",XYK_SR=" & kzgd_xyk & ", MFCK=" & kzgd_mfck & ", MFCK_HJ=" & kzgd_zckbz & ", MFCK_CT=" & kzgd_zckct & ",YHQ=" & kzgd_yhq & ", BZJE=" & kzgd_bzje & ", JH_FT='0',MFJE_ZCK=" & kzgd_mfje1 & ", MFJE_YHQ=" & kzgd_mfje2 & ", FWJE=" & kzgd_fwje & ", BL=" & kzgd_bl & ", YE=" & kzgd_ye & ", ZY='" & kzgd_zy & "'"
PUB_data.Execute "INSERT INTO YY" & year(kzgd_rq) & " SELECT * FROM CT_ZSGD IN '" & Trim(SYS_LOCALBASE) & "'"
' LOCAL_data.Execute "DELETE FROM CT_ZSGD WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
LOCAL_data.Execute "DELETE FROM CT_ZSGD "
LOCAL_data.Execute "DELETE FROM " & kzgd_tzlb & " WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
'删除当前汇总表中的当前台号的内容
LOCAL_data.Execute "DELETE FROM " & kzgd_hzk & " WHERE TRIM(TH)='" & Trim(kzgd_th) & "'"
End Sub
'**************************************************************************************************
'* 功 能 : 本功能用于餐饮部门在错帐处理功能下的客帐归档
'* 作 者 : 梁卫
'* 作成日期 : 1999.05.11
'* 修改日期 : 1999.05.11
'* 参数说明 : kzgd1_lsk -- 台帐帐页表名(临时)
'* kzgd1_czh -- 冲正号
'* kzgd1_lbk -- 台帐帐首表名(临时)
'* kzgd1_yjsmc -- 原结算名称
'* kzgd1_yfkmc -- 原付款名称
'* kzgd1_dfzh -- 对方帐号
'* kzgd1_hzk -- 汇总表名
'* kzgd1_r2 --
'* kzgd1_r5 --
'* kzgd1_yjsr -- 原结算日期
'* kzgd1_yzdh -- 原帐单号
'* kzgd1_jsrq -- 结算日期
'* kzgd1_jssj -- 结算时间
'* kzgd1_czbj -- 冲正标记
'**************************************************************************************************
Public Sub CT_KZGD1(kzgd1_lsk As String, kzgd1_czh As String, kzgd1_lbk As String, kzgd1_yjsmc As String, kzgd1_yfkmc As String, kzgd1_dfzh As String, kzgd1_hzk As String, kzgd1_r2 As String, kzgd1_r5 As String, kzgd1_yjsr As Date, kzgd1_yzdh As String, kzgd1_jsrq As Date, kzgd1_jssj As String, kzgd1_czbj As String)
Dim kzgd1_bz As String
If kzgd1_czbj = "1" Then
kzgd1_bz = "冲" & kzgd1_yjsr & ":" & Trim(kzgd1_yzdh) & "帐"
Else
kzgd1_bz = "补记" & dtoc(kzgd1_yjsr) & "帐"
End If
LOCAL_data.Execute "DELETE FROM CT_ZYGD "
LOCAL_data.Execute "INSERT INTO CT_ZYGD SELECT * FROM " & Trim(kzgd1_lsk)
LOCAL_data.Execute "UPDATE CT_ZYGD SET JH_FT='0', GWDM='" & SYS_GWDM & "', GWMC='" & SYS_GWMC & "',ZDH='" & Trim(kzgd1_czh) & "',BZ='" & TRM(kzgd1_bz) & "',JSSJ='" & Trim(kzgd1_jssj) & "',JSRQ=#" & kzgd1_jsrq & "#"
PUB_data.Execute "INSERT INTO " & Trim(kzgd1_TZGD) & " SELECT * FROM CT_ZYGD IN '" & Trim(SYS_LOCALBASE) & "'"
LOCAL_data.Execute "DELETE FROM CT_ZYGD "
Dim lbk_rec As Recordset
Set lbk_rec = LOCAL_data.OpenRecordset("", 4, 0, 2)
If Not lbk_rec.BOF Then
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -