How do I make simple multiple user access app?
Rob Cozens
rcozens at pon.net
Thu Jun 30 10:08:13 EDT 2005
Hi Keith,
>What's the very simplest way to build a basic card database stack which
>needs to be used by more than one person at once?
>
>This is a simple data capture tool which creates a new card for each chunk
>of data that's entered (details on a new product) and spits out a
>tab-delimited text file to be sent off to another organisation for their use.
>
>There's probably no need to alter existing data, but it would be necessary
>to let the user browse through previous entries. Easy enough:
>previous/next, popup menu listing the cards by product title, etc. We're
>talking just hundreds of items here, with simple sub-categories to keep
>browsing manageable if it grows much beyond that. But here's the twist...
>
>It is likely to be left open on someone's screen, but it is also likely to
>be needed by one or two other people at the same time.
It's not clear to me if more than one user needs to add new cards to the
app. If they do not, just publish the app on the network and only allow
write access to the person responsible for updating.
Assuming your needs are not that simple, you must script a means of
coordinating updates to the database among different the different runtime
instances of the app. One method is to use a "control file" which a user
must gain control of before updating the db. This allows you to avoid
using interprocess communications for coordination; but it is more
vulnerable to data collision. The other alternative is a client-server
approach, which avoids data collision by funneling all db access through a
server app. This is my preferred approach; but it involves scripting for
interprocess communication. The client-server approach is exemplified in
SDB <http://wecode.org/serendipity/>.
One other note, either method also requires a mechanism to allow one user
to lock a record to prevent others from changing it while she is working
with it. SDB allows both explicit (ie: by record) and automatic (ie: last
record accessed) record locking.
Rob Cozens CCW
Serendipity Software Company
"And I, which was two fooles, do so grow three;
Who are a little wise, the best fooles bee."
from "The Triple Foole" by John Donne (1572-1631)
More information about the use-livecode
mailing list