My application deals with building information. Users may want to view
autocad drawings for a particular building. The problem is that the central
server is so slow for some users that it could take five to ten minutes to
open an AutoCad drawing.
So I'm looking for a strategy where I could allow users to download these
drawings to their local hard drive and then access the drawings from there.
This is also complicated by the fact that users may have drawings on their
local PC that they should share with everyone else; so these drawings should
be copied to the server.
My problem:
How do I keep everything synchronized, yet allow users to either view
drawings from their local PC or the server. Also, the backend table will
need to know which file names are related to which buildings.
Each user has a personal backend file where I could store the location on
their PC where they want to store downloaded drawings. The table in the
common backend should probably store the file name for the drawing (not
including the path) separate from the path to the server location. Then the
user could somehow set that they want my app to open the drawing on their
local PC as opposed to opening the drawing from the server. If the drawing
isn't found on their local PC the code could request if they would like to
download that drawing.
But now what happens if the user has a drawing that they need to upload to
the server. Not only does a copy of the drawing have to be made, but the
back-end table needs to be updated with the file name (not including path)
for the particular building.
I'm pretty sure I can code most of this, but with debugging it will take a
fair amount of time.
Does this sound like a reasonable approach? Advice or suggestions are
greatly appreciated.
Thank you.
--
Message posted via AccessMonster.com http://www.accessmonster.com/Uwe/For...ccess/200611/1 4 1709
Why not just recreate a process similar to what would happen if the
drawings were opened directly from the server?
I think what I would do, is have a single back-end containing all file
names, and paths. The user would then, via his front-end, request one
of these files. You could copy the file from the server, to the local
machine, then flag the file in the back-end "in-use". Or maybe even
"in-use by [someone]".
Then, disable access to the file by other users, if the file is flagged
"in-use".
Also, don't let the files remain on the local machine. You could create
a seperate routine to restore the file to the server, or even create a
custom "close" button in AutoCad to to do it (AutoCad's VBA interface
basically the same as Access, and it's not a big deal to connect to the
BE).
rdemyan via AccessMonster.com wrote:
My application deals with building information. Users may want to view
autocad drawings for a particular building. The problem is that the central
server is so slow for some users that it could take five to ten minutes to
open an AutoCad drawing.
So I'm looking for a strategy where I could allow users to download these
drawings to their local hard drive and then access the drawings from there.
This is also complicated by the fact that users may have drawings on their
local PC that they should share with everyone else; so these drawings should
be copied to the server.
My problem:
How do I keep everything synchronized, yet allow users to either view
drawings from their local PC or the server. Also, the backend table will
need to know which file names are related to which buildings.
Each user has a personal backend file where I could store the location on
their PC where they want to store downloaded drawings. The table in the
common backend should probably store the file name for the drawing (not
including the path) separate from the path to the server location. Then the
user could somehow set that they want my app to open the drawing on their
local PC as opposed to opening the drawing from the server. If the drawing
isn't found on their local PC the code could request if they would like to
download that drawing.
But now what happens if the user has a drawing that they need to upload to
the server. Not only does a copy of the drawing have to be made, but the
back-end table needs to be updated with the file name (not including path)
for the particular building.
I'm pretty sure I can code most of this, but with debugging it will take a
fair amount of time.
Does this sound like a reasonable approach? Advice or suggestions are
greatly appreciated.
Thank you.
--
Message posted via AccessMonster.com http://www.accessmonster.com/Uwe/For...ccess/200611/1
Thanks for the response. The approach you suggest seems similar to a "check
out drawings" approach. A couple of questions:
1) If the file is copied from the server to the local machine, I'm not sure
why you suggest restricting others from accessing the file on the server. Is
it because the current user of that drawing might make changes to it? Of
course, I can only disable access to the drawings by others via my
application. If someone decides to open AutoCad and directly open the server
drawing, I can't stop that.
2) You're also suggesting that any drawings downloaded to the local PC should
be deleted. The reason for this would be to prevent local PC copies and
server copies from getting out of sync. I guess I could write code that
would check if drawings had been downloaded and then copy them back to the
server and delete them from the local PC. My only concern is that I've
noticed that copy code sometimes fails due to, I think, the slow server
connection. I've been using the VBA FileCopy command, but am considering
switching to fso or even the Windows API file copy command. Any thoughts on
that?
Rational Repairs wrote:
>Why not just recreate a process similar to what would happen if the drawings were opened directly from the server?
I think what I would do, is have a single back-end containing all file names, and paths. The user would then, via his front-end, request one of these files. You could copy the file from the server, to the local machine, then flag the file in the back-end "in-use". Or maybe even "in-use by [someone]".
Then, disable access to the file by other users, if the file is flagged "in-use".
Also, don't let the files remain on the local machine. You could create a seperate routine to restore the file to the server, or even create a custom "close" button in AutoCad to to do it (AutoCad's VBA interface basically the same as Access, and it's not a big deal to connect to the BE).
>My application deals with building information. Users may want to view autocad drawings for a particular building. The problem is that the central
[quoted text clipped - 38 lines]
>Message posted via AccessMonster.com http://www.accessmonster.com/Uwe/For...ccess/200611/1
--
Message posted via AccessMonster.com http://www.accessmonster.com/Uwe/For...ccess/200611/1
1) If the file is copied from the server to the local machine, I'm not sure
why you suggest restricting others from accessing the file on the server. Is
it because the current user of that drawing might make changes to it?
Yes, exactly. There is no other way to assure the files are in sync.
You can't even use file date/time property to compare. If a user opens
AutoCad, and just zooms or pans the drawing, on close, AutoCad will ask
to if you want to save. If the user clicks yes, the file will then look
the the latest and greatest, but, in reality, no changes were made.
If someone decides to open AutoCad and directly open the server
drawing, I can't stop that.
Yup. All your hard work here will be for nill.
2) You're also suggesting that any drawings downloaded to the local PC should
be deleted. The reason for this would be to prevent local PC copies and
server copies from getting out of sync.
Yup.
I've been using the VBA FileCopy command, but am considering
switching to fso or even the Windows API file copy command. Any thoughts on
that?
Not really. The only time I really deal with this is to move a file
(normally a .pdf) from a local temp location, to it's final server
location. I use the Name command:
Name strTempPathAndFile As strFinalPathAndFile
I have NEVER seen a problem with the file being moved properly, but
then again, I don't have the server issues you have referenced. I guess
you could compare file stats after the copy (file size, date/time...).
Or, after the copy back to the server, move the local file to a temp
directory, and delete after some sort of confirmation is completed.
Sound like your in a tough situation. Users being able to circumvent
your app. Not being able to realiably move files back and forth. Maybe
you should fix the server problems?
Jeff
rdemyan via AccessMonster.com wrote:
Thanks for the response. The approach you suggest seems similar to a "check
out drawings" approach. A couple of questions:
1) If the file is copied from the server to the local machine, I'm not sure
why you suggest restricting others from accessing the file on the server. Is
it because the current user of that drawing might make changes to it? Of
course, I can only disable access to the drawings by others via my
application. If someone decides to open AutoCad and directly open the server
drawing, I can't stop that.
2) You're also suggesting that any drawings downloaded to the local PC should
be deleted. The reason for this would be to prevent local PC copies and
server copies from getting out of sync. I guess I could write code that
would check if drawings had been downloaded and then copy them back to the
server and delete them from the local PC. My only concern is that I've
noticed that copy code sometimes fails due to, I think, the slow server
connection. I've been using the VBA FileCopy command, but am considering
switching to fso or even the Windows API file copy command. Any thoughts on
that?
Rational Repairs wrote:
Why not just recreate a process similar to what would happen if the
drawings were opened directly from the server?
I think what I would do, is have a single back-end containing all file
names, and paths. The user would then, via his front-end, request one
of these files. You could copy the file from the server, to the local
machine, then flag the file in the back-end "in-use". Or maybe even
"in-use by [someone]".
Then, disable access to the file by other users, if the file is flagged
"in-use".
Also, don't let the files remain on the local machine. You could create
a seperate routine to restore the file to the server, or even create a
custom "close" button in AutoCad to to do it (AutoCad's VBA interface
basically the same as Access, and it's not a big deal to connect to the
BE).
My application deals with building information. Users may want to view
autocad drawings for a particular building. The problem is that the central
[quoted text clipped - 38 lines]
Message posted via AccessMonster.com http://www.accessmonster.com/Uwe/For...ccess/200611/1
--
Message posted via AccessMonster.com http://www.accessmonster.com/Uwe/For...ccess/200611/1
Unfortunately, I'm not in a position where I can do anything about the server.
One last question. How do I handle the situation where there is an abnormal
shutdown and the flag that identified a drawing as "in use" is not reset to
false. If this happens, the drawing will not be able to be opened by anyone.
Rational Repairs wrote:
>1) If the file is copied from the server to the local machine, I'm not sure why you suggest restricting others from accessing the file on the server. Is it because the current user of that drawing might make changes to it?
Yes, exactly. There is no other way to assure the files are in sync. You can't even use file date/time property to compare. If a user opens AutoCad, and just zooms or pans the drawing, on close, AutoCad will ask to if you want to save. If the user clicks yes, the file will then look the the latest and greatest, but, in reality, no changes were made.
>If someone decides to open AutoCad and directly open the server drawing, I can't stop that.
Yup. All your hard work here will be for nill.
>2) You're also suggesting that any drawings downloaded to the local PC should be deleted. The reason for this would be to prevent local PC copies and server copies from getting out of sync.
Yup.
> I've been using the VBA FileCopy command, but am considering switching to fso or even the Windows API file copy command. Any thoughts on that?
Not really. The only time I really deal with this is to move a file (normally a .pdf) from a local temp location, to it's final server location. I use the Name command:
Name strTempPathAndFile As strFinalPathAndFile
I have NEVER seen a problem with the file being moved properly, but then again, I don't have the server issues you have referenced. I guess you could compare file stats after the copy (file size, date/time...). Or, after the copy back to the server, move the local file to a temp directory, and delete after some sort of confirmation is completed.
Sound like your in a tough situation. Users being able to circumvent your app. Not being able to realiably move files back and forth. Maybe you should fix the server problems?
Jeff
>Thanks for the response. The approach you suggest seems similar to a "check out drawings" approach. A couple of questions:
[quoted text clipped - 43 lines]
>Message posted via AccessMonster.com http://www.accessmonster.com/Uwe/For...ccess/200611/1
--
Message posted via AccessMonster.com http://www.accessmonster.com/Uwe/For...ccess/200611/1 This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics
by: Thomas Rademacher |
last post by:
Hallo,
I want to synchronize the main function of my script. I havn't a class
structure in my script.
def main():
# my code to synchronized
if __name__=='__main__':
main()
|
by: gene.ellis |
last post by:
Using a web interface, I am placing text into a SQL database. From time
to time, I would like to synchronize one of my other tables in the
database with the table that I am inserting content into....
|
by: J. H. Lernbeiss |
last post by:
Hallo!
I can show Autocad drawings in a Access Form useing Autodesk Volo View
Control field. But I can not print out this fields. The data of the drawing
are stord on a table with path and...
|
by: Zlatko Matić |
last post by:
There is a form (single form) and a combobox. I want that current record of
the form is adjusted according to selected value in the combobox. Cuurrent
record should be the same as the value in the...
|
by: ChadDiesel |
last post by:
I have a table of parts that I would like to add a field for drawings.
These drawings are image files that are on different tabs in an Excel
Workbook--1 image/drawing per worksheet/tab. Most of...
|
by: ChadDiesel |
last post by:
Hello everyone,
I'm having a problem with Access that I need some help with. The short
version is, I want to print a list of parts and part quantities that belong
to a certain part group---One...
|
by: Stephen |
last post by:
Hi,
Is there a sample application using ASP .NET to synchronize folder contents?
I want to synchronize folder contents on 2 different machines
Thanks,
Stephen
|
by: Fredmanglis |
last post by:
I've been teaching myself the C++ Programming language. So far however,
I have not come across any useful tutorials on how I can output
coloured text, create drawings or graphics in C++. All I can...
|
by: phil |
last post by:
Hope someone can help
We need to integrate the following into our C# (.net) product.
load DWG/DWF drawings from external files
|
by: Charles Arthur |
last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
|
by: emmanuelkatto |
last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud.
Please let me know.
Thanks!
Emmanuel
|
by: Hystou |
last post by:
There are some requirements for setting up RAID:
1. The motherboard and BIOS support RAID configuration.
2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
|
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
|
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new...
| |