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

📄 frmstartperiod.frm

📁 金算盘软件代码
💻 FRM
📖 第 1 页 / 共 5 页
字号:
    clsBill.Form_MouseUp
    If Button = vbRightButton Then
        MakeListEditMenu
        clsBill.blnNotRespondKeyPress = True
        PopupMenu frmMain.mnuListEdit
        If clsBill Is Nothing Then
            blnNotRaiseEvents = False
            Exit Sub
        End If
        clsBill.blnNotRespondKeyPress = False
        blnNotRaiseEvents = True
        DoEvents
        blnNotRaiseEvents = False
    End If
End Sub

'窗体尺寸变化处理程序
Private Sub Form_Resize()
    Debug.Print "resize"
    If Me.Visible = False Then Exit Sub
    If blnNotResize Then
        blnNotResize = False
        Exit Sub
    End If
    clsBill.Form_Resize
End Sub

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    On Error Resume Next
    If gclsBase Is Nothing Then Exit Sub
    If clsBill Is Nothing Then Exit Sub
    If UnloadMode = vbFormControlMenu Then
        If blnNotRaiseEvents Then
            Cancel = 1
            gblnCancel = True
            Exit Sub
        End If
    End If
    If UnloadMode = vbFormControlMenu Then
        If clsBill Is Nothing Then Exit Sub
        clsBill.cmdButton_Click 0
    End If
    
    If Not ChangeSaveNote() Then
        Cancel = 1
        gblnCancel = True
        Exit Sub
    End If
    
    blnNotRaiseEvents = True
    Me.Visible = False
    gclsSys.MainControls.Remove Me
    frmPayableList.IAmCLosed
    Set clsLst = Nothing
    Set clsBill = Nothing
    Set mclsMainControl = Nothing      '主控对象
    Unload MsgForm
    Unload Me

End Sub

Private Sub chkPrint0_Click()
    clsBill.blnIsChanged = True
'    frmMain.mnuEditShowAll.Checked = chkPrint(0).Value
End Sub

Private Sub chkPrint1_Click()
    If blnNotRaiseClick = True Then Exit Sub
    If Not clsBill.blnChangeEvent Then
        GoTo XXXX
    End If
    If chkPrint(1).Value = 0 Then
        GoTo XXXX
    Else
        blnNotRaiseClick = True
        chkPrint(1).Value = 0
        blnNotRaiseClick = False
        
        If clsLst.BeforeDelete(True, clsBill.lngNowID, C2lng(lblHead(2).Tag), lblCaption.Caption) <> 1 Then
            Exit Sub
        End If
        If ShowMsg(Me.hWnd, "本张" & lblCaption.Caption & "保存后将不能取消作废,您确实要作废吗?", MB_YESNO + MB_ICONQUESTION + MB_DEFBUTTON2 + MB_SYSTEMMODAL, "保存单据") = vbNo Then
            Exit Sub
        End If
        
        blnNotRaiseClick = True
        chkPrint(1).Value = 1
        blnNotRaiseClick = False
XXXX:
        
        With Me.GrdCol
            RefreshRect .hWnd, .Left + (.width - 140 * Screen.TwipsPerPixelX) \ 2, .RowHeight(0) + (.Height - .RowHeight(0) - 70 * Screen.TwipsPerPixelY) \ 2, .Left + (.width - 140 * Screen.TwipsPerPixelX) \ 2 + 140 * Screen.TwipsPerPixelX, .RowHeight(0) + (.Height - .RowHeight(0) - 70 * Screen.TwipsPerPixelY) \ 2 + 70 * Screen.TwipsPerPixelY
        End With
    
    End If
    
End Sub

Private Sub chkPrint_Click(Index As Integer)
    If blnNotRaiseEvents Then Exit Sub
    clsBill.CHK_CLICK Index
    Select Case Index
        Case 0
            chkPrint0_Click
        Case 1
            chkPrint1_Click
    End Select
End Sub

Private Sub cmdButton_Click(Index As Integer)
    If blnNotRaiseEvents Then Exit Sub
    blnNotRaiseEvents = True
    clsBill.blnKeyDown = False
    If Index = 5 Then
        CmdCancel_Click
        blnNotRaiseEvents = False
        Exit Sub
    End If
    If clsBill.cmdButton_Click(Index) = False Then
        blnNotRaiseEvents = False
        Exit Sub
    End If
    Select Case Index
        Case 0
            cmdNext_Click
        Case 1
            CmdPrev_Click
        Case 2
            cmdHome_Click
        Case 3
            CmdEnd_Click
        Case 4
            If BillSave Then
                clsBill.blnIsChanged = False
                Unload Me
                Exit Sub
            End If
        Case 5
            CmdCancel_Click
            Exit Sub
        Case 6
            CmdPrint_Click
            clsBill.SetAFocus
    End Select
    blnNotRaiseEvents = True
    DoEvents
    blnNotRaiseEvents = False
