____________________________________
Attribute VB_Name = "ModAutoMDE"
Option Compare Database
Option Explicit
____________________________________
Function GenerateMDEFile(MyPath As String) As String
Dim NAcc As Access.Application
Dim strMsg As String
Set NAcc = CreateObject("Access.Application")
'The following lines simulate accepting the default
'name, clicking Make MDE, and clicking Save
SendKeys MyPath & "{Enter}{Enter}"
SendKeys "{Enter}"
NAcc.DoCmd.RunCommand acCmdMakeMDEFile
strMsg = "Good"
GenerateMDEFile = strMsg
Exit_GenerateMDEFile:
Set NAcc = Nothing
Exit Function
Error_GenerateMDEFile:
strMsg = Err.Number & vbCrLf & Err.Description
GenerateMDEFile = strMsg
Resume Exit_GenerateMDEFile
End Function
____________________________________
'?GenerateMDEFile()
Sub sMakeMDEcontroller()
Dim rayDBlist(16) As String
Dim intCurRay As Integer
Dim intMaxRay As Integer
Dim strResult As String
Dim strPath As String
strPath = "C:\Documents and Settings\cyos\My Documents\ECO House\Split\"
rayDBlist(1) = strPath & "ecoAction After Market.mdb"
rayDBlist(2) = strPath & "ecoAction Assembly.mdb"
rayDBlist(3) = strPath & "ecoAction backend.mdb"
rayDBlist(4) = strPath & "ecoAction Crawler Assembly.mdb"
rayDBlist(5) = strPath & "ecoAction Deephole Assembly.mdb"
rayDBlist(6) = strPath & "ecoAction Engineering.mdb"
rayDBlist(7) = strPath & "ecoAction Large Blasthole Assembly.mdb"
rayDBlist(8) = strPath & "ecoAction Mid-Range Blasthole Assm.mdb"
rayDBlist(9) = strPath & "ecoAction Parts Service.mdb"
rayDBlist(10) = strPath & "ecoAction Planning.mdb"
rayDBlist(11) = strPath & "ecoAction Product Support.mdb"
rayDBlist(12) = strPath & "ecoAction Purchasing.mdb"
rayDBlist(13) = strPath & "ecoAction Quality.mdb"
rayDBlist(14) = strPath & "ecoAction Requestor.mdb"
rayDBlist(15) = strPath & "ecoAction Tech Pubs.mdb"
rayDBlist(16) = strPath & "ecoAction Warehouse.mdb"
For intCurRay = 1 To 16
strResult = GenerateMDEFile(rayDBlist(intCurRay))
If strResult <> "Good" Then
Debug.Print rayDBlist(intCurRay) & vbCrLf & strResult
End If
Next
Erase rayDBlist
MsgBox "MDEs made"
End Sub
____________________________________
Sub sRelinkTables()
Dim ExDb As Database
Dim Tdef As TableDef
Dim strConn As String
Dim strPath As String
Dim strPart As String
Dim rayDBlist(10) As String
Dim intCurRay As Integer
Dim rayTableList(3) As String
Dim intCurTableList As Integer
On Error GoTo Error_sRelinkTables
strPath = "C:\Documents and Settings\cyos\My Documents\ECO House\Split\Revised split\revised MDE\"
'strConn = "MS Access;PWD=simple;DATABASE=C:\Documents and Settings\cyos\My Documents\" _
& "ECO House\Split\Revised split\revised MDE\ecoAction backend.mde"
strConn = "MS Access;PWD=simple;DATABASE=I:\ECOactions\ecoAction backend.mde"
rayDBlist(1) = strPath & "ecoAction Requestor.mde"
rayDBlist(2) = strPath & "ecoAction Warehouse.mde"
rayDBlist(3) = strPath & "ecoAction Purchasing.mde"
rayDBlist(4) = strPath & "ecoAction Parts Service.mde"
rayDBlist(5) = strPath & "ecoAction After Market.mde"
rayDBlist(6) = strPath & "ecoAction Product Support.mde"
rayDBlist(7) = strPath & "ecoAction Assembly.mde"
rayDBlist(8) = strPath & "ecoAction Planning.mde"
rayDBlist(9) = strPath & "ecoAction Engineering.mde"
rayDBlist(10) = strPath & "ecoAction Quality.mde"
rayTableList(1) = "tblActionRequest"
rayTableList(2) = "tblActionResponse"
rayTableList(3) = "tblLookup"
For intCurRay = 1 To 10
Set ExDb = OpenDatabase(rayDBlist(intCurRay))
For intCurTableList = 1 To 3
Set Tdef = ExDb.TableDefs(rayTableList(intCurTableList))
Tdef.Connect = strConn
Tdef.RefreshLink
Next
Next
MsgBox "Refresh Link Complete"
Exit_sRelinkTables:
Erase rayDBlist
Erase rayTableList
Set Tdef = Nothing
Set ExDb = Nothing
Exit Sub
Error_sRelinkTables:
MsgBox "Error - " & Err.Number & vbCrLf & Err.Description
Resume Exit_sRelinkTables
End Sub
____________________________________
Sub sDistributeNewReports()
Dim ExDb As Database
Dim rayDBlist(10) As String
Dim rayObjectList(4) As String
Dim intCurRay As Integer
Dim intCurObject As Integer
Dim strPath As String
strPath = "C:\Documents and Settings\cyos\My Documents\ECO House\Split\Revised split\"
rayDBlist(1) = strPath & "ecoAction Requestor.mdb"
rayDBlist(2) = strPath & "ecoAction Warehouse.mdb"
rayDBlist(3) = strPath & "ecoAction Purchasing.mdb"
rayDBlist(4) = strPath & "ecoAction Parts Service.mdb"
rayDBlist(5) = strPath & "ecoAction After Market.mdb"
rayDBlist(6) = strPath & "ecoAction Product Support.mdb"
rayDBlist(7) = strPath & "ecoAction Assembly.mdb"
rayDBlist(8) = strPath & "ecoAction Planning.mdb"
rayDBlist(9) = strPath & "ecoAction Engineering.mdb"
rayDBlist(10) = strPath & "ecoAction Quality.mdb"
rayObjectList(1) = "rptActions_ECO"
rayObjectList(2) = "rptElapsedDaysActionDate"
rayObjectList(3) = "rptNoAction"
rayObjectList(4) = "rptOpenRequests"
For intCurRay = 1 To 10
For intCurObject = 1 To 4
DoCmd.TransferDatabase acExport, "Microsoft Access", _
rayDBlist(intCurRay), acReport, rayObjectList(intCurObject), rayObjectList(intCurObject)
Next
DoCmd.TransferDatabase acExport, "Microsoft Access", _
rayDBlist(intCurRay), acForm, "frmActionResponse", "frmActionResponse"
MsgBox rayDBlist(intCurRay) & "Tranfer Complete"
Next
MsgBox "Reports Replaced"
Set ExDb = Nothing
End Sub
____________________________________
Sub sRelinkTables1()
Dim ExDb As Database
Dim Tdef As TableDef
Dim strConn As String
Dim strPath As String
Dim strPart As String
Dim rayDBlist() As String
Dim intCurRay As Integer
Dim intMaxRay As Integer
Dim rayTableList(3) As String
Dim intCurTableList As Integer
Dim strDbname As String
On Error GoTo Error_sRelinkTables1
'strPath = "C:\Documents and Settings\cyos\My Documents\ECO House\Split\"
strPath = "C:\Documents and Settings\cyos\My Documents\ECO House\Split\revised MDE\"
strConn = "MS Access;PWD=simple;DATABASE=C:\Documents and Settings\cyos\My Documents\" _
& "ECO House\Split\revised MDE\ecoAction backend.mde"
strConn = "MS Access;PWD=simple;DATABASE=I:\ECOactions\ecoAction backend.mde"
strDbname = Dir(strPath & "*.mde")
'strDbname = Dir(strPath & "*.mdb")
If InStr(1, strDbname, "backend") = 0 Then
intMaxRay = intMaxRay + 1
ReDim Preserve rayDBlist(intMaxRay)
rayDBlist(intMaxRay) = strPath & strDbname
End If
Do
strDbname = Dir()
If strDbname = "" Then Exit Do
If InStr(1, strDbname, "backend") = 0 Then
intMaxRay = intMaxRay + 1
ReDim Preserve rayDBlist(intMaxRay)
rayDBlist(intMaxRay) = strPath & strDbname
End If
Loop
rayTableList(1) = "tblActionRequest"
rayTableList(2) = "tblActionResponse"
rayTableList(3) = "tblLookup"
For intCurRay = 1 To intMaxRay
Set ExDb = OpenDatabase(rayDBlist(intCurRay))
For intCurTableList = 1 To 3
Set Tdef = ExDb.TableDefs(rayTableList(intCurTableList))
Tdef.Connect = strConn
Tdef.RefreshLink
Next
Next
MsgBox "Refresh Link Complete"
Exit_sRelinkTables1:
Erase rayDBlist
Erase rayTableList
Set Tdef = Nothing
Set ExDb = Nothing
Exit Sub
Error_sRelinkTables1:
MsgBox "Error - " & Err.Number & vbCrLf & Err.Description
Resume Exit_sRelinkTables1
End Sub
____________________________________