autoupdate Front End

sorry you only need to add tblLocalVariables to your FE.

here is an alternative steps.
(setup on you computer)

1. create a "permanent" folder for your FE.
example, create a folder on you pc and put
the FE there:

c:\accDatabase

2. put the FE on the new folder.
3. open the FE and add tblLocalVariables (if not added yet).
4. add version number, eg. 2021.02, etc.
5. close the FE
6. copy the FE to your server (same path as with the BE).
7. open again the FE (from c:\accDatabase).
8. change and lower the version number, 2021.01.
9. close the FE.

6. run the autoupdater db (hold SHIFT key while the db is loading) on your pc.
7. open frmSetUp.
8. note that you must "select" the folder "c:\accDatabase" on "FRON END location on Client".
9. complete the rest of the setup and close the autoupdater.

10. copy the autoupdater db to a usb drive.
11. from Your c:\accDatabase, copy the FE to the usb drive.

(on each User's pc)
12. create same folder in c: (c:\accdatabase).
13. copy the FE from the usb to this folder.
14. copy the autoupdater to the desktop.
15 (optional, rename the autupdater db to Loader.accdb
16. open the loader (without using Shift key) and test.


//Edit: in case you are interested, i update the Loading of frmSetup.
It will now, add the correct path of the Local installed ms access.
Thank you Arnel, it seems my test is working, but this is when I used unsplit database, then I split. Now I am thinking how can I test my split database which is already go live. I renamed the Autoupdater to Loader, and it seems, this file that we can customize the icon on desktop for user to start up?.

Can I create the form in the Admin page to change the version value?. If the version value is the same and we run the Loader, does it still working to update and will say " no change", but for the user, I will not let them to show this message.

Thank you for letting me know if anymore I should add.

Thank you
Frank
 
You create the .bat file and save it on the server.
You create a shortcut on each computer that runs the .bat file.

Each time the user runs the .bat file, it copies down a new version of the FE.

This method isn't foolproof since it requires the users to follow directions. i.e. ONLY use the shortcut to open the app. To make the process more secure add a table to the FE and a table to the BE to store the FE version number. When the FE opens check to see that the two tables contain the same version number. If they do, continue. Otherwise. display an error message and close the FE.
Thank you Pat for an alternative, but I think let me just follow thru Arnel's suggestion.

Thank you
 
Can I create the form in the Admin page to change the version value?. If the version value is the same and we run the Loader, does it still working to update and will say " no change", but for the user, I will not let them to show this message.
it will not notify.
it will only notify (if you tick the notification), when it has copied a newer version.

if the user has already opened the FE (local), and later you add new FE version to the server folder, he won't know if there is new FE (on server using loader), until he quits his FE and launch the Loader again.
 
Hi Arnel,

From this text that we have on the Autoupdater text, we can save the Autoupdater in the same folder as Client FE's folder, It is not in desktop directory. Autoupdater Icon that we need to put on Desktop. Am I write?

"4. Place the AutoUpdater.mdb on the client computer, where it will reside. I often just keep it in the same folder as FE on the client computer."
 
Hi Arnel, with this autoupdater guidelines : . "This table MUST exist in the front end, and must not just be a linked table from the back end.", I tried to have a table that I import from your Autoupdater.mdb the table named: tblLocalVariables, but when I run the Loader, it disappeared and there is a linked table name tblLocaVariables. And moreover I tested again it did not update my FE. Can you tell me where was I wrong?.

How can I change the version value. Should I make a form and add the value to be bigger than the first one?. The first one that work is 4 and the new one, I change directly ID no 1 to have value 2021.1 but it did not work.

Thank you for your enlightening me.
 
it disappeared and there is a linked table name tblLocaVariables

open the FE. open the autoupdater (hold the shift-key).

on autoUpdater db there is a "sample" table there, tblLocalVariablesSample.
copy that table to your FE then rename it (on FE) to tblLocalVariables.

close the AutoUpdater.
close the FE and make a Copy.
put the Copy of the FE to the server (same folder as the BE).
(if you must, rename the "copy" same as the original FE name).

copy the FE and the autoUpdater to the Client machine.
run autoUpdater (hold-shift key) and run frmSetup.
complete frmSetup and close the db.

go to server folder and open the FE and change the version
number (tblLocalVariables) to anything higher than 1.
close the Fe (on server).

go back to the client machine and run AutoUpdater (normal not
holding shift key).
 
open the FE. open the autoupdater (hold the shift-key).

on autoUpdater db there is a "sample" table there, tblLocalVariablesSample.
copy that table to your FE then rename it (on FE) to tblLocalVariables.

close the AutoUpdater.
close the FE and make a Copy.
put the Copy of the FE to the server (same folder as the BE).
(if you must, rename the "copy" same as the original FE name).

copy the FE and the autoUpdater to the Client machine.
run autoUpdater (hold-shift key) and run frmSetup.
complete frmSetup and close the db.

go to server folder and open the FE and change the version
number (tblLocalVariables) to anything higher than 1.
close the Fe (on server).

go back to the client machine and run AutoUpdater (normal not
holding shift key).
Thank you Arnel it works now, and the tblLocalVariable does not look like linked table anymore. Pls correct me if I am wrong:
Below action we do just once for client computer at the time of set up
copy the FE and the autoUpdater to the Client machine.
run autoUpdater (hold-shift key) and run frmSetup.
complete frmSetup and close the db.

Below action is the one that we often do when we want all clients to update our front end:
put the Copy of the FE to the server (same folder as the BE)
go to server folder and open the FE and change the version
number (tblLocalVariables) to anything higher than 1.
close the Fe (on server).

My question is if we forget to update to make it higher number than previous one, will autoupdater still update? the client front end?. I know that autoupdater is the one that the client always click.

Thank you
 
go to server folder and open the FE and change the version
if you make the modification on the FE db, immediately increase the version
before doing actual modification. so you don't forget to it.
(add note on stick-o paper and stick it in your monitor, so you don't forget).
then, you copy the modified Fe to the server location.
forget to update to make it higher number than previous one
obviously it will not update. you examine the code and this
"field" is the one being examined by the autoUpdater.

you can make the number lower/higher and autoUpdater
will detect the "difference", it will update.
Below action we do just once for client computer at the time of set up
yes, you do the setup Only once.
Unless you moved the 'server' to another location/path.
 
if you make the modification on the FE db,
Thank you Arnel, you made everything clear. Now my question, I want to make both FE and Autoupdater to be ACCDE/Mde to prevent other people to try to modify, Can it work as usual?
 
Yes it will work.
 
Hi Arnel, with this autoupdater guidelines : . "This table MUST exist in the front end, and must not just be a linked table from the back end.", I tried to have a table that I import from your Autoupdater.mdb the table named: tblLocalVariables, but when I run the Loader, it disappeared and there is a linked table name tblLocaVariables. And moreover I tested again it did not update my FE. Can you tell me where was I wrong?.

How can I change the version value. Should I make a form and add the value to be bigger than the first one?. The first one that work is 4 and the new one, I change directly ID no 1 to have value 2021.1 but it did not work.

Thank you for your enlightening me.
Hi Arnel,

When Itried to read basVersionCheck, when the tblAutoUpdaterVariables version will be updated.

When we run Autoupdater, the message just say " have been updated to the version", but not mention the version value?

Thank you
 
open the FE. open the autoupdater (hold the shift-key).

on autoUpdater db there is a "sample" table there, tblLocalVariablesSample.
copy that table to your FE then rename it (on FE) to tblLocalVariables.

close the AutoUpdater.
close the FE and make a Copy.
put the Copy of the FE to the server (same folder as the BE).
(if you must, rename the "copy" same as the original FE name).

copy the FE and the autoUpdater to the Client machine.
run autoUpdater (hold-shift key) and run frmSetup.
complete frmSetup and close the db.

go to server folder and open the FE and change the version
number (tblLocalVariables) to anything higher than 1.
close the Fe (on server).

go back to the client machine and run AutoUpdater (normal not
holding shift key).
Hi Arnel,

I come back to you because I got this knowledge from you.
I am thinking now on where shall we put the explanation of what is new in the new version. Can we put it on the tblLocalVariables, in the field version?. Right now it is empty, because the way I update it is just change the version number for example 2022.02, if there is an update due to the new development, I changed it to be 2022.03. on the same record. and I do the process like you explained in order to get it update in every clients front end. Or I am supposed to have to add a new record to accommodate for the new version?

But if we write it in the table in the Version field it could be very long.

Thank you for your help.

Frank
 
if i recall AutoUpdater will Update your Front-End?
so, on the Fron-End (on your computer copy), you create tblLocalVariables with these fields:

ID (autonumber)
Property (short string)
Value (short text)

now add a single record (if you don't have).
and put "version" (without quote) to Property field.
the version number on Value field.

close the db

open autoupdater db and make a Linked table on tblLoalVariables of your FE.
if there is already a linked tblLovalVariables, just Relink it again.

But if we write it in the table in the Version field it could be very long.
make it short then, possible a number like 1.01 or 2022 ver 1, etc.
 
make it short then, possible a number like 1.01 or 2022 ver 1, etc.
Arnel, it seems you misunderstood what I mean. I mean is I want to explain what is new in the new version, let's say in version 2002.02. I developed new feature, ;like "there is level of authority, only user 2 can update/enter a new items of inventory. Menu no 1 is only used by user2". This explanation is to long in the table's field.

Also the table tblLocalVariables has only 3 fields as follows:
Field Name Datatype
ID Autonumber
Property Short text
Value Short text

So I do not understand what do you mean "version"
What I did initially, yes like you said, add record and I typed version, then the value. 2021.01.

Then when I made development for the second version. I did not add a new record, but instead, I just overrided 2021.01 with 2022.02. Was I wrong with the way I update it?. Actually I should have added record?. but with my way it did work too to automatically up. The problem I need a field to store the explanation what is new in the new version. If I put it in a field of the table, won't it be too long?

Thank you for any helps.

Frank
 
Pmfji,
I used to have a memo field that held the changes with the new version.
Just a simple memo field.
However every version was a new record, so I and anyone else could see the history of the changes.
 
you can implement the "What's New" feature on your FE instead of the AutoUpdater db.
create a table on FE:

tblWhatsNew (table)
ID (autonumber)
WhatsNew (Memo/Long Text)
Read (Yes/No)

create a form that will display the info from this table (see frmWhatIsNew).
it has Filter On Load and the Filter is:

Read = 0

create a function in Module that will Open the form when
there is At least a record to show (see CheckNewVersion function in Module1).

create a macro (autoexec macro) that will call the function.

if you made changes to the FE, write the new version on the FE and also
write what is new on this version in tblWhatsNew.

see this demo.
 

Attachments

The method I am using now is as follows:
1.When the FE open check the version and run bat
CODE:
Dim VERN As String
VERN = DLookup("[FVersionNumber]", "usysSoftInfo")
If VERN <> "WMR.HK_V200801.111.SQL" Then
MsgBox "炵緙追政衄陔唳掛.." & Chr(13) & "?尕緊,炵緙笭陔湖嶱!", vbInformation, "炵緙枑尨"
ShellEx "M:\_WMRLMS\WMRLMSUpdate.Bat"
DoCmd.Quit
End If
2..Bat file
@echo off
echo.
echo Updating Please Wait.....
timeout /t 15 /nobreak
echo System Will Open Soon.....
@echo off
XCopy M:\_WMRLMS\WMR_2020.accde C:\_WMRLMS\ /Y/I/Q
start C:\_WMRLMS\WMR_2020.accde
exit
 

Users who are viewing this thread

Back
Top Bottom