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

📄 frmexpense.frm

📁 金算盘软件代码
💻 FRM
📖 第 1 页 / 共 5 页
字号:
            AutoSize        =   -1  'True
            Caption         =   "药品支出(&F)"
            Height          =   180
            Index           =   4
            Left            =   1590
            TabIndex        =   11
            Top             =   825
            Width           =   990
         End
         Begin VB.Label lblNote 
            AutoSize        =   -1  'True
            Caption         =   "比例           %"
            Height          =   180
            Index           =   2
            Left            =   5670
            TabIndex        =   9
            Top             =   405
            Width           =   1440
         End
         Begin VB.Label lblNote 
            AutoSize        =   -1  'True
            Caption         =   "医疗支出(&E)"
            Height          =   180
            Index           =   1
            Left            =   1590
            TabIndex        =   7
            Top             =   390
            Width           =   990
         End
         Begin VB.Image imgWizard 
            BorderStyle     =   1  'Fixed Single
            Height          =   3315
            Index           =   1
            Left            =   90
            Stretch         =   -1  'True
            Tag             =   "140"
            Top             =   180
            Width           =   1335
         End
      End
      Begin VB.Frame fraWizard 
         Height          =   3585
         Index           =   0
         Left            =   75
         TabIndex        =   24
         Top             =   360
         Width           =   7320
         Begin VB.Frame fraNote 
            Caption         =   "说明"
            Height          =   1350
            Index           =   0
            Left            =   1620
            TabIndex        =   25
            Top             =   2130
            Width           =   5505
            Begin VB.Label lblNote 
               Caption         =   "    本功能用于把管理费用转入医疗支出、药品支出、在加工材料-制剂生产。"
               Height          =   405
               Index           =   3
               Left            =   675
               TabIndex        =   26
               Top             =   555
               Width           =   3975
            End
         End
         Begin ListRefer.ListText ltxtAcc1 
            Height          =   300
            Left            =   3420
            TabIndex        =   6
            Top             =   930
            Width           =   3315
            _ExtentX        =   5847
            _ExtentY        =   529
            CodeSort        =   -1  'True
            BackColor       =   -2147483643
            BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
               Name            =   "宋体"
               Size            =   9
               Charset         =   134
               Weight          =   400
               Underline       =   0   'False
               Italic          =   0   'False
               Strikethrough   =   0   'False
            EndProperty
         End
         Begin VB.Image imgWizard 
            BorderStyle     =   1  'Fixed Single
            Height          =   3315
            Index           =   0
            Left            =   90
            Stretch         =   -1  'True
            Tag             =   "140"
            Top             =   180
            Width           =   1335
         End
         Begin VB.Label lblNote 
            AutoSize        =   -1  'True
            Caption         =   "管理费用科目(&A)"
            Height          =   180
            Index           =   0
            Left            =   1935
            TabIndex        =   5
            Top             =   990
            Width           =   1350
         End
      End
   End
End
Attribute VB_Name = "frmExpense"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' 管理费用分配
' 1998.7.13
' 作者:唐维勇
'
' 过程:
'     InitStep                                                     向导每步初始化
'     ValidStep                                                    向导每步合法检查
'     Execute                                                      向导完成后需执行的操作
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Option Explicit

Private Const HelpID = 60017                                      '25002

Private mintStepNum As Integer                                    '向导总步骤
Private mintStep As Integer                                       '向导当前步骤
Private mblnEnd As Boolean                                        '完成按扭是否有效
Private mblnValid() As Boolean                                    '向导每步是否合法

Private WithEvents mclsMainControl As MainControl                 '主控对象
Attribute mclsMainControl.VB_VarHelpID = -1

Private VoucherData(2) As VoucherRecord                           '凭证结果
Private mlngFormatID As Long
Private mblnAcc22IsDetail As Boolean

Private Sub Form_Activate()
    '进入向导第一步
    If Not mblnValid(0) Then
        stabWizard.Tab = 0
        stabWizard_Click -1
    End If
    gclsSys.CurrFormName = hwnd
    SetHelpID HelpContextID
    mclsMainControl_ChildActive
End Sub

Private Sub Form_Load()
    
    Height = 5085
    width = 7740
    Me.HelpContextID = HelpID
    mlngFormatID = 41
    
    '初始凭证结构
    ReDim VoucherData(0).Detail(0)
    ReDim VoucherData(1).Detail(0)
    ReDim VoucherData(2).Detail(0)
    
    '主控对象
    Set mclsMainControl = gclsSys.MainControls.Add(Me)
    
    '向导初始化(包括每步仅需初始一次的部分)
    mintStepNum = stabWizard.Tabs - 1
    mintStep = -1
    mblnEnd = False
    ReDim mblnValid(mintStepNum)
End Sub


Private Sub Form_Resize()
    If Left < 0 Or Left > Screen.width Then Left = (Screen.width - width) / 2
