📄 frm_mdbftodbf.frm
字号:
Height = 255
Left = 240
TabIndex = 9
Top = 3840
Visible = 0 'False
Width = 1695
End
End
Begin MSComctlLib.ImageList ImageList1
Left = 0
Top = 0
_ExtentX = 1005
_ExtentY = 1005
BackColor = -2147483643
ImageWidth = 268
ImageHeight = 45
MaskColor = 12632256
_Version = 393216
BeginProperty Images {2C247F25-8591-11D1-B16A-00C0F0283628}
NumListImages = 7
BeginProperty ListImage1 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "frm_MdbfToDbf.frx":0329
Key = ""
EndProperty
BeginProperty ListImage2 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "frm_MdbfToDbf.frx":1BA5
Key = ""
EndProperty
BeginProperty ListImage3 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "frm_MdbfToDbf.frx":3421
Key = ""
EndProperty
BeginProperty ListImage4 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "frm_MdbfToDbf.frx":4C9D
Key = ""
EndProperty
BeginProperty ListImage5 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "frm_MdbfToDbf.frx":6519
Key = ""
EndProperty
BeginProperty ListImage6 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "frm_MdbfToDbf.frx":7D95
Key = ""
EndProperty
BeginProperty ListImage7 {2C247F27-8591-11D1-B16A-00C0F0283628}
Picture = "frm_MdbfToDbf.frx":9611
Key = ""
EndProperty
EndProperty
End
Begin VB.Label Label2
BackColor = &H8000000E&
Caption = " 将载波应用数据库中的月末冻结数据导出到中间接口数据库中,供电力营销系统发行使用, 在导出过程中请停止其他操作。"
BeginProperty Font
Name = "宋体"
Size = 9
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00000000&
Height = 735
Left = 0
TabIndex = 13
Top = 0
Width = 7335
End
End
Attribute VB_Name = "frm_sjzh"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'*****************************************
'*********作者:霍智慧
'*********时间:2006-09-01
'*********功能:将集抄数据库Newlyrtu.mdb数据库中的用户编号(User_id)
'********* 和冻结表底(Frz_z)的内容导入到中间库jcsj_yyyymm.dbf的
'********* 用户号(yhh)和总表示数(zbss)字段中供黑龙江省友谊县电业局使用。
'*****************************************
Dim cn As Connection
Dim Freezedata As New ADODB.Recordset
Dim meter As New ADODB.Recordset
Dim adorst As New ADODB.Recordset
Dim tb_Name As String
Dim cn1 As New ADODB.Connection
Dim DanWeiRS As New ADODB.Recordset
Dim SQLString As String
Dim hc_Name As String
Private Sub Command1_Click()
On Error Resume Next
CommonDialog1.Filter = "*.mdb|*.mdb"
CommonDialog1.FilterIndex = 3
CommonDialog1.DefaultExt = "mdb"
CommonDialog1.Flags = cdlOFNHideReadOnly Or cdlOFNPathMustExist Or cdlOFNOverwritePrompt Or cdlOFNNoReadOnlyReturn
CommonDialog1.DialogTitle = "Select the destination file "
Text1.Text = ""
CommonDialog1.ShowOpen
Text1.Text = CommonDialog1.FileName
End Sub
Private Sub Command2_Click()
On Error Resume Next
CommonDialog2.Filter = "jcsj.dbf|jcsj.dbf"
CommonDialog2.FilterIndex = 3
CommonDialog2.DefaultExt = "dbf"
CommonDialog2.Flags = cdlOFNHideReadOnly Or cdlOFNPathMustExist Or cdlOFNOverwritePrompt Or cdlOFNNoReadOnlyReturn
CommonDialog2.DialogTitle = "Select the destination file "
Text2.Text = ""
CommonDialog2.ShowOpen
Text2.Text = CommonDialog2.FileName
End Sub
Private Sub Command3_Click()
On Error Resume Next
Screen.MousePointer = vbHourglass
If Dir$("C:\Program Files\载波应用51\data\NewlyRTU.MDB") <> "" Then
Set cn = New ADODB.Connection
cn.ConnectionTimeout = 10
cn.CommandTimeout = 0
connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + "C:\Program Files\载波应用51\data\NEWlyRTU.MDB"
cn.ConnectionString = connstr
cn.Open
Else
MsgBox "数据库文件(NewlyRTU.MDB)不存在,请检查!", vbExclamation, "提示信息"
End
End If
yyyy = Trim(Str$(DTPicker1.Year))
mm = Trim(Str$(DTPicker1.Month))
If mm <= 9 Then mm = "0" + mm
hc_Name = "jcsj_" + yyyy + mm + ".dbf"
If Dir$("c:\cbq\jcsj.dbf") = "" Then
MsgBox "数据库文件(jcsj.dbf)文件不存在,请检查后再试!", vbExclamation, "提示信息"
End
End If
'''dd = Format(Date, "yyyy-mm-dd")
'''yyyy = Mid(dd, 1, 4)
'''mm = Mid(dd, 6, 2)
If Dir$("c:\cbq\" + hc_Name) <> "" Then
Set cn1 = New ADODB.Connection
cn1.CommandTimeout = 10
cn1.ConnectionString = "PROVIDER=MSDASQL;DRIVER={Microsoft Visual Foxpro Driver};SourceDB=c:\cbq\;SourceType=DBF"
cn1.Open
Else
CopyFile "c:\cbq\jcsj.dbf", "c:\cbq\" + hc_Name, False
Set cn1 = New ADODB.Connection
cn1.CommandTimeout = 10
cn1.ConnectionString = "PROVIDER=MSDASQL;DRIVER={Microsoft Visual Foxpro Driver};SourceDB=c:\cbq\;SourceType=DBF"
cn1.Open
End If
Screen.MousePointer = vbDefault
If (cn.State And adStateOpen) And (cn1.State And adStateOpen) Then
MsgBox "连接成功", vbExclamation, "提示 "
Else
MsgBox "连接失败", vbExclamation, "提示 "
End If
End Sub
Private Sub Command4_Click()
On Error Resume Next
Dim meter As Recordset
Set meter = New Recordset
Dim adorst As Recordset
Set adorst = New Recordset
Dim Frz_zbss As Single
''' Dim User_id As String
Dim Sucess As Boolean
Sucess = False
Screen.MousePointer = vbHourglass
'''' dd = Format(Date, "yyyy-mm-dd")
'''' yyyy = Mid(dd, 1, 4)
'''' mm = Mid(dd, 6, 2)
yyyy = Trim(Str$(DTPicker1.Year))
mm = Trim(Str$(DTPicker1.Month))
If mm <= 9 Then mm = "0" + mm
hc_Name = "jcsj_" + yyyy + mm + ".dbf"
Set Freezedata = New Recordset
Freezedata.Open "select * from Freezedata where F_year=" + yyyy + " and F_month=" & mm, cn, adOpenKeyset, adLockOptimistic
Freezedata.MoveLast
If Freezedata.RecordCount = 0 Then
MsgBox "没有可以导出的数据!", vbExclamation, "提示"
Screen.MousePointer = vbDefault
Freezedata.Close
Exit Sub
Else
ProgressBar1.Min = 0
ProgressBar1.Max = Freezedata.RecordCount
ProgressBar1.Visible = True
i = 0
Freezedata.MoveFirst
' Do While Not Freezedata.EOF
For k = 0 To Freezedata.RecordCount
i = i + 1
ProgressBar1.Value = i
meter.Open "select * from meter where Meter_ID='" + Freezedata!Meter_ID + "' and RTU_ID=" & Freezedata!RTU_ID, cn, adOpenKeyset, adLockOptimistic
If meter.RecordCount > 0 And meter!User_id <> "" Then
l = InStr(Freezedata!Frz_z, ".")
If l > 1 Then
Frz_zbss = Trim(Left(Freezedata!Frz_z, l - 1))
Else
If l = 1 Then
Frz_zbss = 0 'Trim(Left(Freezedata!Frz_z, 1))
Else
Frz_zbss = Trim(Freezedata!Frz_z)
End If
End If
SQLString = "Select * From " + hc_Name + " Where yhh=" + "'" + meter!User_id + "'"
adorst.Open SQLString, cn1, adOpenKeyset, adLockOptimistic
If adorst.EOF = False Then
Sucess = True
adorst!yhh = Trim(meter!User_id) '用户号
adorst!jlsbh = Trim(meter!meter_num) '计量设备号
adorst!yhm = Trim(meter!User_Name) '用户名称
adorst!sycl = meter!mult '实用乘率
adorst!zbss = Frz_zbss '总表示数
adorst!cbrq = Left(LTrim(Freezedata!M_Date), 8) '抄表日期
adorst!sblb = 1 ' meter!Type '设备类别(1 有功 2有功峰谷平 3有功峰谷总 4无功)
adorst.Update
''''''' Freezedata.Delete '删除Freezedata表中的记录
''''''' Freezedata.Update
Else
Sucess = True
adorst.AddNew
adorst!yhh = Trim(meter!User_id) '用户号
adorst!jlsbh = Trim(meter!meter_num) '计量设备号
adorst!yhm = Trim(meter!User_Name) '用户名称
adorst!sycl = meter!mult '实用乘率
adorst!zbss = Frz_zbss '总表示数
adorst!cbrq = Left(LTrim(Freezedata!M_Date), 8) '抄表日期
adorst!sblb = 1 ' meter!Type '设备类别(1 有功 2有功峰谷平 3有功峰谷总 4无功)
adorst.Update
'''''' Freezedata.Delete '删除Freezedata表中的记录
'''''' Freezedata.Update
End If
adorst.Close
End If
Freezedata.MoveNext
meter.Close
'' Loop
Next
ProgressBar1.Visible = False
End If
If Sucess = True Then
MsgBox "导出成功!", vbExclamation, "提示"
MsgBox "请退出此程序!", vbExclamation, "提示"
Else
MsgBox "导出失败!", vbExclamation, "提示"
End If
Freezedata.Close
Screen.MousePointer = vbDefault
End Sub
Private Sub Form_Load()
On Error Resume Next
Combo1.Text = Combo1.List(0)
Text1.Text = "C:\Program Files\载波应用51\data\NewlyRTU.MDB"
'Text2.Text = "C:\cbq\jcsj.dbf"
DTPicker1.Value = Date
yyyy = Trim(Str$(DTPicker1.Year))
mm = Trim(Str$(DTPicker1.Month))
If mm <= 9 Then mm = "0" + mm
hc_Name = "jcsj_" + yyyy + mm + ".dbf"
Text2.Text = "C:\cbq\" + hc_Name
End Sub
Private Sub Form_Unload(Cancel As Integer)
Unload Me
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -