📄 mdlinitialize.bas
字号:
'设置行业表、行业科目类型表、行业科目代码表记录
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 + -