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

📄 frmvoucherno.frm

📁 金算盘软件代码
💻 FRM
字号:
VERSION 5.00
Object = "{5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0"; "MSFLXGRD.OCX"
Begin VB.Form frmvoucherNo 
   Caption         =   "凭证编号查询"
   ClientHeight    =   4410
   ClientLeft      =   45
   ClientTop       =   330
   ClientWidth     =   6285
   LinkTopic       =   "Form1"
   ScaleHeight     =   4410
   ScaleWidth      =   6285
   StartUpPosition =   2  '屏幕中心
   Begin VB.ListBox lischa 
      Height          =   3840
      Left            =   120
      TabIndex        =   9
      Top             =   420
      Width           =   4785
   End
   Begin VB.CommandButton CmdPrint 
      Height          =   350
      Left            =   5010
      Picture         =   "frmVoucherNo.frx":0000
      Style           =   1  'Graphical
      TabIndex        =   8
      Top             =   990
      UseMaskColor    =   -1  'True
      Width           =   1215
   End
   Begin VB.CommandButton cmdOK 
      Default         =   -1  'True
      Height          =   345
      Left            =   5010
      Picture         =   "frmVoucherNo.frx":087A
      Style           =   1  'Graphical
      TabIndex        =   7
      Top             =   480
      UseMaskColor    =   -1  'True
      Width           =   1215
   End
   Begin MSFlexGridLib.MSFlexGrid MSFlexGrid1 
      Height          =   24
      Left            =   3432
      TabIndex        =   6
      Top             =   2568
      Width           =   84
      _ExtentX        =   132
      _ExtentY        =   53
      _Version        =   65541
   End
   Begin VB.VScrollBar VSc2 
      Height          =   252
      Left            =   2130
      Max             =   13
      Min             =   1
      TabIndex        =   5
      Top             =   90
      Value           =   5
      Width           =   204
   End
   Begin VB.VScrollBar VSc1 
      Height          =   252
      Left            =   1050
      Max             =   2050
      Min             =   1950
      TabIndex        =   4
      Top             =   90
      Value           =   1990
      Width           =   180
   End
   Begin VB.TextBox txtmonth 
      Height          =   264
      Left            =   1896
      TabIndex        =   3
      Text            =   " "
      Top             =   90
      Width           =   252
   End
   Begin VB.TextBox txtyear 
      Height          =   264
      Left            =   600
      TabIndex        =   2
      Text            =   " "
      Top             =   90
      Width           =   468
   End
   Begin VB.Label lab2 
      Caption         =   "期间"
      Height          =   255
      Left            =   1485
      TabIndex        =   1
      Top             =   120
      Width           =   375
   End
   Begin VB.Label lab1 
      Caption         =   "年度"
      Height          =   255
      Left            =   195
      TabIndex        =   0
      Top             =   120
      Width           =   375
   End
End
Attribute VB_Name = "frmvoucherNo"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'凭证缺号查询
'作者:诸涛
Dim Year1 As Integer, Month1 As Integer
Dim bz As Boolean
Dim sDate As Date, eDate As Date
Private Sub cmdOk_Click()
    Unload Me
End Sub
Private Sub Form_Load()
    Year1 = gclsBase.FYearOfDate(Date)
    Month1 = gclsBase.PeriodOfDate(Date)
    bz = True
    VSc1.Value = Year1
    VSc2.Value = Month1
End Sub
Private Sub VSc1_Change()
    Year1 = VSc1.Value
    txtyear.Text = Year1
    lischa.Clear
    sDate = 0
    eDate = 0
    Call gclsBase.DateOfPeriod(Year1, Month1, sDate, eDate)
    sqlrecmaxno Year1, Month1
End Sub

Private Sub VSc2_Change()
    Month1 = VSc2.Value
    txtmonth.Text = Month1
    If bz = True Then
        bz = False
        GoTo endpiont
    End If
    lischa.Clear
    sDate = 0
    eDate = 0
    Call gclsBase.DateOfPeriod(Year1, Month1, sDate, eDate)
    sqlrecmaxno Year1, Month1
endpiont:
End Sub
'取凭证类型,名称,最大号
Private Sub sqlrecmaxno(Year1, Month1)
    Dim recYearm As Recordset
    Dim recTypeid As Recordset
    Dim str As String
    Dim lngVoucherTypeID1 As Long
    Dim lngReceiptNO1 As Long
    Dim strTypeName As String
    Dim sum1 As Integer, Sum2 As Integer
        Set recTypeid = gclsBase.BaseDB.OpenRecordset("SELECT lngVoucherTypeID,strVoucherTypeName,blnIsInActive FROM VoucherType WHERE blnIsInActive=False ", dbOpenSnapshot)
        If recTypeid Is Nothing Or recTypeid.RecordCount <= 0 Then
            MsgBox "凭证类型表为空,请先输入  "
            Exit Sub
        End If
        sum1 = 1
        Sum2 = 0
        With recTypeid
        .MoveFirst
        Do Until .EOF
            lngVoucherTypeID1 = !lngVoucherTypeID
            strTypeName = !strVoucherTypeName
            strTypeName = Trim(strTypeName)
            str = "intYear=" & Year1 & " and  bytPeriod=" & Month1 & " and clng(strReceiptNO)=" & lngVoucherTypeID1 & " and  lngReceiptTypeID=41 "
            Set recYearm = gclsBase.BaseDB.OpenRecordset("SELECT * from receiptMaxNO where " & str, dbOpenSnapshot)
            If recYearm Is Nothing Or recYearm.RecordCount <= 0 Then
                Sum2 = Sum2 + 1
                GoTo EndPoint
            End If
            With recYearm
                .MoveFirst
                lngReceiptNO1 = !lngReceiptNo
            End With
            lischa.AddItem "(" & sum1 & ")" & strTypeName & "            最大编号:" & lngReceiptNO1
            sum1 = sum1 + 1
            sqlVoucher lngVoucherTypeID1, lngReceiptNO1
            lischa.AddItem "------------------------------------------------------"
