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

📄 ct_cpwh.frm

📁 该系统为酒店日常管理提供了很大的方便
💻 FRM
📖 第 1 页 / 共 4 页
字号:
      Width           =   11475
   End
End
Attribute VB_Name = "ct_cpwh"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Dim i As Integer
Dim key_index As Integer  '表示当前功能键的代码
Dim flex_rec As Recordset '

Dim t_funcNo As String    '0:增加记录  1:修改记录

Dim t_bt As String       '存储列表显示的表头
Dim t_fields As Variant  '存储列表显示的字段名
Dim t_fdxs As Variant    '显示列是否有特殊处理    0 无, 1 有
Dim t_fdcounts As Integer   '表示列表所显示的字段的个数

Dim t_czlsh As String

'**************************************************************************************************
'*  功    能 : 用来设置各种控件 .edabled 的设置
'*  作    者 : 梁卫
'*  作成日期 : 1999.03.03
'*  修改日期 : 1999.03.03
'*  参数说明 : temp_funcNo  --  表示编辑状态   '0' - 增加  '1' - 修改  '2' - 删除
'*             temp_ft      --  表示控件 .Enabled 的状态   True False
'**************************************************************************************************
Private Sub tPkjEnabledFT(temp_funcNo As String, temp_ft As Boolean)     '控件.enabled 的设置
    Select Case temp_funcNo
    Case "0"        '增加
        cm_zlbdma.Enabled = True
        m_xh.Enabled = False
    Case "1", "2"   '修改, 删除
        cm_zlbdma.Enabled = True
        m_xh.Enabled = True
    Case Else
        cm_zlbdma.Enabled = False
        m_xh.Enabled = False
    End Select
    
    m_bhb.Enabled = temp_ft
    m_zwmc.Enabled = temp_ft
    m_ywmc.Enabled = temp_ft
    m_jldw.Enabled = temp_ft
    m_dj.Enabled = temp_ft
    op_djsr_ft(0).Enabled = temp_ft
    op_djsr_ft(1).Enabled = temp_ft
    op_sj_ft(0).Enabled = temp_ft
    op_sj_ft(1).Enabled = temp_ft
    If op_sj_ft(1).Value And op_sj_ft(1).Enabled Then
        m_sjc.Enabled = True
    Else
        m_sjc.Enabled = False
    End If

End Sub

'**************************************************************************************************
'*  功    能 : 用来设置各种控件赋值
'*  作    者 : 梁卫
'*  作成日期 : 1999.03.05
'*  修改日期 : 1999.03.05
'*  参数说明 : temp_rec  --  显示的记录集名称
'*             trmp_bszt --  表示字段按何方式显示  0 - 把字段清空  1 - 按记录集显示字段  2 - 字段初始化
'**************************************************************************************************
Private Sub tPkjTextSet(temp_rec As Recordset, temp_bszt As String)

    Select Case temp_bszt
    Case 0            '把字段清空
'        cm_zlbdma.Text = Null
        lb_zlbmc_zw.Caption = ""
        m_xh.Text = ""
        m_bhb.Text = ""
        m_zwmc.Text = ""
        m_ywmc.Text = ""
        m_jldw.Text = ""
        m_dj.Text = ""
        op_djsr_ft(0).Value = False
        op_djsr_ft(1).Value = False
        op_sj_ft(0).Value = False
        op_sj_ft(1).Value = False
        m_sjc.Text = 0
        m_lbdma.Text = ""
        m_scsl.Text = 0
        m_dysj.Text = ""
        
    Case 2            '把字段初始化
