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

📄 mdlinitialize.bas

📁 一个用VB写的财务软件源码
💻 BAS
📖 第 1 页 / 共 3 页
字号:
    '设置行业表、行业科目类型表、行业科目代码表记录
    Call TransferTradeAndSubject(cnnCreate)
    
    glo.frmProg.ShowProgress 65
    glo.frmProg.SetMsg "正在设置凭证种类表的记录..."
    '预设凭证类型表记录
    ReDim sValues(13)
    sValues(1) = "1,'记',1,'记账凭证'"
    sValues(2) = "2,'收',1,'收款凭证'"
    sValues(3) = "2,'付',2,'付款凭证'"
    sValues(4) = "2,'转',3,'转账凭证'"
    sValues(5) = "3,'现',1,'现金凭证'"
    sValues(6) = "3,'银',2,'银行凭证'"
    sValues(7) = "3,'转',3,'转账凭证'"
    sValues(8) = "4,'01',1,'现金收款凭证'"
    sValues(9) = "4,'02',2,'现金付款凭证'"
   sValues(10) = "4,'03',3,'银行收款凭证'"
   sValues(11) = "4,'04',4,'银行付款凭证'"
   sValues(12) = "4,'转',5,'转账凭证'"
   sValues(13) = "5,'用',1,'用户自定义'"
    For i = LBound(sValues) To UBound(sValues)
        adoCmd.CommandText = "INSERT INTO tSYS_PZtype(TypeID,Sign,SignID,SignText) values(" & sValues(i) & ")"
        adoCmd.Execute
    Next i
    
    '设置一条系统管理员(Admin)的操作员记录
    adoCmd.CommandText = "INSERT INTO tSYS_User values('0','Admin','',0)"
    adoCmd.Execute
    
'********************2002.06.27 add************************************
    ReDim sValues(14)
' "cItmSysCoding cItmDaCoding vcItmDaCaption           vcItmDaName"
  
    sValues(1) = "'03',  'TSYS_001',  'TSYS_ACCOUNT',  '系统账套管理表'"
    sValues(2) = "'03',  'TSYS_002',  'TSYS_AUTH',  '系统权限表'"
    sValues(3) = "'03',  'TSYS_003',  'TSYS_MANAGE',  '系统运行管理表'"
    sValues(4) = "'03',  'TSYS_004',  'TSYS_USER',  '操作人员表'"
    sValues(5) = "'03',  'TSYS_005',  'TSYS_USERAUTH',  '操作人员权限表'"
    sValues(6) = "'03',  'TSYS_006',  'TSYS_SUBSYS','子系统一览表'"
    sValues(7) = "'03',  'TSYS_007',  'TSYS_SUBSYSUSED',  '子系统启用表'"
    sValues(8) = "'03',  'TSYS_008',  'TSYS_PZTYPE',  '凭证类型表'"
    sValues(9) = "'03',  'TSYS_009',  'TSYS_TRADE',  '行业表'"
    sValues(10) = "'03',  'TSYS_010',  'TSYS_TRADECODE',  '行业科目代码表'"
    sValues(11) = "'03',  'TSYS_011',  'TSYS_TRADECODECLASS',  '行业科目类型表'"
    sValues(12) = "'03',  'TSYS_012',  'TSYS_PERIOD',  '账套会计期表'"
    sValues(13) = "'03','TSYS_013','tSYS_MutexInfo','功能互斥对应表'"
    sValues(14) = "'03','TSYS_014','tSYS_MutexObjectInfo','对象互斥对应表'"
    
    For i = LBound(sValues) To UBound(sValues)
        adoCmd.CommandText = "INSERT INTO tCON_daItem" & _
                    "(cItmSysCoding ,cItmDaCoding, vcItmDaCaption ,vcItmDaName) values(" & _
                     sValues(i) & ")"
        adoCmd.Execute
    Next i



'*********************2002.06.27 ***********************************
    
    glo.frmProg.ShowProgress 70
    
    '设置权限目录表记录
    glo.frmProg.SetMsg "正在设置权限目录表的记录..."
    Call TransferAuth(cnnCreate)
    
    glo.frmProg.ShowProgress 100
    