End Sub

Private Sub Form_Unload(Cancel As Integer)
    On Error Resume Next

    gclsSys.MainControls.Remove Me
    Set mclsMainControl = Nothing
    
    '删除科目参照
    If Not ltxtAcc1.Recordset Is Nothing Then
        Utility.RemoveListRecordSet lrtAccount
    End If
    If Not ltxtAcc20.Recordset Is Nothing Then
        Utility.RemoveListRecordSet lrtAccount
    End If
    If Not ltxtAcc21.Recordset Is Nothing Then
        Utility.RemoveListRecordSet lrtAccount
    End If
    If Not ltxtAcc22.Recordset Is Nothing Then
        Utility.RemoveListRecordSet lrtAccount
    End If

    '删除凭证类型参照
    If Not ltxtType.Recordset Is Nothing Then
        Utility.RemoveListRecordSet lrtVoucherType
    End If
End Sub

'更新与子窗体相关的菜单项的可用性
Private Sub UpdateMenuStatus()
    With frmMain
        ' 设置MDI主窗口菜单可用标志
        .mnuEditUndo.Enabled = False
        .mnuEditCut.Enabled = False
        .mnuEditCopy.Enabled = False
        .mnuEditPaste.Enabled = False
        .mnuEditInsLine.Enabled = False
        .mnuEditDelLine.Enabled = False
        .mnuEditEdit.Enabled = False
        .mnuEditNew.Enabled = False
        .mnuEditDel.Enabled = False
        .mnuEditInActive.Enabled = False
        .mnuEditShowAll.Enabled = False
        .mnuEditShowList.Enabled = False
        .mnuEditUse.Enabled = False
        .mnuEditNotepad.Enabled = False
        .mnuEditFilter.Enabled = False
        .mnuEditColumn.Enabled = False
        .mnuFilePrintSetup.Enabled = False
        .mnuFilePrint.Enabled = False
        .mnuReportQuick.Enabled = False
        .mnuToolRefresh.Enabled = False
        .SetToolBar
    End With
End Sub



Private Sub fraWizard_Click(Index As Integer)
Debug.Print Screen.ActiveControl.Name
End Sub

Private Sub ltxtType_Choose()
    RefreshTemplate ltxtTemplate.ID
End Sub

Private Sub mclsMainControl_ChildActive()
    Dim vntMessage As Variant
    
    On Error Resume Next
    '响应消息
    If fraWizard(1).Tag = "已设置" Then
        For Each vntMessage In mclsMainControl.Messages
            Select Case vntMessage
            Case Message.msgVoucherType
                mclsMainControl.Messages.Remove CStr(vntMessage)
                RefreshVoucherType ltxtType.ID
            Case Message.msgTemplate
                mclsMainControl.Messages.Remove CStr(vntMessage)
                RefreshTemplate ltxtTemplate.ID
            Case Message.msgAccount
                mclsMainControl.Messages.Remove CStr(vntMessage)
                RefreshAccount 0
            End Select
        Next
    End If
    
    gclsSys.CurrFormName = hwnd
    UpdateMenuStatus
End Sub


Private Sub stabWizard_Click(PreviousTab As Integer)
    Dim intCnt As Integer
    
    For intCnt = 0 To stabWizard.Tabs - 1
        fraWizard(intCnt).Visible = (intCnt = stabWizard.Tab)
    Next intCnt
    
    ' 若向导进入其他步骤,进行该步骤合法检查
    If stabWizard.Tab > mintStep And mintStep < mintStepNum Then
        If ValidStep(mintStep) Then
            mintStep = stabWizard.Tab
            
            '初始向导步骤
            InitStep mintStep
            
        End If
    ElseIf mintStep <> stabWizard.Tab Then
        mintStep = stabWizard.Tab
        InitStep mintStep
        RefreshCmd
    End If
End Sub


''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'
'向导公用过程
'
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' 向导每步合法检查
Private Function ValidStep(ByVal TabIndex As Integer) As Boolean
    Dim strMsg As String, lngBottom As Integer
    
    Select Case TabIndex
    Case 0: ValidStep = ValidAccount1(strMsg)       '管理费用
    Case 1: ValidStep = ValidAccount2(strMsg)       '费用分配
    Case 2: ValidStep = ValidResult(strMsg)         '凭证预演
    Case Else
        ValidStep = True
    End Select
    
    '返回上一步
    If Not ValidStep Then
        If mintStep < stabWizard.Tab Then
            stabWizard.Tab = mintStep
        Else
            mintStep = stabWizard.Tab
            RefreshCmd
        End If
        ShowMsg hwnd, strMsg, vbExclamation + vbOKOnly, Caption
    End If
    
    '设置每步合法性
    If TabIndex <> -1 Then
        mblnValid(TabIndex) = ValidStep

⌨️ 快捷键说明

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