EndPoint:
            .MoveNext
        Loop
        If recTypeid.RecordCount = Sum2 Then
             MsgBox "此年度,期间的凭证在最大编号表中未登记"
        End If
        End With
        recYearm.Close
End Sub
'缺号查询
Private Sub sqlVoucher(ByVal lngVoucherTypeID1 As Long, ByVal lngReceiptNO1 As Long)
     Dim recNo As Recordset
     Dim str1 As String
     Dim I As Integer
     Dim strfg1 As String
     Dim a As Integer, b As Integer, c As Integer, d As Integer
     Dim bz1 As Boolean, bz2 As Boolean, bz3 As Boolean, bz4 As Boolean
        str1 = "cdate(strDate)>=#" & sDate & "#" & " and cdate(strDate)<=#" & eDate & "#" & " and lngVoucherTypeID=" & lngVoucherTypeID1
        Set recNo = gclsBase.BaseDB.OpenRecordset("SELECT intVoucherNO,blnIsVoid FROM voucher WHERE " & str1, dbOpenSnapshot)
        bz1 = True
        bz2 = False
        bz3 = True
        bz4 = False
        With recNo
        For I = 1 To CInt(lngReceiptNO1)
            .FindFirst "intVoucherNO = " & I
             If .NoMatch Then
                 If bz4 Then
                            If c = d Then
                                strfg1 = "                             作废:" & c
                            Else
                                strfg1 = "                             作废:" & c & "~" & d
                            End If
                            lischa.AddItem strfg1
                            bz4 = False
                 End If
                 If bz1 Then '第一次进入
                    a = I
                    b = I
                    bz1 = False
                    bz2 = True
                 Else
                    If (b = I - 1) And (b <> (lngReceiptNO1 - 1)) Then
                        b = I '如果连号
                    ElseIf b = lngReceiptNO1 - 1 Then '连号如果为最后记录
                        b = I
                        strfg1 = "                             缺号:" & a & "~" & b
                        lischa.AddItem strfg1
                        bz2 = False
                    Else '不连号进入
                        If bz2 Then
                            If a = b Then
                                strfg1 = "                             缺号:" & a
                            Else
                                strfg1 = "                             缺号:" & a & "~" & b
                            End If
                            lischa.AddItem strfg1
                        End If
                        a = I
                        b = I
                        If I = lngReceiptNO1 Then '不连号最后记录
                            strfg1 = "                             缺号:" & a
                            lischa.AddItem strfg1
                            bz2 = False
                        Else: bz2 = True
                        End If
                        
                    End If
                 End If
            Else
                If !blnIsVoid Then
                    If bz2 Then
                        If a = b Then
                            strfg1 = "                             缺号:" & a
                        Else
                            strfg1 = "                             缺号:" & a & "~" & b
                        End If
                        lischa.AddItem strfg1
                        bz2 = False
                    End If
                    If bz3 Then
                        c = I
                        d = I
                        bz3 = False
                        bz4 = True
                    Else
                        If (d = I - 1) And (d <> (lngReceiptNO1 - 1)) Then
                            d = I
                        ElseIf d = lngReceiptNO1 - 1 Then
                            d = I
                            strfg1 = "                             作废:" & c & "~" & d
                            lischa.AddItem strfg1
                            bz4 = False
                        Else
                            If bz4 Then
                                If c = d Then
                                    strfg1 = "                             作废:" & c
                                Else: strfg1 = "                             作废:" & c & "~" & d
                                End If
                                lischa.AddItem strfg1
                            End If
                            c = I
                            d = I
                            If I = lngReceiptNO1 Then
                               strfg1 = "                             作废:" & c
                               lischa.AddItem strfg1
                               bz4 = False
                            Else: bz4 = True
                            End If
                        End If
                    End If
                End If
            End If
          
        Next I
        If bz2 Then
            If a = b Then
              strfg1 = "                             缺号:" & a
            Else
              strfg1 = "                             缺号:" & a & "~" & b
            End If
            lischa.AddItem strfg1
        End If
        If bz4 Then
            If c = d Then
                strfg1 = "                             作废:" & c
            Else
                strfg1 = "                             作废:" & c & "~" & d
            End If
            lischa.AddItem strfg1
        End If
        End With
endpiont:
        recNo.Close
End Sub

⌨️ 快捷键说明

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