janerussel
MIS
I have a long procedure that needs to be compacted multiple times. I have used the function in FAQ's using the keycode. If I prune down my code the compact works the first time, but with this long procedure it seems to skip right over the call to the function. I tried using the function in a separate module and then putting it in the same module. Anyone know what's going on here. The code is long but here it is.<br><br>=======<br><br>Option Compare Database<br>Option Explicit<br><br><br>Private Sub RunUpdate_Click()<br> DoCmd.Hourglass True<br> DoCmd.SetWarnings False<br><br> If ObjectExists(acTable, "PROJECT"
Then DoCmd.DeleteObject acTable, "PROJECT"<br> If ObjectExists(acTable, "VENDOR"
Then DoCmd.DeleteObject acTable, "VENDOR"<br> If ObjectExists(acTable, "EMPLOYEE"
Then DoCmd.DeleteObject acTable, "EMPLOYEE"<br> If ObjectExists(acTable, "Exprate"
Then DoCmd.DeleteObject acTable, "Exprate"<br> If ObjectExists(acTable, "TblCDPeta"
Then DoCmd.DeleteObject acTable, "TblCDPeta"<br> If ObjectExists(acTable, "TblJobExpPeta"
Then DoCmd.DeleteObject acTable, "TblJobExpPeta"<br> If ObjectExists(acTable, "TblLaborSumPeta"
Then DoCmd.DeleteObject acTable, "TblLaborSumPeta"<br> If ObjectExists(acTable, "TblLbr"
Then DoCmd.DeleteObject acTable, "TblLbr"<br> If ObjectExists(acTable, "TblLbr10"
Then DoCmd.DeleteObject acTable, "TblLbr10"<br> If ObjectExists(acTable, "TblLbr20"
Then DoCmd.DeleteObject acTable, "TblLbr20"<br> If ObjectExists(acTable, "TblLbr30"
Then DoCmd.DeleteObject acTable, "TblLbr30"<br> If ObjectExists(acTable, "TblLbr35"
Then DoCmd.DeleteObject acTable, "TblLbr35"<br> If ObjectExists(acTable, "TblLbr40"
Then DoCmd.DeleteObject acTable, "TblLbr40"<br> If ObjectExists(acTable, "TblLbr50"
Then DoCmd.DeleteObject acTable, "TblLbr50"<br> If ObjectExists(acTable, "TblLbr60"
Then DoCmd.DeleteObject acTable, "TblLbr60"<br> If ObjectExists(acTable, "TblLbrArc"
Then DoCmd.DeleteObject acTable, "TblLbrArc"<br>If ObjectExists(acTable, "PROJECT"
Then DoCmd.DeleteObject acTable, "PROJECT"<br> If ObjectExists(acTable, "VENDOR"
Then DoCmd.DeleteObject acTable, "VENDOR"<br> If ObjectExists(acTable, "EMPLOYEE"
Then DoCmd.DeleteObject acTable, "EMPLOYEE"<br> ' Import records from Sema4<br> <br> <br> DoCmd.TransferDatabase acImport, "FoxPro 2.6", "d:\Access\Temp", _<br> acTable, "project.dbf", "PROJECT", False<br> DoCmd.TransferDatabase acImport, "FoxPro 2.6", "d:\Access\Temp", _<br> acTable, "EMPLOYEE.dbf", "EMPLOYEE", False<br> DoCmd.TransferDatabase acImport, "FoxPro 2.6", "d:\Access\Temp", _<br> acTable, "time.dbf", "TIME", False<br> DoCmd.TransferDatabase acImport, "FoxPro 2.6", "d:\Access\Temp", _<br> acTable, "timearc.dbf", "TIMEARC", False<br> DoCmd.TransferDatabase acImport, "FoxPro 2.6", "d:\Access\Temp", _<br> acTable, "jobexp.dbf", "JOBEXP", False<br> DoCmd.TransferDatabase acImport, "FoxPro 2.6", "d:\Access\Temp", _<br> acTable, "jobexpac.dbf", "JOBEXPAC", False<br> DoCmd.TransferDatabase acImport, "FoxPro 2.6", "d:\Access\Temp", _<br> acTable, "Vendor.dbf", "Vendor", False<br> DoCmd.TransferDatabase acImport, "FoxPro 2.6", "d:\Access\Temp", _<br> acTable, "Exprate.dbf", "Exprate", False<br> <br> <br> Beep<br> MsgBox "Sema4 import is COMPLETE", vbOKOnly, "BUDGET UPDATE VALIDATION"<br> <br> 'Call the function to update Budget<br> compact_database<br> <br> DoCmd.OpenQuery "QEMPLOYEE", acNormal, acEdit 'Make EMP NEW<br> DoCmd.Rename "EMPLOYEE", acTable, "EMPLOYEENEW" 'RENAME EMPLOYEE<br> DoCmd.OpenQuery "QJobExpAppnd", acNormal, acEdit<br> DoCmd.OpenQuery "QTimeAppnd", acNormal, acEdit<br> DoCmd.Rename "JOBEXPNEW", acTable, "JOBEXP"<br> DoCmd.Rename "TIMENEW", acTable, "TIME"<br> <br> If ObjectExists(acTable, "JOBEXPAC"
Then DoCmd.DeleteObject acTable, "JOBEXPAC"<br> If ObjectExists(acTable, "TIMEARC"
Then DoCmd.DeleteObject acTable, "TIMEARC"<br> <br> 'Call the function to update Budget<br> compact_database<br><br> ' QJOBEXP-A<br> DoCmd.OpenQuery "QJobExp-N-A", acNormal, acEdit<br> DoCmd.DeleteObject acTable, "JOBEXPNEW"<br> ' QJOBEXP-B<br> DoCmd.OpenQuery "QJobExp-NewLnk-B", acNormal, acEdit<br> ' QJOBEXP-C<br> DoCmd.OpenQuery "QExprate-N-C", acNormal, acEdit<br> ' QJOBEXP-D<br> DoCmd.OpenQuery "QExprate-NewLnk-D", acNormal, acEdit<br> ' QJOBEXP-N<br> DoCmd.OpenQuery "QJobExp-Exprate-N", acNormal, acEdit<br> ' QJOBEXP-N1<br> DoCmd.OpenQuery "QJobexp-Exprate-N1", acNormal, acEdit<br> ' QJOBEXP-N2<br> DoCmd.OpenQuery "QJobExp-Exprate-N2", acNormal, acEdit<br> ' QJOBEXP-N3<br> DoCmd.OpenQuery "QJobExp-Exprate-N3", acNormal, acEdit<br> ' QJOBEXP-N4<br> DoCmd.OpenQuery "QJobExp-Exprate-N4", acNormal, acEdit<br> ' QJOBEXP-N5<br> DoCmd.OpenQuery "QJobExp-Exprate-N5", acNormal, acEdit<br> ' QJOBEXP-N6<br> DoCmd.OpenQuery "QJobExp-Exprate-N6", acNormal, acEdit<br> ' MakeCashDisbTable<br> DoCmd.OpenQuery "QDetailCDPeta", acNormal, acEdit<br> ' MakeJobExpTable<br> DoCmd.OpenQuery "QDetailJobExpPeta", acNormal, acEdit<br> ' MakePJTable<br> DoCmd.OpenQuery "QDetailPJPeta", acNormal, acEdit<br> ' MakeTblPetaLaborTable<br> DoCmd.OpenQuery "QLaborPeta", acNormal, acEdit<br> ' MakeTblArcLbrHrsEmp Table<br> DoCmd.OpenQuery "QArlLbrHrsEmp", acNormal, acEdit<br> ' MakeTblLbrHrsDptPhase Table<br> DoCmd.OpenQuery "QLbrHrsPhs", acNormal, acEdit<br> ' MakeTbTbllLbrCnsHrsPhs<br> DoCmd.OpenQuery "QLbrCnsHrsPhs", acNormal, acEdit<br> ' MakeTblCDPeta<br> DoCmd.OpenQuery "QCDPeta", acNormal, acEdit<br> ' MakeTblJobExpPeta<br> DoCmd.OpenQuery "QJobExpPeta", acNormal, acEdit<br> ' MakeTbLaborSumPeta<br> DoCmd.OpenQuery "QLaborSumPeta", acNormal, acEdit<br> ' MakeTbLaborHrsSum<br> DoCmd.OpenQuery "QLbrSumHrs", acNormal, acEdit<br> ' MakeTblLbr<br> DoCmd.OpenQuery "QLbr", acNormal, acEdit<br> ' MakeTblLbr10<br> DoCmd.OpenQuery "QLbr10", acNormal, acEdit<br> ' MakeTblLbr20<br> DoCmd.OpenQuery "QLbr20", acNormal, acEdit<br> ' MakeTblLbr30<br> DoCmd.OpenQuery "QLbr30", acNormal, acEdit<br> ' MakeTblLbr35<br> DoCmd.OpenQuery "QLbr35", acNormal, acEdit<br> ' MakeTblLbr40<br> DoCmd.OpenQuery "QLbr40", acNormal, acEdit<br> ' MakeTblLbr50<br> DoCmd.OpenQuery "QLbr50", acNormal, acEdit<br> ' MakeTblLbr60<br> DoCmd.OpenQuery "QLbr60", acNormal, acEdit<br> ' MakeTblLbrArc<br> DoCmd.OpenQuery "QLbrArc", acNormal, acEdit<br> ' WriteOffArcTotal<br> DoCmd.OpenQuery "QWOArcTot", acNormal, acEdit<br> ' WriteOffCnsTotal<br> DoCmd.OpenQuery "QWOCnsTot", acNormal, acEdit<br> ' WriteOffTots<br> DoCmd.OpenQuery "QWOTots", acNormal, acEdit<br> ' MakeTblSASReimb<br> DoCmd.OpenQuery "QSASReimb", acNormal, acEdit<br> ' MakeTblSASTime<br> DoCmd.OpenQuery "QSASTime", acNormal, acEdit<br><br> 'Call the function to update Budget<br> compact_database<br><br><br> ' Empty Job budget Table<br> DoCmd.OpenQuery "EmptyBudg", acNormal, acEdit<br> ' Update Job Budget Table with new Data #1<<br> DoCmd.OpenQuery "TotBudg<", acNormal, acEdit<br> ' Update Job Budget Table with new Data #2<br> DoCmd.OpenQuery "TotBudg<2", acNormal, acEdit<br> ' Update Job Budget Table with new Data #3<br> DoCmd.OpenQuery "TotBudg<3", acNormal, acEdit<br> ' Update Job Budget Table with new Data #4<br> DoCmd.OpenQuery "TotBudg<4", acNormal, acEdit<br> ' Update Job Budget Table with new Data #5<br> DoCmd.OpenQuery "TotBudg<5", acNormal, acEdit<br> ' Update Job Budget Table with new Data #6<br> DoCmd.OpenQuery "TotBudg<6", acNormal, acEdit<br> ' Update Job Budget Table with new Data #1><br> DoCmd.OpenQuery "TotBudg>", acNormal, acEdit<br> ' Update Job Budget Table with new Data #2<br> DoCmd.OpenQuery "TotBudg>2", acNormal, acEdit<br> ' Update Job Budget Table with new Data #3<br> DoCmd.OpenQuery "TotBudg>3", acNormal, acEdit<br> ' Update Job Budget Table with new Data #4<br> DoCmd.OpenQuery "TotBudg>4", acNormal, acEdit<br> ' Update Job Budget Table with new Data #5<br> DoCmd.OpenQuery "TotBudg>5", acNormal, acEdit<br> ' Update Job Budget Table with new Data #6<br> DoCmd.OpenQuery "TotBudg>6", acNormal, acEdit<br><br> 'Call the function to update Budget<br> compact_database<br><br> DoCmd.OpenQuery "QLbrOfficeAz", acNormal, acEdit<br> DoCmd.OpenQuery "QLbrOfficeConc", acNormal, acEdit<br> DoCmd.OpenQuery "QLbrOfficeLa", acNormal, acEdit<br> DoCmd.OpenQuery "QLbrOfficeSac", acNormal, acEdit<br> DoCmd.OpenQuery "QLbrOfficeWa", acNormal, acEdit<br> DoCmd.OpenQuery "QLbrOfficeCnslt", acNormal, acEdit<br> DoCmd.OpenQuery "QReimbOfficeAz", acNormal, acEdit<br> DoCmd.OpenQuery "QReimbOfficeConc", acNormal, acEdit<br> DoCmd.OpenQuery "QReimbOfficeLa", acNormal, acEdit<br> DoCmd.OpenQuery "QReimbOfficeSac", acNormal, acEdit<br> DoCmd.OpenQuery "QReimbOfficeWA", acNormal, acEdit<br> <br> 'export remote office data out for dispersal<br> <br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\Arizona", acTable, "TblLaborAz", "TblLaborAz", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\EB", acTable, "TblLaborEb", "TblLaborEb", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\LA", acTable, "TblLaborLA", "TblLaborLA", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\SAC", acTable, "TblLaborSAC", "TblLaborSAC", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\WA", acTable, "TblLaborWA", "TblLaborWA", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\Budget", acTable, "TblLbrCn", "TblLbrCn", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\Arizona", acTable, "TblReimbAZ", "TblReimbAZ", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\EB", acTable, "TblReimbEB", "TblReimbEB", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\LA", acTable, "TblReimbLA", "TblReimbLA", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\SAC", acTable, "TblReimbSAC", "TblReimbSAC", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\WA", acTable, "TblReimbWA", "TblReimbWA", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\Budget", acTable, "PROJECT", "PROJECT", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\Budget", acTable, "EMPLOYEE", "EMPLOYEE", False<br> DoCmd.TransferDatabase acExport, "dBase IV", "d:\Access\Budget", acTable, "VENDOR", "VENDOR", False<br> DoCmd.DeleteObject acTable, "TblLaborAz"<br> DoCmd.DeleteObject acTable, "TblLaborEb"<br> DoCmd.DeleteObject acTable, "TblLaborLa"<br> DoCmd.DeleteObject acTable, "TblLaborSac"<br> DoCmd.DeleteObject acTable, "TblLaborWa"<br> DoCmd.DeleteObject acTable, "TblLbrCn"<br> DoCmd.DeleteObject acTable, "TblReimbAz"<br> DoCmd.DeleteObject acTable, "TblReimbEB"<br> DoCmd.DeleteObject acTable, "TblReimbLA"<br> DoCmd.DeleteObject acTable, "TblReimbSac"<br> DoCmd.DeleteObject acTable, "TblReimbWa"<br> <br> Beep<br> MsgBox "The budget update is COMPLETE", vbOKOnly, "BUDGET UPDATE VALIDATION"<br><br> compact_database<br><br>End Sub<br><br>Function compact_database()<br><br> SendKeys ("%(W1)"
<br> SendKeys ("%(TDC)"
<br><br>End Function<br> <br><br><br><br>