'        cm_zlbdma.Text = ""
        lb_zlbmc_zw.Caption = ""
        m_xh.Text = "00"
        m_bhb.Text = ""
        m_zwmc.Text = ""
        m_ywmc.Text = ""
        m_jldw.Text = ""
        m_dj.Text = 0
        op_djsr_ft(0).Value = True
        op_sj_ft(0).Value = True
        m_sjc.Text = 0
        m_lbdma.Text = ""
        m_scsl.Text = 0
        m_dysj.Text = ""
    
    Case 1       '按记录集给字段赋值
        With temp_rec
            cm_zlbdma.Text = Left(Trim(.Fields("BHA")), 2)
            
            Dim zllba_rec As Recordset
            Set zllba_rec = PUB_data.OpenRecordset("SELECT ZLBMC_ZW FROM ZLLBA WHERE TRIM(GWDM)='" & SYS_GWDM & "' AND TRIM(ZLBDMA)='" & Trim(cm_zlbdma.Text) & "'", 4, 0, 2)
            If Not zllba_rec.BOF Then
                zllba_rec.MoveLast
                lb_zlbmc_zw.Caption = Trim(zllba_rec.Fields("ZLBMC_ZW"))
            Else
                lb_zlbmc_zw.Caption = ""
            End If
            zllba_rec.Close
            
            m_xh.Text = RIGHT(Trim(.Fields("BHA")), 2)
            m_bhb.Text = Trim(.Fields("BHB"))
            m_zwmc.Text = Trim(.Fields("ZWMC"))
            m_ywmc.Text = Trim(.Fields("YWMC"))
            m_jldw.Text = Trim(.Fields("JLDW"))
            m_dj.Text = Format(.Fields("DJ"), "#,##0.00")
            m_lbdma.Text = Trim(.Fields("LBDMA"))
            m_scsl.Text = Trim(.Fields("SCSL"))
            m_dysj.Text = Trim(.Fields("DYSJ"))
            If .Fields("DJSR_FT") Then
                op_djsr_ft(1).Value = True
            Else
                op_djsr_ft(0).Value = True
            End If
            If .Fields("SJ_FT") Then
                op_sj_ft(1).Value = True
            Else
                op_sj_ft(0).Value = True
            End If
            m_sjc.Text = .Fields("SJC")
    
        End With
    End Select
End Sub


'**************************************************************************************************
'*  功    能 : 用来给字段赋值
'*  作    者 : 梁卫
'*  作成日期 : 1999.03.05
'*  修改日期 : 1999.03.05
'*  参数说明 : temp_rec  --  显示的记录集名称
'*             trmp_funcNo --  表示编辑状态        '0' - 增加    '1' - 修改
'**************************************************************************************************
Private Sub tPkjFieldGet(temp_rec As Recordset, temp_funcNo As String)
    Dim zllba_rec As Recordset
    
    With temp_rec
        .Fields("BHB") = Trim(m_bhb.Text)
        .Fields("ZWMC") = IIf(Trim(m_zwmc.Text) = "", "*", Trim(m_zwmc.Text))
        .Fields("YWMC") = IIf(Trim(m_ywmc.Text) = "", "*", Trim(m_ywmc.Text))
        .Fields("JLDW") = IIf(Trim(m_jldw.Text) = "", "*", Trim(m_jldw.Text))
        .Fields("DJ") = CDec(m_dj.Text)
        .Fields("FSRQ") = Format(Date, "YYYY-MM-DD")
        .Fields("FSSJ") = Format(Time(), "HH:MM:SS")
        .Fields("CZY") = SYS_USER
        .Fields("DJSR_FT") = IIf(op_djsr_ft(0).Value, "0", "1")
        .Fields("SJ_FT") = IIf(op_sj_ft(0).Value, "0", "1")
        .Fields("SJC") = CInt(m_sjc.Text)
    
        If temp_funcNo = "0" Then
            .Fields("LOCK_NO") = 0
            .Fields("SCSL") = 0
            .Fields("DYSJ") = "*"
            Set zllba_rec = PUB_data.OpenRecordset("SELECT LBDMA FROM ZLLBA WHERE TRIM(ZLBDMA)='" & Trim(cm_zlbdma.Text) & "'", 4, 0, 2)
            If Not zllba_rec.BOF Then
                zllba_rec.MoveLast
                .Fields("LBDMA") = Trim(zllba_rec.Fields("LBDMA"))
            Else
                .Fields("LBDMA") = "*"
            End If
            zllba_rec.Close
        Else
            .Fields("LBDMA") = Trim(m_lbdma.Text)
            .Fields("SCSL") = m_scsl.Text
            .Fields("DYSJ") = Trim(m_dysj.Text)
        End If
    End With

End Sub

'**************************************************************************************************
'*  功    能 :
'*  作    者 : 梁卫
'*  作成日期 : 1999.02.25
'*  修改日期 : 1999.02.25
'**************************************************************************************************
Private Sub button_refresh(t_ft As Boolean)
    cmd_ok(0).Enabled = Not t_ft
    cmd_ok(1).Enabled = Not t_ft
    cmd_func(4).Enabled = t_ft
    cmd_func(5).Enabled = t_ft
    cmd_func(0).Enabled = t_ft
    
    If flex_rec.RecordCount <> 0 Then
        cmd_func(1).Enabled = t_ft
        cmd_func(2).Enabled = t_ft
        cmd_func(3).Enabled = t_ft
    Else
        cmd_func(1).Enabled = False
        cmd_func(2).Enabled = False
        cmd_func(3).Enabled = False
    End If
    
    ct_cpwh.KeyPreview = t_ft
