Updating SF customer application procedures?


Author
Message
Edhy Rijo
E
StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)
Group: StrataFrame Users
Posts: 2.4K, Visits: 23K
Hi All,

I would like to know how SF developers are updating SF applications at the customer site?

I have not done any yet, since I am still working on my first real SF project, but based on my experience with VFP application I would do the following for an application to be run in a local network by 3 or more workstations:

Initial Installation:

  • Install SF application in the server
    • Install MS-SQL-EXPRESS
    • Deploy Application Database (including Security Database if separate)
    • Create a Shared setting connection for all workstations

Updates:

  • Using any online method like the one provided by InstallAware setups, download any available update.
  • If there is an update for the database
    • Make sure everybody is lock out the database (don't know how to do this yet :heheSmile
    • Run the DDT package update and update the database (there should be a way to know if the update was sucesfull or not, maybe a database version number or something else)
    • Let the update Installation to remove previous installation at the workstation and then re-install it again as per Windows Installer rules.

Please keep in mind that I have not done anything of the above yet, so feel free to post any relevant information/experience with this or any other approach.

Thanks!

Edhy Rijo

Trent Taylor
Trent Taylor
StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 6.9K
This can be a very length topic.  We spent 1 year on our medical software installation before it was mostly "bullet-proof" though it was a very complicated installation which had to be simple enough for a front-desk girl to install yet have the sophistication of automatically doing what a team of IT people may have to do...so this is overkill for what you are trying to accomplish.  But the install is still a deep topic.

I know that we have talked about this some in the past and that you have InstallAware.  You will want to create a client installation that is a Single file build which gets installed manually the first time.  After that you can have it check for automatic updates through the client when the client application starts.  Here are a couple of posts (one of which I think was with you regarding the GAC) that might be helpful:

http://forum.strataframe.net/FindPost12850.aspx
http://forum.strataframe.net/FindPost10440.aspx

Edhy Rijo
E
StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)
Group: StrataFrame Users
Posts: 2.4K, Visits: 23K
Hi Trent,

Yes, I use InstallAware and I have suscesfully build a couple of setup for my applications in VFP which take advantage of the IA updating feature.

My concern here is that I am not dealing with VFP Tables anymore Wink and need to know how to address database updates automatically in a multiuser enviroment.  I am sure, I am not the only one trying to do this, and in some cases where I am the network administrator for my cstomer I will have complete access to the network resources, but the majority of the cases I will not have access to those resources and the application should take care being self updated.

I always try to build intelligent process without user intervention for updating and avoid support calls and frustrated customers.

Edhy Rijo

Trent Taylor
Trent Taylor
StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 6.9K
always try to build intelligent process without user intervention for updating and avoid support calls and frustrated customers.

So do we...that is why we have spent 1 year working on our medical installation tweaking it and getting it right.

My concern here is that I am not dealing with VFP Tables anymore and need to know how to address database updates automatically in a multiuser enviroment.  I am sure, I am not the only one trying to do this, and in some cases where I am the network administrator for my cstomer I will have complete access to the network resources, but the majority of the cases I will not have access to those resources and the application should take care being self updated.

I guess that you did not dynamically create your tables in the past in VFP and just copied them out.  We used Doug Hennigs Stonefield toolkitin VFP....but he never wanted to get into SQL Server...that is why we wrote the DDT.  As part of our installation, through InstallAware, we deploy our SQL structures and any related data into those structures.  You can refer to the Database Installer Sample that comes with the framework to see how to do this.

Edhy Rijo
E
StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)StrataFrame VIP (4.6K reputation)
Group: StrataFrame Users
Posts: 2.4K, Visits: 23K
Trent L. Taylor (03/13/2008)
I guess that you did not dynamically create your tables in the past in VFP and just copied them out.  We used Doug Hennigs Stonefield toolkitin VFP....

I have been using Stonefield since 1995 and never had situation where the update failed to properly update the VFP table structures without loosing any data.  My VFP Installation/Update process takes care of running a special .EXE I build with SDT classes and the proper metadata included in the EXE which is versioned and in synch with the application's .EXE file.

I have the DDT and will check it out in detail to see how to fully implement it in the update process.  I believe that by using the DDT packages it will not harm the data but will take care of ALTERing the tables/indexes, etc as needed?

I have been using xCase to design my data models for a long time and feel pretty comfortable with it, so I guess I could do the following:

  1. Design my data models in xCase including changes to the development database.
  2. Import the SQL metada into DDT so it can be use to update the customer database.

Does this make sense to you?

Edhy Rijo

Trent Taylor
Trent Taylor
StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)StrataFrame Developer (10K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 6.9K
believe that by using the DDT packages it will not harm the data but will take care of ALTERing the tables/indexes, etc as needed?

This is the entire purpose of the DDT.

Does this make sense to you?

Yeah, you can do that...it ends up being more work, but it is definitely doable. Smile

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search