A Microsoft Office (Excel, Word) forum. OfficeFrustration

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » OfficeFrustration forum » Microsoft Access » General Discussion
Site Map Home Register Authors List Search Today's Posts Mark Forums Read  

package application/ future updates



 
 
Thread Tools Display Modes
  #1  
Old April 19th, 2006, 12:56 PM posted to microsoft.public.access
external usenet poster
 
Posts: n/a
Default package application/ future updates

Will this be answered in the Dev Edition?

The dev edition does not address the issues of updates any more then what
you have now.

In other words, you current development practices for the most part must
include this issue. It is not solved the dev edition.

In fact, if you adopted good development practices, then using the runtime
edition of ms-access will not be a lot of work.

For example, for a good many years I always built a nice custom interface,
and hide all of the ms-access stuff. You will have done this long before
using the runtime (we hope!!). If you not been hiding all of the ms-access
interface now, you should start doing this. When you finally get around to
using the runtime edition, then NO additional work will be required. Here is
some screen shots of a ms-access application. Note how all of the ms-access
stuff is hidden.

http://www.members.shaw.ca/AlbertKal...erFriendly.htm

Since the runtime does not have all of the ms-access menus, you need to
provide the features you need by building your own forms, or often some
custom menus.

So, you most certainly can, and should hide all of the ms-access interface.
The options to complete hide and keep people out of the ms-access interface
can easily be done using the tools-start-up options. Using those options
allows you to complete hide the ms-access interface (tool bars, database
window etc). Also, using these options means you
do not have to bother setting up security.

Try downloading and running the 3rd example at my following web site that
shows a hidden ms-access interface, and NO CODE is required to do
this....but just some settings in the start-up.

Check out:

http://www.members.shaw.ca/AlbertKal...s/DownLoad.htm

After you try the application, you can exit, and then re-load the
application, but hold down the shift key to by-pass the start-up options. If
want, you can even disable the shift key by pass. I have a sample mdb file
that will let you "set" the shift key bypass on any application you want.
You can get this at:
http://www.members.shaw.ca/AlbertKal.../msaccess.html

The above example would be "runtime" ready.

I can see updates/revisions that can be done to improve performance and
add
extra features, but want to do this at a later date.


Adding new reprotes, new forms, bug fixes in code.....adding new code is all
very easy. It is assumed that you split your database. Thus, to udpate a
user to the next great version of your product, you simply send them a new
front end (which by the way *should* be a mde --- this begs the question
now..you should as a habit be using and deploying mde fiels now in
preopfartion for the day when you start using the runtime -- so, get used
this concpet now).

If you not been working with a split data base..then this is another issue
that you need to become 2nd nature to your develpumet process. Here is a
article on splitting

http://www.members.shaw.ca/AlbertKal...plit/index.htm

So, splitting your database will make updates very easy. Remember, even
with the runtime/dev edtion, any mdb, or mde file you palce on that comptuer
will fucntion by simply double cliking on it. The runtime is nothing
speical..but simply a edtion without the desing part...the rest of how it
works is really the same as the full edtion (snas the menus).

Added features meaning
additional tables will be needed for different data type.


ok..now we are talkbing about modfyingt the tables and data...and NOT just
hte code. This is a more dififcult issue.

There are seveal apprahces here

** Simply have the user send you back the data file...you mdofy
it..and send it back to them. This kind of aporach is not very good, but if
you think about it..it is likey what you been doing now. (you make sure no
one is using the database..and then you simply mdoify it).

** write code to deteict that the particlar table, or field is
missing..and then write more code to "add" this table, or field to the back
end database. THis takes code, and is more effort on your part..but certanly
less work on the end users part. This is much like what happens when a new
verstion of word, or even ms-access comes out....some tables and interal
things have been modifed...so you have a new format. Hence, you can offer
some coverter program you write..but for the sake of simplicy, you startup
code in the apcpaton shoul djust for these msising fields..and then you
write code to add those fieds or tables to the database.


Can I package an updated version?


I actually don't use the package wizard to send updates. I just zip the new
mdb, and send them a self extracting zip file. I done this for years. It is
far easier then trying to use the package wizard for this.

Note that the runtime system is really more of a purchase of the *right* to
distribute your application. However, as a application install system, it is
very weak. If you are planning wide spread installs to machines that you
don't have control over, then I would suggest that you consider purchasing
some 3rd party scripts...such as those from

www.sagekey.com


