⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pub_ct.bas

📁 该系统为酒店日常管理提供了很大的方便
💻 BAS
📖 第 1 页 / 共 3 页
字号:
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 + -