End Sub

'**************************************************************************************************
'*  功    能 :
'*  作    者 : 梁卫
'*  作成日期 : 1999.02.25
'*  修改日期 : 1999.02.25
'**************************************************************************************************
Private Sub flex_refresh()
    Call Flex_full(gd1, t_bt, flex_rec, t_fields, t_fdcounts - 1, t_fdxs)
    lb_jls.Caption = gd1.Rows - 1
    
    Call button_refresh(True)
End Sub

'**************************************************************************************************
'*  功    能 :
'*  作    者 : 梁卫
'*  作成日期 : 1999.02.25
'*  修改日期 : 1999.02.25
'**************************************************************************************************
Sub MAIN(t_gnmc As String)
   Label1.Caption = t_gnmc
   JZ_USER = SYS_USER + Space(1) + SYS_NAME
   JZ_JRSJ2 = Time()
   JZ_DQSJ2 = Time()
End Sub


Private Sub cm_zlbdma_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = vbKeyReturn Then
        Select Case t_funcNo
        Case "0"
            m_bhb.SetFocus
        Case Else
            m_xh.SetFocus
        End Select
    End If
End Sub

Private Sub cm_zlbdma_LostFocus()
    Dim zllba_rec As Recordset
    
    frm_msg.Visible = False
    frm_msg.Caption = ""
    If Trim(cm_zlbdma.Text) = "" Then
        frm_msg.Visible = True
        frm_msg.Caption = "请选择子类别代码"
        cm_zlbdma.SetFocus
    Else
        Set zllba_rec = PUB_data.OpenRecordset("SELECT ZLBMC_ZW FROM ZLLBA WHERE TRIM(GWDM)='" & SYS_GWDM & "' AND TRIM(ZLBDMA)='" & Trim(cm_zlbdma.Text) & "'", 4, 0, 2)
        If Not zllba_rec.BOF Then
            zllba_rec.MoveLast
            lb_zlbmc_zw.Caption = Trim(zllba_rec.Fields("ZLBMC_ZW"))
        Else
            lb_zlbmc_zw.Caption = ""
        End If
        zllba_rec.Close
    End If
End Sub

'**************************************************************************************************
'*  功    能 :
'*  作    者 : 梁卫
'*  作成日期 : 1999.02.25
'*  修改日期 : 1999.02.25
'**************************************************************************************************
Private Sub CMD_EXIT_Click()
    flex_rec.Close
    Unload Me
End Sub

