Option Compare Database
Rem ========== Luu Y su dung
Rem 1/ Dang ky File [ BLibraryLoad.exe ] de su dung
Rem 2/ Dang Ky File [ VB6Library.dll ] de su dung
Rem 3/ Tools\References\Browse..\VBLibraryLoad.exe ==> Su dung Cho RPC As New VBLibraryLoad.cCOM
Rem 4/ Microsoft ActiveX Data Objects 6.1 Library ==> Su dung cho Rs As ADODB.Recordset
Rem ========== Coded By Kieu Manh
Rem ========== Tel: 0929.278.279 - 0929.278.379
Rem ========== Email: kieumanh366377@gmail.com
Public RPC As New VBLibraryLoad.cCOM ''==> khai bao su dung thu Vien VBLibraryLoad.exe de load ham trong VB6Library.dll
Public Rs As ADODB.Recordset
Public LoadCOM As Object
Rem ==========
Public Ip As String
Public Const Port As Long = 8181 ''Port mac dinh
Rem VD: FileName = "QLBHPN.accdb" Or MyFile.xlsb ...vv
Rem ========== GetMyLocalIP = Ham lay IP LAN
Function GetMyLocalIP() As String
Rem Declaring the necessary variables.
Dim strComputer As String
Dim objWMIService As Object
Dim colItems As Object
Dim objItem As Object
Dim myIPAddress As String
Rem Set the computer.
strComputer = "."
Rem The root\cimv2 namespace is used to access the Win32_NetworkAdapterConfiguration class.
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Rem A select query is used to get a collection of IP addresses from the network adapters that have the property IPEnabled equal to true.
Set colItems = objWMIService.ExecQuery("SELECT IPAddress FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")
Rem Loop through all the objects of the collection and return the first non-empty IP.
For Each objItem In colItems
If Not IsNull(objItem.IPAddress) Then myIPAddress = Trim(objItem.IPAddress(0))
Exit For
Next
Rem Return the IP string.
GetMyLocalIP = myIPAddress
End Function
Rem ========== ConnectDataName ham nay su dung nhu Rs As ADODB.Recordset
Function ConnectDataName(Ip As String, Port As Long, FileName As String, SQL As String) As ADODB.Recordset
Rem Ham ConnectDataName nay thay the cho ==> Conn As ADODB.connection = da ket noi toi CSDL
Rem Sau khi ket noi tra ve kieu du lieu la ADODB.Recordset
Set LoadCOM = RPC.NewInstance("VB6Library.cLoadCOM")
Set ConnectDataName = LoadCOM.ConnectDataName(Ip, Port, FileName, SQL)
If Not LoadCOM Is Nothing Then Set LoadCOM = Nothing
End Function
Rem ==========
Function GetRsSQL(Ip As String, Port As Long, FileName As String, SQL As String, Optional TieuDe As Boolean = False)
Rem Su dung: [A1] = GetRsSQL(Ip,Port,FileName,Sql,True) ''Lay tieu De
Rem Su dung: [A1] = GetRsSQL(Ip,Port,FileName,Sql,False)''Ko lay Tieu De
Rem VD: FileName = "QLBHPN.accdb" Or MyFile.xlsb ...vv
Dim Arr() As Variant
Set LoadCOM = RPC.NewInstance("VB6Library.cLoadCOM")
Arr = LoadCOM.GetRsSQL(Ip, Port, FileName, SQL, TieuDe)
GetRsSQL = ResizeArray(Arr)
If Not LoadCOM Is Nothing Then Set LoadCOM = Nothing
End Function
Rem ==========
Public Sub GetListTableName(Ip As String, Port As Long, FileName As String, aListBox As Object)
Rem ham nay lay List TableName Or SheetName cua 1 Files
Rem VD: FileName = "QLBHPN.accdb" Or MyFile.xlsb ...vv
Rem Su dung: Call GetListTableName(Ip, Port, "QLBHPN.accdb", ListBox1)
Set LoadCOM = RPC.NewInstance("VB6Library.cLoadCOM")
Call LoadCOM.GetListTableName(Ip, Port, FileName, aListBox)
If Not LoadCOM Is Nothing Then Set LoadCOM = Nothing
End Sub
Rem ==========
Public Sub GetListDatabaseName(Ip As String, Port As Long, aComboBox As Object)
Rem ham nay lay List FileName duoc chia Se o Folder Server Sharing
Rem Su dung: Call GetListDatabaseName(Ip, Port, ComboBox1)
Set LoadCOM = RPC.NewInstance("VB6Library.cLoadCOM")
Call LoadCOM.GetListDatabaseName(Ip, Port, aComboBox)
If Not LoadCOM Is Nothing Then Set LoadCOM = Nothing
End Sub
Rem ==========
Public Sub GetRsToListBox(Ip As String, Port As Long, FileName As String, SQL As String, aListBox As Object)
Rem ham nay su dung lay du lieu gan len ListBox
Rem VD: FileName = "QLBHPN.accdb" Or MyFile.xlsb ...vv
Rem su dung : Call GetRsToListBox(Ip, Port, FileName, SQL, ListBox2)
Set LoadCOM = RPC.NewInstance("VB6Library.cLoadCOM")
Call LoadCOM.GetRsToListBox(Ip, Port, ListFiles, SQL, aListBox)
If Not LoadCOM Is Nothing Then Set LoadCOM = Nothing
End Sub
Rem ==========
Public Sub GetListFieldToComboBox(Ip As String, Port As Long, FileName As String, SQL As String, aComboBox As Object)
Rem ham nay lay List Fields cua Files gan len CoboBox
Rem VD: FileName = "QLBHPN.accdb" Or MyFile.xlsb ...vv
Rem Su dung: Call GetListFieldToComboBox(Ip, Port, FileName, SQL, ComboBox2)
Set LoadCOM = RPC.NewInstance("VB6Library.cLoadCOM")
Call LoadCOM.GetListFieldToComboBox(Ip, Port, FileName, SQL, aComboBox)
If Not LoadCOM Is Nothing Then Set LoadCOM = Nothing
End Sub
Rem ==========
'Public Sub GetListFileNameServer(Ip As String, Port As Long, ListFiles(), SQL As String, Target As Range)
' Rem Ham nay Tong Hop List FileName Theo SQL Tu Server
' Set LoadCOM = RPC.NewInstance("VB6Library.cLoadCOM")
' Call LoadCOM.GetListFileNameServer(Ip, Port, ListFiles, SQL, Target)
' If Not LoadCOM Is Nothing Then Set LoadCOM = Nothing
'End Sub
Rem ==========
'Public Sub TongHopSheetFiles(Ip As String, Port As Long, FileName As String, Target As Range)
' Rem ham nay lay List TableName Or SheetName cua 1 Files
' Rem VD: FileName = "QLBHPN.accdb" Or MyFile.xlsb ...vv
' Rem Su dung: Call TongHopSheetFiles(Ip, Port, "QLBHPN.accdb", [A65536])
' On Error GoTo ErrNext ''Xu ly loi neu tran dong tren Sheet
' Set LoadCOM = RPC.NewInstance("VB6Library.cLoadCOM")
' Call LoadCOM.TongHopSheetFiles(Ip, Port, FileName, Target)
' If Not LoadCOM Is Nothing Then Set LoadCOM = Nothing
'ErrNext:
' If Err Then MsgBox Err.Description: Err.Clear: Exit Sub
'End Sub
Rem ========== SQL
'Public Sub GetSQLServer(Ip As String, Port As Long, FileName As String, SQL As String, Target As Range, _
' Optional TieuDe As Boolean = False)
' Rem Ham nay tuy cho lay du lieu theo SQL
' Rem TieuDe = True = lay tieu de
' Rem TieuDe = False = Ko lay tieu de
' Rem Su dung : Call GetSQLServer(Ip, Port, FileName, Sql, Target, TieuDe)
' Rem VD: FileName = "QLBHPN.accdb" Or MyFile.xlsb ...vv
' Set LoadCOM = RPC.NewInstance("VB6Library.cLoadCOM")
' Call LoadCOM.GetSQLServer(Ip, Port, FileName, SQL, Target, TieuDe)
' If Not LoadCOM Is Nothing Then Set LoadCOM = Nothing
'End Sub
Rem ==========