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  

Visual SourceSafe: Anybody Used It For An MS Access Project



 
 
Thread Tools Display Modes
  #1  
Old October 28th, 2008, 04:57 PM posted to microsoft.public.access
PeteCresswell
external usenet poster
 
Posts: 224
Default Visual SourceSafe: Anybody Used It For An MS Access Project

They just threw another programmer at me - along with the requirement
that we use Visual Source Safe to manage our respective areas of
endeavor.

Anybody use it?

Warm fuzzies? Bad vibes?
  #2  
Old October 28th, 2008, 06:59 PM posted to microsoft.public.access
Paul Shapiro
external usenet poster
 
Posts: 635
Default Visual SourceSafe: Anybody Used It For An MS Access Project

I like it as a single developer. Been using it for years. Sourcesafe has a
reputation for being susceptible to corruption, so be careful about backing
up the Sourcesafe database (which is a very large collection of files, and
not a real database). I've never had serious problems with it. It's free
with my MSDN subscription, so I haven't investigated alternatives. I use it
for my own privately-used databases too, not just those developed for
clients.

I love the complete history of every change you ever make. When a client
tells me something stopped working, I can reliably see every change to the
code. Or the fact that nothing has changed in that part of the code in 3
years, so something else is the issue. Sourcesafe lets you apply a label to
the entire code at a point in time. I label every customer release, which
makes the history tracking easy.

I like being able to share forms and modules across databases, using
Sourcesafe's sharing. I can edit the code in any of the databases, and it
will be updated in the others the next time I build the db from Sourcesafe.
I use this for my standard error-handling code and form, and for my
library-type code. It's nice not having to remember to fix the same bug or
make the same enhancement in different databases.

I like the fact that if your Access db is corrupted, you just build a new
copy from Sourcesafe. I tend to check work in frequently, so I don't lose
much if the Access db does get corrupted. In earlier Access versions, using
Sourcesafe seemed to increase the corruption likelihood, but I don't see a
problem in Access 2007 and I don't remember issues in 2003. The one issue I
do remember is that a sourcesafe-integrated database sometimes had huge
problems when developing in Access 2003 and deploying in Access 2007. If
that's your situation, let me know and I'll send you the workaround lists.
Now I develop in Access 2007 and deploy in either 2007 or 2003 without
problems. No sourcesafe issues. Before deployment, you compact & repair the
db. Each time you compact & repair a sourcesafe-integrated db, Access asks
if you want to remove the sourcesafe integration. For deployment, say Yes.
If I'm deploying in Access 2003, I open the db in a virtual machine running
Windows XP and Office 2003 (the oldest software any of my clients are using)
to adjust the code references.

Depending on your Access version, hunt on Microsoft's website to find the
Access-Sourcesafe integration components. They used to cost money, but
they've been free since Access 2003.

"PeteCresswell" wrote in message
...
They just threw another programmer at me - along with the requirement
that we use Visual Source Safe to manage our respective areas of
endeavor.

Anybody use it?

Warm fuzzies? Bad vibes?


  #3  
Old October 28th, 2008, 08:20 PM posted to microsoft.public.access
(PeteCresswell)
external usenet poster
 
Posts: 438
Default Visual SourceSafe: Anybody Used It For An MS Access Project

Per Paul Shapiro:
. The one issue I
do remember is that a sourcesafe-integrated database sometimes had huge
problems when developing in Access 2003 and deploying in Access 2007. If
that's your situation,


Not yet - and probably if we go 2007, I'd convert one time and
stay w/2007.

Right now, I use the front end's name as part of my versioning
scheme. SfimApp.273.mdb is version 2.73. SfimApp.274.mdb is
2.74.

Safe to say that this scheme is about to go out the window?

If so, how do you deploy if the old version's file name is the
same as the new one? I'm currently using a .BAT file that
parses a Version.txt and copies the latest-and-greatest to the
user's C: drive.

I guess I could build from VSS into SfimApp.mdb, and then rename
it to SfimAppl.275.mdb before elevating - but maybe greater minds
than mine have a more elegant solution..... like maybe a
dedicated app to replace the .BAT file that looks into the .mdb's
props?
--
PeteCresswell
  #4  
Old October 28th, 2008, 08:22 PM posted to microsoft.public.access
Klatuu[_3_]
external usenet poster
 
Posts: 396
Default Visual SourceSafe: Anybody Used It For An MS Access Project

Paul pretty much said it all. There is one thing to note, there is a
utility you need to download if you are using VSS with Access, but it has
been so long, I'm not sure where it is anymore. Some where in the vast
laberynth of Microsoft or MSDN.

As to keeping version separate, I find the easiest method is Labeling. Just
read up on it in VSS Help.

"PeteCresswell" wrote in message
...
They just threw another programmer at me - along with the requirement
that we use Visual Source Safe to manage our respective areas of
endeavor.