End Sub


Private Sub TransferTradeAndSubject(cnnCRE As ADODB.Connection)
    Dim cnnMDB As ADODB.Connection
    Dim sSql As String, i As Long
    Dim rstS As ADODB.Recordset
    Dim rstD As ADODB.Recordset
    
    Set cnnMDB = New ADODB.Connection
'    cnnMDB.Open "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=" & _
'            App.Path & "\" & g_SETUPDBNAME
    cnnMDB.Open "DRIVER={Microsoft Access Driver (*.mdb)};FIL=MS Access;DRIVERID=25;DBQ=" & _
                App.Path & "\" & g_SETUPDBNAME & ";UID=Admin;PWD=;"
    glo.frmProg.SetMsg "正在设置行业表的记录..."
'传递行业预置   Step 1.
    Set rstS = New ADODB.Recordset
    Set rstD = New ADODB.Recordset
    rstS.Open "select * from GL_BTrade", cnnMDB, adOpenStatic, adLockReadOnly
    rstD.CursorLocation = adUseClient
    rstD.Open "select * from tSYS_trade", cnnCRE, adOpenStatic, adLockOptimistic
    
    i = 0
    If rstS.RecordCount <> 0 Then
        rstS.MoveFirst
        Do Until rstS.EOF
            i = i + 1
            glo.frmProg.ShowProgress (25 + i / rstS.RecordCount * 10)
            With rstD
                .AddNew
                .Fields("ID").Value = rstS.Fields("itrade_id").Value
                .Fields("Name").Value = rstS.Fields("ctrade_name").Value
                .Fields("NameEng").Value = rstS.Fields("ctrade_engl").Value
                .Update
            End With
            rstS.MoveNext
        Loop
    End If
    
    glo.frmProg.ShowProgress 35
    glo.frmProg.SetMsg "正在设置科目类型表的记录..."
'传递科目类型   Step 2.
    Set rstS = New ADODB.Recordset
    Set rstD = New ADODB.Recordset
    rstS.Open "select * from GL_CodeClass", cnnMDB, adOpenStatic, adLockReadOnly
    rstD.CursorLocation = adUseClient
    rstD.Open "select * from tSYS_TradeCodeClass", cnnCRE, adOpenStatic, adLockOptimistic
    
    i = 0
    If rstS.RecordCount <> 0 Then
        rstS.MoveFirst
        Do Until rstS.EOF
            i = i + 1
            glo.frmProg.ShowProgress (35 + i / rstS.RecordCount * 10)
            If rstS.Fields("cclass").Value <> "损益" Or rstS.Fields("cmsg").Value <> "支出" Then
                With rstD
                    .AddNew
                    .Fields("tradeID").Value = rstS.Fields("itrade").Value
                    .Fields("ClassSerial").Value = rstS.Fields("inum").Value
                    .Fields("ClassName").Value = rstS.Fields("cclass").Value
                    .Fields("ClassNameEng").Value = rstS.Fields("cclass_engl").Value
                    .Fields("yefx").Value = IIf(rstS.Fields("nProperty").Value, "借方", "贷方")
                    .Update
                End With
            End If
            rstS.MoveNext
        Loop
    End If
    
    glo.frmProg.ShowProgress 45
    glo.frmProg.SetMsg "正在设置科目表的记录..."
'传递科目代码   Step 3.
    Set rstS = New ADODB.Recordset
    Set rstD = New ADODB.Recordset
    rstS.Open "select * from GL_DPreCode", cnnMDB, adOpenStatic, adLockReadOnly
    rstD.CursorLocation = adUseClient
    rstD.Open "select * from tSYS_TradeCode", cnnCRE, adOpenStatic, adLockOptimistic
    
    i = 0
    If rstS.RecordCount <> 0 Then
        rstS.MoveFirst
        Do Until rstS.EOF
            i = i + 1
            glo.frmProg.ShowProgress (45 + i / rstS.RecordCount * 20)
            With rstD
                .AddNew
                .Fields("tradeID").Value = rstS.Fields("itrade_id").Value
                .Fields("ClassName").Value = rstS.Fields("cclass").Value
                .Fields("ClassNameEng").Value = rstS.Fields("cclass_engl").Value
                .Fields("kmdm").Value = rstS.Fields("ccode").Value
                .Fields("kmmc").Value = rstS.Fields("ccode_name").Value
                .Fields("kmmcEng").Value = rstS.Fields("ccode_engl").Value
                .Fields("kmjc").Value = rstS.Fields("igrade").Value
                .Fields("yefx").Value = IIf(rstS.Fields("bProperty").Value, "借方", "贷方")
                .Fields("IsEndkm").Value = rstS.Fields("bEnd").Value
                .Update
            End With
            rstS.MoveNext
        Loop
    End If
    
