?
Solved

How do I downgrade my MS Access version?

Posted on 2009-05-19
10
Medium Priority
?
268 Views
Last Modified: 2012-05-07
I have an application that was developed using the version of MS Access on my machine (MS Access Version 12.0.6211.1000). Unfortunately it won't work properly on my user's version which appears to be older based on the version number (12.0.4518.1014). In have therefore created a virtual machine and loaded my original version of MS Access on it but it is still a different version to my users. My original version is Version 12.0.6304.5000 and my users have Version 12.0.4518.1014

Is there any way I can downgrade to their earlier version? I cannot realistically get my users to upgrade.
0
Comment
Question by:Rob4077
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 3
10 Comments
 
LVL 85
ID: 24428019
Your version simply has SP1 installed; it's quite common to require endusers to have the most recent version of Access, including service packs and assuming they are running licensed copies of Access the upgrade is free.

The versions for msaccess.exe for 2007 are:

Original Version:      12.0.4518.1014
Service Pack 1:      12.0.6211.1000

I'm not sure where you're getting the 6304.5000 from unless you've installed some hotfixes.

That said: what exactly isn't "working properly" on the end user machine? Unless you're doing something that was fixed by the Service Pack, your database should run on 2007 or 2007 + SP1 ... and if your database REQUIRES SP1, then it requires it, and therefore your users will be required to upgrade.

0
 
LVL 85
ID: 24428022
0
 

Author Comment

by:Rob4077
ID: 24428203
Thanks for your comments.

I have been using the function at the end of this post to determine the version number being used.  When I use that function or the one on the link you provided I come up with 12.0.6211.1000 for my working machine. However if I run that function on the virtual machine I created with the version of Access 2007 installed from my original install discs (without applying any upgrades) I come up with 12.0.6304.5000. However if I check the virtual machine using the MS Method it shows 12.0.4518.1014.

<<what exactly isn't "working properly" on the end user machine?>> One of the forms isn't displaying a subform. I have no idea why so I was hoping to install their version of MS Access on my machine so I could try to figure out why it won't display. Based on what your link shows, my virtual machine doesn't have the service pack installed either, even though the build numbers are different, yet the subform displays on that version correctly. So could it be that I am using a feature that wasn't available in the earlier build or maybe I haven't included referenced to the right addin????? Any suggestions?

I would dearly love to require that they upgrade to the latest service pack but the IT department won't allow that so I need to get my application to work on the version they are using.

Function GetOSInformation() As String
' Culled from http://www.microsoft.com/technet/scriptcenter/tools/scripto2.mspx
Dim objWMIService As Object
Dim colItems As Object
Dim objItem As Object
'Dim sPath As String
Dim lStart As Long
Dim l As Long
Dim sDetails As String

    Set objWMIService = GetObject("winmgmts:\\" & "." & "\root\CIMV2")
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem", "WQL", &H10 + &H20)

    For Each objItem In colItems
        sDetails = objItem.Caption & " " & objItem.CSDVersion & " " & objItem.Version & " " & objItem.BuildNumber
   
        lStart = 1
        For l = 1 To Len(Environ("Path"))
            If Mid(Environ("Path"), l, 1) = ";" Then
                'we have found the end of a path so test it
                If Dir(Mid(Environ("Path"), lStart, l - lStart) & "\MSAccess.exe") <> "" Then
                    sDetails = sDetails & " MS Access Version " & _
                      fGetProductVersion(Dir(Mid(Environ("Path"), lStart, l - lStart) & "\MSAccess.exe"))
                End If
                lStart = l + 1
            End If
        Next l
    Next

    GetOSInformation = sDetails
End Function
0
Free Backup Tool for VMware and Hyper-V

Restore full virtual machine or individual guest files from 19 common file systems directly from the backup file. Schedule VM backups with PowerShell scripts. Set desired time, lean back and let the script to notify you via email upon completion.  

 
LVL 3

Expert Comment

by:jakemdrew
ID: 24428229
The subform sounds like it could be a missing reference.  You should check tools > rerferences and see if anything is prefixed MISSING on the machie where the subform is missing.  

Decomplie has also helped me in these situations as well.

Start > Run

msaccess.exe /decompile "C:\path\db1.mdb"
0
 
LVL 3

Expert Comment

by:jakemdrew
ID: 24428242
One last thought is that if the missing "subform" is actually a missing ActiveX control, the machine could be missing that control in the regisrty.  In this case you would have to copy the missing control to the machine and register it using Regsrv32.

I had this happen on Vista Machines that no longer has the Rich Text Box control installed.
0
 

Author Comment

by:Rob4077
ID: 24428677
Thanks for the suggestions. No missing references and a decompile was not needed. I found the problem was with the subform's recordsource.  The SQL statement I had used included a PARAMETER that the old version of MS Access was unhappy with. When I removed that PARAMETER all went well. Yet the subform worked fine on both builds of MS Access.
Therefore I go back to my original question and wonder if there is any way anyone knows of where I can get hold of a version of MS Access that is a build apparently older than the one that is on my install discs so I don't have to develop and test every modification on a machine at one of my users' sites?
0
 
LVL 3

Expert Comment

by:jakemdrew
ID: 24428733
I would love to see a version specific parameter.  I have never heard of such. (just for my own selfish future reference of course)

Glad you found your problem!
0
 

Author Comment

by:Rob4077
ID: 24428759
Following is the SQL code I was using for the subform. On both the Version 12.0.6211.1000and Version 12.0.6304.5000 the code worked but on Version 12.0.4518.1014 the subform would not display until I removed the section of code from PARAMETERS to the semicolon (;) before SELECT. Why, I have no idea, but that was the only change I made and it worked.
PARAMETERS [Forms]![frmMainRosterPrep]![Roster Preparation Form].[Form]![LstWeeks] DateTime;
SELECT tblSubTimeEntries.*, tblDoing.MinDuration, tblDoing.BreaksNotRequired, tblTimeEntries.ClosedForEditing, tblTimeEntries.Notified
FROM tblTimeEntries RIGHT JOIN (tblSubTimeEntries LEFT JOIN tblDoing ON tblSubTimeEntries.DoingCode = tblDoing.DoingCode) ON (tblTimeEntries.ShiftNum = tblSubTimeEntries.ShiftNum) AND (tblTimeEntries.SAPNum = tblSubTimeEntries.SAPNum) AND (tblTimeEntries.Start = tblSubTimeEntries.Start)
WHERE (((tblTimeEntries.FortnightCommencing)=[Forms]![frmMainRosterPrep]![Roster Preparation Form].[Form]![LstWeeks]))
ORDER BY tblSubTimeEntries.StartDate;
 
0
 
LVL 85

Accepted Solution

by:
Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 2000 total points
ID: 24430057
Is "DateTime" the name of your Parameter, or the name of a control on your form? Either way, try renaming it ...

I'm sure you could purchase an "original" copy of 2007 (i.e. pre-SP1), or you can purchase an MSDN subscription, which gives you access to every app/version of everything MS produces.
0
 

Author Comment

by:Rob4077
ID: 24432166
Thanks for the info on the subscription
When I created the parameter I used the Query editor and selected the Parameters button on the ribbon. I entered the name and the type was DateTime which it translated into the SQL of the query as above.
0

Featured Post

Visualize your virtual and backup environments

Create well-organized and polished visualizations of your virtual and backup environments when planning VMware vSphere, Microsoft Hyper-V or Veeam deployments. It helps you to gain better visibility and valuable business insights.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Phishing attempts can come in all forms, shapes and sizes. No matter how familiar you think you are with them, always remember to take extra precaution when opening an email with attachments or links.
This article shows how to get a list of available printers for display in a drop-down list, and then to use the selected printer to print an Access report or a Word document filled with Access data, using different syntax as needed for working with …
With Microsoft Access, learn how to start a database in different ways and produce different start-up actions allowing you to use a single database to perform multiple tasks. Specify a start-up form through options: Specify an Autoexec macro: Us…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
Suggested Courses

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question