Anybody use it?

Warm fuzzies? Bad vibes?



  #5  
Old October 28th, 2008, 09:59 PM posted to microsoft.public.access
Paul Shapiro
external usenet poster
 
Posts: 635
Default Visual SourceSafe: Anybody Used It For An MS Access Project

I deploy to clients with the same file name each time. The current front end
db sits in a share on their server. The user runs the app by executing a
batch file which always copies the current FE to the local computer and then
executes it. This takes care of upgrades and any corruption or bloating by
starting with the latest clean FE each time they run. The extra time to copy
the FE across the network is insignificant.

But it's not a big deal either if you want to rename the FE before
distribution. You have to make an "extra" copy anyway to compact & repair to
remove the sourcesafe properties before distribution. Otherwise the user
gets a warning that SourceSafe is not available.

If I'm doing the installation I keep copies of the older FE's in an
OldVersions subfolder of the current installation. I usually distribute the
FE in a zip file, and I give each zip file a custom name with the version
number. If the client does the installations, I recommend they also keep the
old FE zip files. In any case, I keep copies of all released versions on my
own system.

When I'm ready to convert a db to a new Access version for development, I
check out everything from Sourcesafe. Then close the db and open it with the
new Access version. After making sure everything looks good, check
everything back into SourceSafe. Now you should be able to create a new db
from SourceSafe using the new Access version.

"(PeteCresswell)" wrote in message
...
Per Paul Shapiro:
. The one issue I
do remember is that a sourcesafe-integrated database sometimes had huge
problems when developing in Access 2003 and deploying in Access 2007. If
that's your situation,


Not yet - and probably if we go 2007, I'd convert one time and
stay w/2007.

Right now, I use the front end's name as part of my versioning
scheme. SfimApp.273.mdb is version 2.73. SfimApp.274.mdb is
2.74.

Safe to say that this scheme is about to go out the window?

If so, how do you deploy if the old version's file name is the
same as the new one? I'm currently using a .BAT file that
parses a Version.txt and copies the latest-and-greatest to the
user's C: drive.

I guess I could build from VSS into SfimApp.mdb, and then rename
it to SfimAppl.275.mdb before elevating - but maybe greater minds
than mine have a more elegant solution..... like maybe a
dedicated app to replace the .BAT file that looks into the .mdb's
props?
--
PeteCresswell


  #6  
Old October 29th, 2008, 06:11 PM posted to microsoft.public.access
PeteCresswell
external usenet poster
 
Posts: 224
Default Visual SourceSafe: Anybody Used It For An MS Access Project

On Oct 28, 4:22 pm, "Klatuu" wrote:
Paul pretty much said it all. There is one thing to note, there is a
utility you need to download ....


Thanks. I'm chasing it down right now.

In addition to the util, can anybody think of any Access-specific ins-
and-outs?

e.g. Do we "check in" the entire front end .mdb and let SourceSafe
slice and dice it?

Or do we break it up ourselves and check it in piece-by-piece? e.g.
each basic module, each form, each screen, and so-forth.

  #7  
Old October 29th, 2008, 06:33 PM posted to microsoft.public.access
PeteCresswell
external usenet poster
 
Posts: 224
Default Visual SourceSafe: Anybody Used It For An MS Access Project

On Oct 29, 2:11 pm, PeteCresswell wrote:

Thanks. I'm chasing it down right now.

In addition to the util, can anybody think of any Access-specific ins-
and-outs?


I suspect the "utility" answers that question.

Seems tb an MS Access add-in called "the Access Source Code Control"
  #8  
Old October 29th, 2008, 07:50 PM posted to microsoft.public.access
Paul Shapiro
external usenet poster
 
Posts: 635
Default Visual SourceSafe: Anybody Used It For An MS Access Project

That's correct. Just make sure you get the version for your Access version.
Last time I looked they don't make it so easy to find. Before installing the
Access-specific utility you need to install SourceSafe on the server and
create a SourceSafe database. Then you can install the SourceSafe client on
your workstations. Last step is installing the Access add-in.

I only add the front-end db to SourceSafe, not the backend. Not much point
to controlling the backend because all the tables and their data are stored
as one big binary blob in SourceSafe. You can't see any change info.

When you're first adding a new db to SourceSafe, there's a menu item in
Access to Add DB to Sourcesafe. The integration utility automatically
extracts each form, query, report and module as text files and adds them to
the SourceSafe project. There is a single binary chunk for the linked
tables, references, etc. There's one cryptically named file whose only
purpose is to tell SourceSafe what name to give to the db when it creates a
new one from the SourceSafe project.

When you open any Access item in design mode, you get a prompt asking if you
want to check it out of SourceSafe. If you want to save your changes, answer
Yes. When you're finished you can right-click the object in the db window
and choose Check-In. I usually add a comment indicating the changes. You can
get reports of those comments or just review them if you're later looking to
see what changed. The SourceSafe Explorer also lets you get a list of all
saved versions of an object, and compare any 2 versions with changes
highlighted.

