Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium


2 x Access form as Public Display monitor

Posted on 2014-10-31
Medium Priority
Last Modified: 2014-11-05
I am planning a DB where I have an input form  that may be udated constantly.  I plan on using MSflexgrid for the main user interface form that will visually display the current situation like a scoreboard as well as being interactive for the user. I am planning on making a similar form  for a display information screen similar to the ones in airports, in that the format remains the same, but the content is constantly updated.  

Is this a done thing in Access or do I need to look at another solution for the wrapper like .net  Is it possible to have have 2 x different full screen forms runing off the one computer (in runtime)?
Question by:Johnni I
  • 3
  • 3
  • 2
  • +1

Expert Comment

ID: 40415397
You can use the timer control on the form (it's on the property page) to force a refresh/requery. Not sure if Access will provide the nicest layout, but it's definitely possible with Access.
LVL 58

Accepted Solution

Jim Dettman (Microsoft MVP/ EE MVE) earned 2000 total points
ID: 40415443
The answer is no  and yes.

Access (or any app for that matter), can't tell how many screens it's running on.  To an app, the only real difference is in its window properties of Left, Top, Right, and Bottom.  It's the station and hardware that determine  how things are displayed across two monitors.  All you need from Access is the ability to have two forms open at the same time, which of course it can do.

However the rub with Access is that everything must appear within the main window since it is a MDI interface. So there are one of two approaches:

1. Stretch the main windows so that it fills to monitors, then tile two forms side by side.

2. More simply, run two instances of Access talking to the same DB with one form each.

So that's the "yes" part.

I think though your biggest issue will be trying to control the interface and hide the main window ("Kiosk mode" style).

If you must have a clean interface, then I would consider using another tool, say something based on VB.net for the display.

LVL 85
ID: 40415450
I plan on using MSflexgrid for the main user interface form
And this further enforces Jim's suggestion of using a tool other than Access. The MSflexgrid was not designed to be used with Access, and you can run into issues with it - maybe not today, or tomorrow, but at some point MSFT may update Windows or one of the many underlying libraries on which MSFlexgrid depends, and it'll stop working. You would be much better off using something like VB.NET for this ...
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.


Author Comment

by:Johnni I
ID: 40415467
I'm liking the ideal of having multiple instances of  Access on the one machine for each screen.  As this is remote display, and if the computer powers down, then  have Access in startup file and open the program and open the forms and display ithem in the right places with a bit screen alignment code.  Possible? Also, 2 instances in Runtime, possible?

If I stick with Access as the Display screen, then it will  a breeze on the back of the user form and all connectiions to the BE.  Also if it was decided to make an interactive kiosk, then that would be easy to do also.  

Not knowing much about VB.net, would it be a straightforward learning experience form VBA to  create something similar to an Access form
LVL 85
ID: 40415506
It's certainly doable in Access, I would think - but Access was never really intended for doing things like this, so it's hard to say what challenges you might face.

VBA >> VB.NET is a fairly steep learning curve, depending on exactly how you've been using VBA. If you're more or less a drag-n-drop programmer, with a few blocks of Recordset code on the side, then you're road is quite steep and long. If you're accustomed to dealing with Class objects, have used API coding a good bit, and are generally "object-centric", then your path will be much easier.
LVL 58
ID: 40415530
<< Possible? Also, 2 instances in Runtime, possible?>>

 All possible.   I think it really comes down to how much control you want over the display form.   If you don't want anyone to know it's Access, then your going to have a tough time with it.   For example, just trying to get the main form hidden, which must be done with API calls and can easily lead to a "frozen" app (with the main window hidden, if you don't correctly handle an error, your in trouble because with the main window hidden, the resulting error dialog is hidden as well, so there is no option other then to end task it).

And ditto what Scott said on the Flexgrid.  I know many have used it with Access, but if you use any non-native control with Access not designed specifically for Access, your asking for trouble.   That's not to say it won't work (depends on what you do with the control), but you might have problems.

Access does not fully support the iDispatch interface used in ActiveX/COM, and quite often controls won't work or yield odd results.


Author Comment

by:Johnni I
ID: 40415618
THere is anoher program called VSflexgrid which is proprietry product from Component One that is similar to MSflexgrid.  That also is Active X, but there is a cost and includes a year of support.   I have the trial version which I am yet to trial, but it is supposed to play with Access.
that was 5 years

So far, I like everything I have read and seen of MSFlexgrid.  There are quite a few resources for learning online also. My first experiment was to insert my xtab query into a flexgrid that I converted from a demo without any issues. I haven't really read too many bad stories.  As far as the MSFT you mention, i've only found I source, that was 5 years ago and version 5.  I have version 6 if that makes a difference.

I think you are right about the displays would be better with a dedicated display in something other than Access forms.  What does VB.net have  that I can use as a time line and is like a cross between a project management tool and a booking system with bars for timespan when something is booked?
LVL 85
ID: 40415698
I've used VSFlexGrid in Access, and it works ... okay. It's difficult to work with from a design standpoint, and was quite slow.

What does VB.net have  that I can use as a time line and is like a cross between a project management tool and a booking system with bars for timespan when something is booked?
.NET includes quite a few controls, one of which is the DataGrid/DataGridView, but it has nothing that would be usable for those purposes out of the box. There are no "templates" like you might find in Access, but there are quite a few sample projects online. The professional developer base for .NET is much larger than for Access, it seems, so there's generally a lot of "pet" stuff out there, and many .NET devs have create user controls that can do some very cool things.

There are also a LOT of component suites that can do some really neat things (but most of them are quite pricey). I use DevExpress quite a bit, and really like their controls.

As far as the MSFT you mention
MSFT = Microsoft. My point was that MSFlexGrid is not guaranteed to work with Access, and updates from MSFT could very well render the control useless. Also, "support" for non-native controls in newer versions of Access is dicey, at best, so you're taking a risk if you decide to go outside the box.

Author Closing Comment

by:Johnni I
ID: 40425310
The solution from Jim answers the question I asked and even offers options to achieve this.

Now, I have spent the past few days researching what Scott and Jim have suggested in regards to a vb.net solution for the dispaly screens.  The initial project was for 1 main user and 2 other users just for updating occaisionally and of course the display screens.  

Access would be perfect, me thinks, and I could build something quickly with a few examples I found that  would assist me in the development and coding of what I am after.

I realise I do need to learn vb.net to achieve the best results. In my quest to find free code samples only unearthed a few results and that code is in Spanish.  Most of the results I found all point to various development tools that would allow me to achieve the results I am after- at a cost. I think you get what you pay for though, as some of the example visuals of the timeline schedulers look stunning.

It has been quite difficult for me as my whole project has to be re-assesed as active X is not recommended for use in Access and after researching, .net would be a very good current language to learn.   I have VS Express 2012 and it does have Datagridview.  I don't know if I can achieve what I am after in the express edition with its limitations. I don't know if I  could add a third party development tool also and still not have to buy the professional version of VS at this early stage of development.

 Thank you all for your input and will keep assessing all that I have learnt in this thread that has lead me to a far wider horizon.

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If you need a simple but flexible process for maintaining an audit trail of who created, edited, or deleted data from a table, or multiple tables, and you can do all of your work from within a form, this simple Audit Log will work for you.
This article shows how to get a list of available printers for display in a drop-down list, and then to use the selected printer to print an Access report or a Word document filled with Access data, using different syntax as needed for working with …
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …
Suggested Courses

577 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question