--
Albert D. Kallal (Access MVP)
Edmonton, Alberta Canada

http://www.members.shaw.ca/AlbertKallal



  #2  
Old April 19th, 2006, 03:40 PM posted to microsoft.public.access
external usenet poster
 
Posts: n/a
Default package application/ future updates

Albert, Thank you for clearing some things up. I now know for sure that I am
heading in the right direction.

As of right now. My application (beta) is running on my company's network.
I split the database as was mentioned in your review, and have the frontends
as .mde(s). It is a replicated copy, which is easy to make different updates
as far as satisfiying everyones needs.

Our other branch office is now looking into bringing my product on board.
But they are wanting just a "stand alone" version. So I am thinking of not
splitting it and making it a replica as well.

As for custom menus, I know that is one area that I need work on...I have
used the start-up option to hide everything but one menu provided by access.
I have been putting on paper, what would seem to me, is an easy flow....

I am using the link table code from mvps.org to make it easier to relink
tables. And know that it will be fairly easy to send an updated version of
the frontend.

Now the problem I am facing with updating/adding tables. The business I am
in (insurance) is a highly competitive/niche group. All our policies are
subsidized by the Feds. Hence - I am in direct competition with people that
would be using my program. I do not think I could get them to zip me the
backend since I will then have all contact info on their customers.

So I have tring to get code whereby I can update the backend. Ken Sheridan
was kind enough to provide an ExplodingParts Function...I guess right now
thats a little above my head I can not seem to get it to work. It is he

http://www.microsoft.com/office/comm...2-a0e8324d228e

I have read some of your replies while searching on google groups and have
been playing around with Inno, as an installer.

Thank you, I have really enjoyed reading your responses to everyone and
reading on your site. I just wish I had half your knowledge.

Gerald



"Albert D.Kallal" wrote:

Will this be answered in the Dev Edition?


The dev edition does not address the issues of updates any more then what
you have now.

In other words, you current development practices for the most part must
include this issue. It is not solved the dev edition.

In fact, if you adopted good development practices, then using the runtime
edition of ms-access will not be a lot of work.

For example, for a good many years I always built a nice custom interface,
and hide all of the ms-access stuff. You will have done this long before
using the runtime (we hope!!). If you not been hiding all of the ms-access
interface now, you should start doing this. When you finally get around to
using the runtime edition, then NO additional work will be required. Here is
some screen shots of a ms-access application. Note how all of the ms-access
stuff is hidden.

http://www.members.shaw.ca/AlbertKal...erFriendly.htm

Since the runtime does not have all of the ms-access menus, you need to
provide the features you need by building your own forms, or often some
custom menus.

So, you most certainly can, and should hide all of the ms-access interface.
The options to complete hide and keep people out of the ms-access interface
can easily be done using the tools-start-up options. Using those options
allows you to complete hide the ms-access interface (tool bars, database
window etc). Also, using these options means you
do not have to bother setting up security.

Try downloading and running the 3rd example at my following web site that
shows a hidden ms-access interface, and NO CODE is required to do
this....but just some settings in the start-up.

Check out:

http://www.members.shaw.ca/AlbertKal...s/DownLoad.htm

After you try the application, you can exit, and then re-load the
application, but hold down the shift key to by-pass the start-up options. If
want, you can even disable the shift key by pass. I have a sample mdb file
that will let you "set" the shift key bypass on any application you want.
You can get this at:
http://www.members.shaw.ca/AlbertKal.../msaccess.html

The above example would be "runtime" ready.

I can see updates/revisions that can be done to improve performance and
add
extra features, but want to do this at a later date.


Adding new reprotes, new forms, bug fixes in code.....adding new code is all
very easy. It is assumed that you split your database. Thus, to udpate a
user to the next great version of your product, you simply send them a new
front end (which by the way *should* be a mde --- this begs the question
now..you should as a habit be using and deploying mde fiels now in
preopfartion for the day when you start using the runtime -- so, get used
this concpet now).

If you not been working with a split data base..then this is another issue
that you need to become 2nd nature to your develpumet process. Here is a
article on splitting

http://www.members.shaw.ca/AlbertKal...plit/index.htm

So, splitting your database will make updates very easy. Remember, even
with the runtime/dev edtion, any mdb, or mde file you palce on that comptuer
will fucntion by simply double cliking on it. The runtime is nothing
speical..but simply a edtion without the desing part...the rest of how it
works is really the same as the full edtion (snas the menus).