End Sub
'传递权限表记录
Private Sub TransferAuth(cnnCRE As ADODB.Connection)
    Dim cnnMDB As ADODB.Connection
    Dim sSql As String
    Dim rstS As ADODB.Recordset
    Dim rstD As ADODB.Recordset
    Dim i As Long, j As Integer
    
    Set cnnMDB = New ADODB.Connection
'    cnnMDB.Open "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=" & _
'            App.Path & "\" & g_SETUPDBNAME
    cnnMDB.Open "DRIVER={Microsoft Access Driver (*.mdb)};FIL=MS Access;DRIVERID=25;DBQ=" & _
                App.Path & "\" & g_SETUPDBNAME & ";UID=Admin;PWD=;"
    Set rstS = New ADODB.Recordset
    Set rstD = New ADODB.Recordset
    rstS.Open "select * from tSYS_Auth", cnnMDB, adOpenStatic, adLockReadOnly
    rstD.CursorLocation = adUseClient
    rstD.Open "select * from tSYS_Auth", cnnCRE, adOpenStatic, adLockOptimistic
    
    i = 0
    If rstS.RecordCount <> 0 Then
        rstS.MoveFirst
        Do Until rstS.EOF
            i = i + 1
            glo.frmProg.ShowProgress (70 + i / rstS.RecordCount * 30)
            With rstD
                .AddNew
                For j = 0 To .Fields.Count - 1
                    .Fields(j).Value = rstS.Fields(j).Value
                Next j
                .Update
            End With
            rstS.MoveNext
        Loop
    End If

'*******2002.07.15 add 预置tSYS_MutexInfo
    rstS.Close
    rstD.Close
    rstS.Open "select * from tSYS_MutexInfo", cnnMDB, adOpenStatic, adLockReadOnly
    rstD.Open "select * from tSYS_MutexInfo", cnnCRE, adOpenStatic, adLockOptimistic
    Do Until rstS.EOF
            With rstD
                .AddNew
                For j = 0 To .Fields.Count - 1
                    .Fields(j).Value = rstS.Fields(j).Value
                Next j
                .Update
            End With
            rstS.MoveNext
        Loop
    
'*******2002.07.15 add  预置tSYS_MutexObjectInfo
    rstS.Close
    rstD.Close
    rstS.Open "select * from tSYS_MutexObjectInfo", cnnMDB, adOpenStatic, adLockReadOnly
    rstD.Open "select * from tSYS_MutexObjectInfo", cnnCRE, adOpenStatic, adLockOptimistic
    Do Until rstS.EOF
            With rstD
                .AddNew
                For j = 0 To .Fields.Count - 1
                    .Fields(j).Value = rstS.Fields(j).Value
                Next j
                .Update
            End With
            rstS.MoveNext
        Loop
'*******2003.08.27 add  预置tSYS_NavigateMuster
    rstS.Close
    rstD.Close
    rstS.Open "select * from tSYS_NavigateMuster", cnnMDB, adOpenStatic, adLockReadOnly
    rstD.Open "select * from tSYS_NavigateMuster", cnnCRE, adOpenStatic, adLockOptimistic
    Do Until rstS.EOF
            With rstD
                .AddNew
                For j = 0 To .Fields.Count - 1
                    .Fields(j).Value = rstS.Fields(j).Value
                Next j
                .Update
            End With
            rstS.MoveNext
        Loop
End Sub

⌨️ 快捷键说明

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