Link to home
Start Free TrialLog in
Avatar of APD Toronto
APD TorontoFlag for Canada

asked on

MS Access Project File

Hello Experts,

I am interested if someone can tell me a little about MS Access project files (.adp???)

For instance, how different are they from .accdb ui files? Are there any advantages/disadvantages?

As well, can you view or change code and design? This is the main purpouse of why I am interesed in this because I do not want users changing my code or view it.

In a .accdb file, when you get an error, you see the error description and when you click debug, you can see the line number. How are errors handled in a project file? How would I produce a project file? Can I convert a .accdb into a project file easilly or do I need to take sertain considerations?

Finally, does a project file run independently or can I use Access Runtime to run it?

Thank you
Avatar of Rey Obrero (Capricorn1)
Rey Obrero (Capricorn1)
Flag of United States of America image

In a .accdb file, when you get an error, you see the error description and when you click debug, you can see the line number. How are errors handled in a project file?
Errors are handled the same way.

How would I produce a project file?

What version of Access are you using? In 2003 or earlier you can produce one using the File menu, but in 2007 or 2010 it's a bit more difficult.

Can I convert a .accdb into a project file easilly or do I need to take sertain considerations?
Not really - you generally build an ADP or you build a .accdb.
Finally, does a project file run independently or can I use Access Runtime to run it?
You must use Access or the Access runtime.

Finally, note that ADPs are likely to be deprecated in future versions of Access. There have been no changes/improvements to the ADP platform in quite a few versions, you cannot directly access the SQL Server 2008 platform with ADPs, and it's become more difficult to build an ADP with 07 and 10. From my perspective, ADPs are on the way out. Most MVPs suggest that you use linked tables instead.
<This is the main purpouse of why I am interesed in this because I do not want users changing my code or view it.>

What you are looking to do then is to create an accde file.  This can be done from within Access.  ACCDE (and MDE before them) are precompiled 'executables' that cannot be altered in design view and the code editor does not appear when an error occurs.

http://www.databasedev.co.uk/convert_to_accde_format.html

MAJOR CAVEAT: make sure you don't convert your working, designing version of the file to an ACCDE.  This is a one way process and you are forever locked out of altering the design.  When you are prepared to distribute, make a COPY of your working file, convert THAT and distribute it.
Avatar of APD Toronto

ASKER

Thanks Nick,

I never heard about accde.  So they are created from an accdb?

Do you need to design/code your accdb in a special way?

I plan to use linked tables to a accdb and to a SQL2008, as the BE, will that work?

You say that they are executables, meaning they run without Access or Runtime?
ASKER CERTIFIED SOLUTION
Avatar of Nick67
Nick67
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
i will require to alter an object in design view (hiding a textbox in report, and edi a label).  Thoughts?
In design view?
Hiding controls and changing values is normally done in run-time, and presents no problems.
Code like this does NOT play nice though

   DoCmd.OpenForm F.Name, acDesign

Private Sub KillFilters()
'On Error GoTo myerr
Dim F As AccessObject
Dim MyProject As Object
Dim myform As Form
Dim x As Integer
Dim y As Integer
Set MyProject = Application.CurrentProject
x = MyProject.AllForms.count
y = 79
Do Until y = x
    Set F = MyProject.AllForms(y)
    DoCmd.OpenForm F.Name, acDesign
    Forms(F.Name).Filter = ""
    Forms(F.Name).FilterOn = False
    DoCmd.Close acForm, F.Name, acSaveYes
    Set F = Nothing
    y = y + 1
Loop

Exit Sub

myerr:
'MsgBox Err.Number & " " & Err.Description
Resume Next

End Sub

Open in new window