End Sub

Private Sub CmdCancel_Click()
    blnNotRaiseEvents = False
    clsBill.blnIsChanged = False
    Unload Me
End Sub

Private Sub CmdEnd_Click()
    If Not ChangeSaveNote() Then Exit Sub
    Dim lngID As Long
    lngID = lngOtherBill(C2lng(lblHead(2).Tag), C2Date(lblField(2).Caption), lblField(1).Caption, 3)
    If lngID = 0 Then Exit Sub
    ShowAOldBill lngID
End Sub

Private Sub cmdHome_Click()
    If Not ChangeSaveNote() Then Exit Sub
    Dim lngID As Long
    lngID = lngOtherBill(C2lng(lblHead(2).Tag), C2Date(lblField(2).Caption), lblField(1).Caption, 2)
    If lngID = 0 Then Exit Sub
    ShowAOldBill lngID
End Sub

Private Sub cmdNext_Click()
    Dim lngID As Long
    lngID = clsBill.lngNowID
    If Not BillSave() Then Exit Sub
    Dim i As Integer
    
    If clsBill.lngNowID = 0 Then
        Exit Sub
    End If
    If lngID > 0 Then
        lngID = lngOtherBill(C2lng(lblHead(2).Tag), C2Date(lblField(2).Caption), lblField(1).Caption, 1)
    End If
    If lngID < 1 Then
        ShowANewTypeBill C2lng(lblHead(2).Tag)
        Exit Sub
    Else
        ShowAOldBill lngID
    End If
End Sub

Private Function BillSave() As Boolean
    If clsBill.blnIsChanged = False Then
        BillSave = True
        Exit Function
    End If
    
    
    Debug.Print "datavalid_begin" & Time
    If Not clsBill.DataValid Then
        BillSave = False
        Exit Function
    End If
    Debug.Print "datavalid_end" & Time
    Dim blnResult As Boolean

    If Me.Visible Then MsgForm.PleaseWait "正在保存单据,请稍候…… "
    
    blnNotRaiseEvents = True
    If clsBill.lngNowID = 0 Then
        blnResult = SaveNewBill()
    Else
        If clsBill.blnMayChange Then
            If BillPublic.lngActivityIsSelected(clsBill.lngNowID, "修改", Me.hWnd) = 0 Then
                blnResult = SaveModifyBill(clsBill.lngNowID)
            Else
                blnResult = False
            End If
        Else  '不可修改的旧单据
            Dim strSql As String
            strSql = "UPDATE ItemActivity SET blnIsPrint=" & IIf(chkPrint(0).Value = 0, 0, 1) & _
                    " WHERE lngActivityID=" & clsBill.lngNowID
            blnResult = gclsBase.ExecSQL(strSql)
        End If
    End If
        
    BillSave = blnResult
    If blnResult Then
        clsBill.blnIsChanged = False
    End If
    Debug.Print "saveEnd<" & Time

    Screen.MousePointer = vbDefault
    blnNotRaiseEvents = False
    Unload MsgForm
End Function

Private Sub CmdPrev_Click()
    If Not ChangeSaveNote() Then Exit Sub
    Dim lngID As Long
    Dim i As Integer
'    For i = 0 To 3
'        cmdButton(i).Enabled = True
'    Next
    lngID = lngOtherBill(C2lng(lblHead(2).Tag), C2Date(lblField(2).Caption), lblField(1).Caption, 0)
'    If lngID = 0 Then
'        cmdButton(2).Enabled = False
'        cmdButton(1).Enabled = False
'        Exit Sub
'    End If
    If lngID <> 0 Then
        ShowAOldBill lngID
    End If
End Sub

Private Sub GrdCol_RowColChange()
    clsBill.GrdCol_RowColChange
End Sub

Private Sub mclsMainControl_EditCopy()
   mclsMainControl_ListEditMenu (3)
End Sub

Private Sub mclsMainControl_EditPaste()
   mclsMainControl_ListEditMenu (4)
End Sub

Private Sub mclsMainControl_FilePrint()
    CmdPrint_Click
End Sub
Private Sub mclsMainControl_FilePrintReceipt()
    If clsBill.lngNowID > 0 Then
        If clsBill.blnIsChanged Then
            If BillSave() = False Then Exit Sub
        End If
    End If
    PrintReceipt C2lng(lblHead(2).Tag)
End Sub


Private Sub CmdPrint_Click()
    Dim blnT As Boolean
    Dim intReturn As Integer
    Dim strMsg As String
    On Error Resume Next
    If clsBill.lngNowID = 0 And clsBill.blnIsChanged = False Then
        ShowMsg Me.hWnd, "单据为空,没有可打印信息!", MB_OK + MB_ICONEXCLAMATION + MB_SYSTEMMODAL, "打印单据"
        Exit Sub
    End If
    If clsBill.blnIsChanged Then
        If Len(Trim(lblField(1).Caption)) = 0 Then
            strMsg = "该张" & lblCaption.Caption & "数据已经发生改变,是否需要保存?"
        Else
            strMsg = "“" & lblField(1).Caption & "”号" & lblCaption.Caption _
                & "数据已经发生改变,是否需要保存?"
        End If
'        intReturn = ShowMsg(Me.hwnd, strMsg, MB_YESNOCANCEL + MB_DEFBUTTON1 _
            + MB_ICONQUESTION + MB_SYSTEMMODAL, "打印单据")
'        If intReturn = IDYES Then
            blnT = BillSave()
            If blnT Then
                ShowAOldBill clsBill.lngNowID
            End If

'        End If
    Else
        blnT = True
    End If
    If blnT = False Then
        Exit Sub
    End If
    
    Dim myPrintclass As New PrintClass
    If myPrintclass.PrintReceipt(gclsBase.BaseDB, C2lng(ReceiptTypeID), C2lng(lblHead(2).Tag), CStr(clsBill.lngNowID), clsBill.PrintSetupID, BillRePrintRight(C2lng(lblHead(2).Tag))) Then
'        blnPrinted = True
'        If clsBill.blnMayChange = True And BillRePrintRight(C2lng(lblHead(2).Tag), True) = False Then
'            clsBill.blnMayChange = False
'        End If
'        If cmdButton(6).Enabled And BillRePrintRight(C2lng(lblHead(2).Tag)) = False Then
'            cmdButton(6).Enabled = False
'        End If
'        If WanNeng Then
'            tblReceipt.Buttons(7).Enabled = cmdButton(6).Enabled
'        End If
'        clsBill.UpdateMainEditMenu
    End If
    Set myPrintclass = Nothing
    If frmMain.ActiveForm.Name <> Me.Name Then
        If Me.Visible = False Then Me.Visible = True
        Me.ZOrder 0
    End If
    If cmdButton(6).Enabled And cmdButton(6).Visible Then
        cmdButton(6).SetFocus
    Else
        clsBill.SetAFocus
    End If
End Sub

Private Sub CmdReceive_Click()
    With FrmPayment
        .Show
        .ZOrder
    End With
End Sub

'Private Sub cmdVoucher_Click()
'    ShowMsg Me.hwnd, "Voucher", MB_OK
'End Sub

Private Sub Form_Activate()
    Debug.Print "activate"
    ResponseMessage
    SetHelpID C2lng(Me.HelpContextID)
    gclsSys.CurrFormName = Me.hWnd
    clsBill.UpdateMainEditMenu
    If blnFirstIn Then
        blnFirstIn = False
'        clsBill.SetAFocus
        Exit Sub
    End If
    '--------WAIT WINDOWS---------
    If (Me.Left + Me.width) < 0 Or Me.Left > Screen.width Then
        Me.Left = 300
    End If
    '--------------------------------------
    If lblHead(4).Tag = "" Or lblHead(4).Tag = "0" Then
        lblHead(4).Tag = 1
        IdToCodeAndName xTemplatE, C2lng(lblHead(4).Tag), " ", lblHead(5).Caption
    End If
    Form_Resize
End Sub

Private Sub Form_Deactivate()
    frmMain.SetEditUnEnabled
End Sub

Private Sub GrdCol_Mouseup(Button As Integer, Shift As Integer, x As Single, y As Single)
    If blnNotRaiseEvents Then Exit Sub
    blnNotRaiseEvents = True
    clsBill.GrdCol_Mouseup Button, Shift, x, y
    MakeListActivityMenu
    If Button = vbRightButton Then
        clsBill.blnNotRespondKeyPress = True
        PopupMenu frmMain.mnuListActivity
        If clsBill Is Nothing Then
            blnNotRaiseEvents = False
            Exit Sub
        End If
        clsBill.blnNotRespondKeyPress = False
    End If
    blnNotRaiseEvents = True
    DoEvents
    blnNotRaiseEvents = False
End Sub

Private Sub grdCol_Scroll()
    clsBill.grdCol_Scroll
End Sub

⌨️ 快捷键说明

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