Added features meaning
additional tables will be needed for different data type.


ok..now we are talkbing about modfyingt the tables and data...and NOT just
hte code. This is a more dififcult issue.

There are seveal apprahces here

** Simply have the user send you back the data file...you mdofy
it..and send it back to them. This kind of aporach is not very good, but if
you think about it..it is likey what you been doing now. (you make sure no
one is using the database..and then you simply mdoify it).

** write code to deteict that the particlar table, or field is
missing..and then write more code to "add" this table, or field to the back
end database. THis takes code, and is more effort on your part..but certanly
less work on the end users part. This is much like what happens when a new
verstion of word, or even ms-access comes out....some tables and interal
things have been modifed...so you have a new format. Hence, you can offer
some coverter program you write..but for the sake of simplicy, you startup
code in the apcpaton shoul djust for these msising fields..and then you
write code to add those fieds or tables to the database.


Can I package an updated version?


I actually don't use the package wizard to send updates. I just zip the new
mdb, and send them a self extracting zip file. I done this for years. It is
far easier then trying to use the package wizard for this.

Note that the runtime system is really more of a purchase of the *right* to
distribute your application. However, as a application install system, it is
very weak. If you are planning wide spread installs to machines that you
don't have control over, then I would suggest that you consider purchasing
some 3rd party scripts...such as those from

www.sagekey.com


--
Albert D. Kallal (Access MVP)
Edmonton, Alberta Canada

http://www.members.shaw.ca/AlbertKallal




  #3  
Old April 19th, 2006, 04:44 PM posted to microsoft.public.access
external usenet poster
 
Posts: n/a
Default package application/ future updates

As of right now. My application (beta) is running on my company's
network.
I split the database as was mentioned in your review, and have the
frontends
as .mde(s). It is a replicated copy, which is easy to make different
updates
as far as satisfiying everyones needs.


The above seems to have a issue here that is not right. You NEVER want to
use replication for updating your front ends.
Replication is for data..not forms. I can't imagine any successful setup
that would use replication for a mde front end......

To update a user...you simply supply a whole new mde. Perhaps you miss-used
the term replication, as it has a specific meaning in
ms-access. In fact, I am rather surprised that one could use replication to
update forms, or code in a mde.....I don't think this is
possible anyway...

So I have tring to get code whereby I can update the backend.


There is several tasks you *may* need to accomplish

add a field to a existing table
add a new table
add a new table, and set relationships

The first one is quite easy...add a new field to a existing table

Dim nF As DAO.Field
Dim nT As DAO.TableDef
Dim db As DAO.Database
Dim strToDB As String

strToDB = strBackEnd ' path+name of back end

Set db = OpenDatabase(strToDB)

Set nT = db.TableDefs("tblDefaults")
nT.Fields.Append nT.CreateField("DefaultAreaCode", dbText, 3)
nT.Fields.Append nT.CreateField("DefaultCity", dbText, 25)
nT.Fields.Refresh
db.Close
Set db = Nothing

The above code simply added two fields to the table called tblDefaults

To add a new table, you actually don't have to create a linked table, since
the new mde you provide will ALREADY HAVE this new linked table. The ONLY
thing you need to do is create the new table in the back end. To save code,
I simply supply the new "empty" table in the FRONT end,and COPY it to the
back end. This saves a ton of code....saves me having to write lots to code
to create the table from scratch, and further since the new front end
already has the link set...I save further coding. I usually use some naming
standard. In my case, I just have the table name in the front end, but with
a extra capital "C" appended to the name .

Here is the code to add a new table to the back end....

strFromDB = CurrentProject.FullName
strToDB = strBackEnd

DoCmd.TransferDatabase acExport, "Microsoft Access", strToDB, acTable,
"tblDefaultsC", "tblDefaults", False

That is it...3 lines of code. What the above does is copy the a new table
called tblDefaultsC to the backend, but gives it a name of tblDefaults.
Since this is new update..the new mde that this code is running in will
already have the link to the back end for tblDefaults anyway.....


I have read some of your replies while searching on google groups and have
been playing around with Inno, as an installer.


Yes..rememeber, the reason why I use inno is that is simply better then
winzip (which I used to use). All the inno script does is unpack the mde
file to a paritclar dialry. However, it just looks better. In fact, here is
a set of screen shots as to how my software is updated

http://www.kallal.ca/ridestutorial/upgrade.html


--
Albert D. Kallal (Access MVP)
Edmonton, Alberta Canada

