MS Access on thin client

I have been approached to write a database to run on a thin client setup (they use Citrix) with dumb terminals.

They are already running one MS Access database in this way and have specified that they want MS Access used in this case too.

This is a totally new situation for me and I have a number of questions (I'll split up points as described)

What should I know before I start (300 - may be subdivided if more than one contributor)
Should I split the database or not (100)
Are there any difficulties with User management etc that i need to be aware of (100)
Who is Participating?
t_swartzConnect With a Mentor Commented:
Access will work fine, as will your database. I guess you really need to consider the limitations of access and multiple users in the same database. Those same principles apply in a citrix environment for the most part. If there is a client piece of software you have created to access the database, then you want to ensure that multiple instances can run on the citrix server with no issues.

I would make separate databases regardless. Ideally, you will house the database in a network share for simplified accessfrom multiple machines. As far a user management, no clue. I would be carefull with security on the access databases, from my limited experience with them, restricting the permissions too much seems to cause problems. Good luck.
alfalfa6945Connect With a Mentor Commented:
What should I know before I start:
 We have a very large Access application running on a citrix server on a client site. Peak use is only about 27 users, but even with very complex queries, it seems to work fine. No _real_ problems with 2 peope on the same record (I think one can edit (has the lock), one can view but not edit). I'd have to say code it like you would a regular Access application, no real need to try and make it "citrix" aware. Users connect to it in their own session, so even the "client" scenario that t_swartz mentioned shouldn't be an issue.

Should I split the database or not:
 Split it if the data is totally new and separate from the existing databse, share it if the data is the same. If the app doesn't need "access" to the other database, why use only one database? 2 heads are better than one. Lose one, and you're only 50% incapacitated (or is that decapitated?). You get the picture.

Are there any difficulties with User management etc that i need to be aware of:
 I would say no, but you may want to elaborate on what you mean. Do you mean user management in a sense that you have certain parts of the database accessable only to select people or are you thinking that your app needs to be "citrix" aware and perhaps need some special user management because of that?
markremmsAuthor Commented:
Thanks both of you.

It's reassuring to hear that Access will run OK on Citrix - sounds like I can carry on as normal in fact.  The client has specified that it will be used by 15 at a time max so that shouldn't be a problem.  Is the record locking behaviour specially coded to suit the environment in your case alfalfa or is it just default Access behaviour?

The database is a totally new build with no existing data so splitting sounds like the way to go.  Is there anything I should do to make working with the split databases easier.  Should I do the development with the custom VBA etc and then split using the wizard once development is complete (the easier method it would seem to me if it works!) or would it be more sensible to split early?

In terms of user management - yes I want the users to have different starting points within the database (different departments get different views at login) and also have different levels of access (e.g. management get to view higher level reporting views)

alfalfa6945Connect With a Mentor Commented:
To the best of my knowledge the locking behavior is default Access. I've been around that Access application throughout development (it was migrated from an Amiga sBase database, believe it or not :) and do not recall any special attention given the locking (other than what would be standard issues with Access and 2 people on the same record, citrix not being an issue).

You know, I would almost say code it the way you are comfortable doing it. If the wizard doesn't split it at the end, it's really not a big deal if the database isn't split. I don't thing size of db will be an issue for speed of access as the mdb file they have is at least 175mb in size and even the most complex query runs quickly and I have never seen it spike the cpu under heavy user load.

Not having coded any of this application (but being good friends with the guy did :) I can't tell you exactly how he did the users in this particular app. But what they have is pretty similar, as in there are different level of access within the database. None of it though has taken citrix into account, it was coded as an independant application. If this is a hint for; this particular Access application won't run on Access 2007 as 2007 does the users or permissions totally different than all previous versions of Access (I'm talking Access 95 and up, as that was the first incantation of this app). If you know what I am talking about on this, and why it no longer works on 2007, then that is how user rights were assigned on this application and it runs fine in a citrix environment.
CAVEAT: Th application asks for a username and password, but the username seems to be remembered from previous session, much like a windows login. Not to be confused with a standard citrix login (the app is running published), this is the Access app itself asking for the username/password.
Hope this turns a light on for you!
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.