"PeteCresswell" wrote in message
...
On Oct 29, 2:11 pm, PeteCresswell wrote:

Thanks. I'm chasing it down right now.

In addition to the util, can anybody think of any Access-specific ins-
and-outs?


I suspect the "utility" answers that question.

Seems tb an MS Access add-in called "the Access Source Code Control"


  #9  
Old October 29th, 2008, 10:01 PM posted to microsoft.public.access
(PeteCresswell)
external usenet poster
 
Posts: 438
Default Visual SourceSafe: Anybody Used It For An MS Access Project

Per Paul Shapiro:
When you're finished you can right-click the object in the db window
and choose Check-In. I usually add a comment indicating the changes.


What does one do when they want to pass a copy of the app to
another developer?

Zip up the file from one's own drive with the VSS-specific stuff
in it and sent it to the other person?

I finally got a version of the app to load into VSS on the fourth
try.

If anybody else is going to do this, here's what I've discovered
so far:
---------------------------------------------------------------
1) Objects whose names begin with "$" must be deleted or renamed

2) Any links to non-existent tables must be deleted. e.g.
work tables which get created on-the-fly, but whose
links stay on after the work db is deleted.
---------------------------------------------------------------


Next steps for Yours Truly:
------------------------------------------------------------
1) Do a build from the version I've got loaded right now.

2) Test that build to make sure it has all it's functionality.

3) Figure out how to make a change to the build, then save the
change.

4) Re-build and see if the change sticks.

5) Figure out how to maintain parallel versions. e.g.
we're working towards a big release sometime next month,
but the users want a small change to the existing production
version. This seems like a biggie to me....
------------------------------------------------------------

--
PeteCresswell
  #10  
Old October 29th, 2008, 10:38 PM posted to microsoft.public.access
Paul Shapiro
external usenet poster
 
Posts: 635
Default Visual SourceSafe: Anybody Used It For An MS Access Project

Once the db is added to SourceSafe, each computer where you want to do any
development has to run the Create DB from SourceSafe utility to create their
own local sourcesafe-integrated copy of the db. If you move a db to another
computer, or even another folder on the same computer, Access disables the
sourcesafe integration.

I found performance was significantly better when I work with the db on my
local drive and not on a network drive. The "backup" is the SourceSafe data
on the server.

When creating the db from SourceSafe, the backend db needs to be available
or the linked tables are removed. I don't remember if it's necessary, but I
keep an empty copy of the backend db in the local folder where I have the
sourcesafe-integrated front end db.

The default setting is to always get the latest object version from
SourceSafe whenever you check it out for editing. So if you've updated a
form and another developer wants to use the latest version of that form
after you've checked it back in, they just have to check it out for editing
and then check it back in. There is a context menu item to Get Latest
Version, which would avoid the check-out/check-in cycle, but I don't
remember that working correctly. I developed habits from working with older
Access versions, so maybe it works correctly now.

When I'm ready to distribute a version to a client, I rename and save the
development db and then create a new "virgin" db from SourceSafe. I make a
copy of that for distribution, and remove the sourcesafe integration from
that copy. The original becomes my development db. This accomplishes what
the /decompile switch used to, removing any orphaned bloat.

The parallel versions bit is complicated. SourceSafe does have support for
branching projects, and later merging the changes back to the main code, but
I've never used it and I don't know if it works correctly with Access.
You'll have to do some reading and experimenting for that. I always release
from a single code base.

"(PeteCresswell)" wrote in message
...
Per Paul Shapiro:
When you're finished you can right-click the object in the db window
and choose Check-In. I usually add a comment indicating the changes.


What does one do when they want to pass a copy of the app to
another developer?

Zip up the file from one's own drive with the VSS-specific stuff
in it and sent it to the other person?

I finally got a version of the app to load into VSS on the fourth
try.

If anybody else is going to do this, here's what I've discovered
so far:
---------------------------------------------------------------
1) Objects whose names begin with "$" must be deleted or renamed

2) Any links to non-existent tables must be deleted. e.g.
work tables which get created on-the-fly, but whose
links stay on after the work db is deleted.
---------------------------------------------------------------


Next steps for Yours Truly:
------------------------------------------------------------
1) Do a build from the version I've got loaded right now.

2) Test that build to make sure it has all it's functionality.

3) Figure out how to make a change to the build, then save the
change.

4) Re-build and see if the change sticks.

5) Figure out how to maintain parallel versions. e.g.
we're working towards a big release sometime next month,
but the users want a small change to the existing production
version. This seems like a biggie to me....
------------------------------------------------------------

--
PeteCresswell


 




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


All times are GMT +1. The time now is 08:47 AM.


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