http://www.members.shaw.ca/AlbertKallal


  #4  
Old April 20th, 2006, 03:56 PM posted to microsoft.public.access
external usenet poster
 
Posts: n/a
Default package application/ future updates

Well that's just great I have my orginal .mdb and synchronize with the
frontend .mde located on the server.

Everything seems to be working good and have hit no hiccups as yet. Maybe I
am wrong, and ever time it connects I am corrupting a little each time. I
will keep a look out for it.

The forms are updated with the changes, and my master .mdb is updated with
data, which is what I wanted it to do.

Thank you for the last reply with code /explanation. I find access amazing
in it's functions. Although each time a take a step farther, and have to
rethink something else and take two back. But I am getting it ~ I really
like when a light bulb goes off in my head.





"Albert D.Kallal" wrote:

As of right now. My application (beta) is running on my company's
network.
I split the database as was mentioned in your review, and have the
frontends
as .mde(s). It is a replicated copy, which is easy to make different
updates
as far as satisfiying everyones needs.


The above seems to have a issue here that is not right. You NEVER want to
use replication for updating your front ends.
Replication is for data..not forms. I can't imagine any successful setup
that would use replication for a mde front end......

To update a user...you simply supply a whole new mde. Perhaps you miss-used
the term replication, as it has a specific meaning in
ms-access. In fact, I am rather surprised that one could use replication to
update forms, or code in a mde.....I don't think this is
possible anyway...

So I have tring to get code whereby I can update the backend.


There is several tasks you *may* need to accomplish

add a field to a existing table
add a new table
add a new table, and set relationships

The first one is quite easy...add a new field to a existing table

Dim nF As DAO.Field
Dim nT As DAO.TableDef
Dim db As DAO.Database
Dim strToDB As String

strToDB = strBackEnd ' path+name of back end

Set db = OpenDatabase(strToDB)

Set nT = db.TableDefs("tblDefaults")
nT.Fields.Append nT.CreateField("DefaultAreaCode", dbText, 3)
nT.Fields.Append nT.CreateField("DefaultCity", dbText, 25)
nT.Fields.Refresh
db.Close
Set db = Nothing

The above code simply added two fields to the table called tblDefaults

To add a new table, you actually don't have to create a linked table, since
the new mde you provide will ALREADY HAVE this new linked table. The ONLY
thing you need to do is create the new table in the back end. To save code,
I simply supply the new "empty" table in the FRONT end,and COPY it to the
back end. This saves a ton of code....saves me having to write lots to code
to create the table from scratch, and further since the new front end
already has the link set...I save further coding. I usually use some naming
standard. In my case, I just have the table name in the front end, but with
a extra capital "C" appended to the name .

Here is the code to add a new table to the back end....

strFromDB = CurrentProject.FullName
strToDB = strBackEnd

DoCmd.TransferDatabase acExport, "Microsoft Access", strToDB, acTable,
"tblDefaultsC", "tblDefaults", False

That is it...3 lines of code. What the above does is copy the a new table
called tblDefaultsC to the backend, but gives it a name of tblDefaults.
Since this is new update..the new mde that this code is running in will
already have the link to the back end for tblDefaults anyway.....


I have read some of your replies while searching on google groups and have
been playing around with Inno, as an installer.


Yes..rememeber, the reason why I use inno is that is simply better then
winzip (which I used to use). All the inno script does is unpack the mde
file to a paritclar dialry. However, it just looks better. In fact, here is
a set of screen shots as to how my software is updated

http://www.kallal.ca/ridestutorial/upgrade.html


--
Albert D. Kallal (Access MVP)
Edmonton, Alberta Canada

http://www.members.shaw.ca/AlbertKallal



 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Extra slash in temp-environment variable causes 2007 setup to fail Juha Setup, Installing & Configuration 4 August 3rd, 2006 07:08 AM
What's the best way to monitor if the application was shut down properly? Jon A Using Forms 0 February 12th, 2005 07:51 PM
Can't Use Icons To Start Access Application KenC General Discussion 6 January 20th, 2005 10:56 PM
Passwords Neil Greenough General Discussion 4 October 16th, 2004 05:58 PM
Publisher 2003 hotfix package Update (KB 838901) Brian Kvalheim - [MSFT MVP] Publisher 0 May 7th, 2004 08:38 PM


All times are GMT +1. The time now is 01:35 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 OfficeFrustration.
The comments are property of their posters.