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

📄 ct_ybcz.frm

📁 vb不酒店管理系统
💻 FRM
📖 第 1 页 / 共 4 页
字号:
        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 + -