'**************************************************************************************************
'*  功    能 :
'*  作    者 : 梁卫
'*  作成日期 : 1999.02.25
'*  修改日期 : 1999.02.25
'**************************************************************************************************
Private Sub cmd_ok_Click(Index As Integer)
    Dim bha_rec As Recordset  'SYS_GWDM & '_MENU' 中的最大序号
    Dim i As Integer
    Dim j As Integer
    Dim temp_bh As String
    Dim temp_ft As Boolean
    Dim menu_rec As Recordset
    Dim temp_lock As Integer

    frm_msg.Visible = False
    frm_msg.Caption = ""
    
    Select Case Index
    Case 0    '按"确定"键
            
            '修改和增加时校验字段合法性
            If t_funcNo = "0" Or t_funcNo = "1" Then
                Select Case t_funcNo
                Case "0"    '增加
                    Set menu_rec = PUB_data.OpenRecordset("SELECT * FROM " & SYS_GWDM & "_MENU WHERE TRIM(BHB)='" & Trim(m_bhb.Text) & "'", 4, 0, 2)
                Case "1"    '修改
                    Set menu_rec = PUB_data.OpenRecordset("SELECT * FROM " & SYS_GWDM & "_MENU WHERE TRIM(BHB)='" & Trim(m_bhb.Text) & "' AND TRIM(BHA)<>'" & Trim(cm_zlbdma.Text) & Trim(m_xh.Text) & "'", 4, 0, 2)
                End Select
                
                If Not menu_rec.BOF Then
                    menu_rec.MoveLast
                    menu_rec.Close
                    
                    frm_msg.Visible = True
                    frm_msg.Caption = "菜牌表中已存在此种简拼, 请另换一种简拼"
                    
                    m_bhb.SetFocus
                    Exit Sub
                End If
                menu_rec.Close
                
                '若为按时间计费时
                If op_sj_ft(1) Then
                    temp_ft = True
                    If PUB_SZJY(m_jldw, frm_msg) Then
                        If CInt(m_jldw.Text) <= 0 Then
                            temp_ft = False
                        End If
                    Else
                        temp_ft = False
                    End If
                    If Not temp_ft Then
                        op_sj_ft(0).Value = True
                        frm_msg.Visible = True
                        frm_msg.Caption = "计量单位不适当"
                        m_jldw.SetFocus
                        m_sjc.Enabled = False
                        Exit Sub
                    End If
                
                    If PUB_SZJY(m_sjc, frm_msg) Then
                        If CDec(m_sjc.Text) >= CInt(m_jldw.Text) Then
                            frm_msg.Visible = True
                            frm_msg.Caption = "时间差为应该小于计量单位"
                            m_sjc.SetFocus
                            Exit Sub
                        End If
                    End If
                End If
            End If
            
            Select Case t_funcNo
            Case "0"   '增加记录
                    Set menu_rec = PUB_data.OpenRecordset("SELECT * FROM " & SYS_GWDM & "_MENU", 2, 0, 2)
                    If Not menu_rec.BOF Then
                        menu_rec.MoveLast
                    End If
    
                    t_czlsh = Pub_czls(PUB_data, "CT_CPWH", Time(), pub_code)
                    menu_rec.AddNew
                        '生成不重复的菜牌编号
                        temp_ft = False
                        Set bha_rec = PUB_data.OpenRecordset("SELECT * FROM " & SYS_GWDM & "_MENU", 4, 0, 2)
                        For i = 1 To 99
                            temp_bh = Trim(cm_zlbdma.Text) & RIGHT("00" & Trim(Str(i)), 2)
                            bha_rec.FindFirst "TRIM(BHA)='" & Trim(temp_bh) & "'"
                            If bha_rec.NoMatch Then
                                temp_ft = True
                                Exit For
                            End If
                        Next
                        If Not temp_ft Then
                            For i = 1 To 9
                                For j = Asc("A") To Asc("Z")
                                    temp_bh = Trim(cm_zlbdma.Text) & Trim(Str(i)) & Trim(Chr(j))
                                    bha_rec.FindFirst "TRIM(BHA)='" & Trim(temp_bh) & "'"
                                    If bha_rec.NoMatch Then
                                        temp_ft = True
                                        Exit For
                                    End If
                                Next
                            Next
                        End If
                        bha_rec.Close
                        If Not temp_ft Then
                            '编号超出系统最大值
                            frm_msg.Visible = True
                            frm_msg.Caption = "字类别:" & Trim(cm_zlbdma.Text) & " 的编号已超出系统的最大值, 请与微机室人员联系"
                            Exit Sub
                        End If
                        
                        menu_rec.Fields("BHA") = Trim(temp_bh)
                        tPkjFieldGet menu_rec, "0"       '给各字段赋值
                    
                    menu_rec.Update
                    Call Pub_czle(PUB_data, t_czlsh, SYS_GWMC & "餐厅 编号:" & Trim(cm_zlbdma.Text) & Trim(m_xh.Text) & " 增加成功", Time(), pub_code)
                    menu_rec.Close
        
                    frm_msg.Visible = True
                    frm_msg.Caption = SYS_GWMC & "编号:" & Trim(cm_zlbdma.Text) & Trim(m_xh.Text) & " 增加成功"
        
                    Call flex_refresh

            Case "1", "2"        '修改和删除记录
                    Set menu_rec = PUB_data.OpenRecordset("SELECT * FROM " & SYS_GWDM & "_MENU WHERE TRIM(BHA)='" & Trim(cm_zlbdma.Text) & Trim(m_xh.Text) & "'", 2, 0, 2)
                    If Not menu_rec.BOF Then
                        menu_rec.MoveLast
            
                        temp_lock = Pub_lock("PUBLIC", SYS_GWDM & "_MENU", menu_rec)
                        Select Case temp_lock
                        Case 0
                            frm_msg.Visible = True
                            frm_msg.Caption = "该编号菜牌正被其他人占用, 请稍候再修改"
                            Call button_refresh(True)
                        Case 2
                            Call Pub_UNlock(SYS_GWDM & "_MENU", menu_rec)
                            frm_msg.Visible = True

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -