Solved

MS Access Application Program

Posted on 2011-03-21
9
604 Views
Last Modified: 2012-05-11
I need an application program written to input data and retrieve reports from a MS Access database. All users have a copy of MS Access 2000 but the development will be done in a newer version. However the program design nor programmer has not been identified yet. If MS Access 2010 is used to develop the application, can it run under MS Access 2000 or will a runtime license
need to be purchased?  
0
Comment
Question by:adhudgens
  • 3
  • 2
  • 2
  • +2
9 Comments
 
LVL 1

Expert Comment

by:MSDBQ
ID: 35180565
In my opinion; you’re building the database in a 2007 or 2010 would allow you to input data and retrieve reports , but running it in 2000 would lose some of the functionality so why not just build it in 2000? Technology has changed dramatically since 2000 was released.  How would a runtime license assist?
0
 

Author Comment

by:adhudgens
ID: 35180924
I’m looking for a programmer to build the application and most people I have talked to would like to build it in a newer version. This is a very simple application and low budget, so the cost of upgrading ten software packages from 2000 to 2010 would be cost prohibitive. I don’t know the cost of the runtime license nor what development software would be required. This has not been offered by the two programmers I have spoken to, but I think it is an option.
0
 
LVL 26

Expert Comment

by:Nick67
ID: 35182122
0
 
LVL 84
ID: 35182582
Note however that running multiple versions of Access on the same machine can cause troubles - even if your running Access 2000 Retail version + Access 2010 Runtime version. There can be significant delays when switching between the two versions, and in some cases your 2010 Runtime version can become the "registered" version (i.e. ALL database on the machine would open with the 2010 runtime).

There are options that can eliminate this scenario, but they involve either (a) modifying all shortcuts to point to the correct version of Access or (b) using Sagekey (www.sagekey.com) to deploy your new application and runtime.
0
Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

 
LVL 26

Expert Comment

by:Nick67
ID: 35183044
There is definitely that heavy danger.
The other one that I encounter frequently in a mixed Acess 2003/2007/2010 environment is code references to the
MS Access x.0 or
MS Office x.0 libraries

The 2003 version is 11.0.  Touch the file with Access 2007 and it silent moves up to 12.0
Access 2010 goes to 14.0

Open it again with 2003.  Bang!
All the code comes to a halt because of the missing reference to 12.0 or 14.0
You CANNOT VBA code around this.
You can VBA code references--but you can't fix a broken reference :(

Interoperability of down-level full versions or run-times is tricky.
It has been since Acess 97 at least.
LSMConsulting is right to point out that there are pitfalls.

Licencing fees?  Well, there aren't any of those.

You could conceivably have someone develop it in Access 2010, finalize it, and then open it in Access 2000.
There'd be a bunch of Bangs! -- which could be fixed by the developer, and then pushed out to production.

Most of the new functions of 2007/2010 aren't really something that a sane person wants to use.
OTOH, the newer versions form and reports wizards do remove a lot of scutwork--and those forms work fine down-level
0
 
LVL 84
ID: 35187882
<You can VBA code references--but you can't fix a broken reference :(>

Sure you can. You can use the References collection and determine which are missing/broken, and fix those. The trouble is knowing what to fix them with (i.e. if the Office reference is broken, what version of Office do you use to fix that reference, how to you find it on the machine, etc etc).

0
 
LVL 8

Accepted Solution

by:
agillanders earned 250 total points
ID: 35188085
One relatively simple solution is to have the developer build the application in VB or C# and use it to programmatically connect to the the Jet database (the underlying engine behind Access). If you really need to use the data in Access itself then build the tables etc in 2003 and use linked tables to connect to the data from a 2007/2010 front end. The front end will be silently updated to the users version but the data itself stays detached and so unharmed.

Both of these solutions do, of course, introduce a file management issue becasue the application/front end is now a separate file to the data. But it does fence the data resource to the technology of the owner/developer but allow clients to be less restricted. Especially if the linked tables are done via ODBC.

For example I have built a number of Access 2007/2010 front ends for SQL Server databases. The linked tables in Access are ODBC connections to the remote SQL Server but then everything works fine for both 2007 and 2010 clients. I even use intermediate local tables to allow download/upload from/to the server allowing offline client use with the master data remaining on the server.

Alistair

0
 
LVL 26

Expert Comment

by:Nick67
ID: 35190871
@LSMConsulting
<Sure you can. >

Trust me.  I KNOW exactly what references break and exactly what it should take to fix them.
The following code looks like it should play nice, but the minute VBA tries to touch the broken reference, in Access 2003, it goes BANG!
I actually PHONED MS about this.
No joy.

You can mess with working references all you like, but you can't fix or remove broken ones.
My question to MS was -- what exactly is the point of ISBroken if you can't then DO anything about it?
Sigh.
Public Function TestFix()
Dim hadbroken As Boolean
Dim myref As Reference

hadbroken = False
For Each myref In Application.References
    If myref.IsBroken Then
        MsgBox myref.Guid
    End If
Next myref

MsgBox hadbroken

If hadbroken = True Then
Application.References.AddFromGuid "{00020813-0000-0000-C000-000000000046}", 1, 5
Application.References.AddFromGuid "{00062FFF-0000-0000-C000-000000000046}", 9, 2
End If

end function

Public Function TestKill()
For Each myref In Access.References
    Select Case True
        Case myref.Guid = "{00020813-0000-0000-C000-000000000046}"
            If myref.Minor <> 5 Then
                Access.References.Remove References("Excel")
                TestKill = True
            End If
        Case myref.Guid = "{00062FFF-0000-0000-C000-000000000046}"
            If myref.Minor <> 2 Then
                Access.References.Remove References("Outlook")
                TestKill = True
            End If
    End Select
Next myref

End Function

Open in new window

0
 

Author Closing Comment

by:adhudgens
ID: 35192805
Thank you for the help!
0

Featured Post

VMware Disaster Recovery and Data Protection

In this expert guide, you’ll learn about the components of a Modern Data Center. You will use cases for the value-added capabilities of Veeam®, including combining backup and replication for VMware disaster recovery and using replication for data center migration.

Question has a verified solution.

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

If you’re thinking to yourself “That description sounds a lot like two people doing the work that one could accomplish,” you’re not alone.
In this post we will learn how to connect and configure Android Device (Smartphone etc.) with Android Studio. After that we will run a simple Hello World Program.
An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

948 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

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now