Link to home
Start Free TrialLog in
Avatar of Ron Kidd
Ron KiddFlag for Australia

asked on

Code App for Windows Tablets

I have a utility created in VBA (Excel 2010) that connects to a MS SQL database and displays customer information.
I Have SQL Express Loaded on the Tablets.

The Utility works fast on a Desktop but is Sluggish on a Tablet (Especially the first time you open a item (2.5 Seconds) - There after it is faster (1 Second))

What would you recommend to speed this up?
What Other software could I use to create the Utility?

I need to take User inputs and use these to filter against the Database to return a list for the user to select from.
Clicking a Line will open to more details of the item.
See Screen shot.
User generated image
I was looking Online and found www.mobiforms.com Has anyone used this?
ASKER CERTIFIED SOLUTION
Avatar of Jacques Bourgeois (James Burger)
Jacques Bourgeois (James Burger)
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Ron Kidd

ASKER

I realize a Tablet doesn't have the power of a Desktop so looking for something to replace the Excel / VBA part of it.

I have come across http://www.infragistics.com/products/windows-forms Has anyone had any Experience with this one?
The Infragistic controls have a very good reputation.

But they require you to work in Windows Forms, that is standard Windows programs (.exe). This means that you need to learn to use Visual Studio, a programming environment fare more complex than VBA, used by professional programmers. There is however a free version for individual and small groups of programmers.

You also need to learn a .NET programming language. There is a VB.net that uses the same syntax as VBA, there is a relatively big step to climb to move from VBA to VB.net.

You also need to learn with the Infragistic tools themselves.

Thus, a lot of time before you can learn and master the new environment, tools and language. All this to develop programs that are still geared toward the desktop. That means programs that will suffer the same handicaps that Excel does on a tablet.

No matter what you do, tablets were not designed to do that type of work. Things might change in years to come and tablets become more powerful, but actually, except for very simple applications (Excel or anything that could take it's place, even partially, is not simple), they lack the performance required to run such desktop applications.

And apps, for which tablets were designed, are not designed to be number crunchers. They can be used for simple input and presentation, but never at the level that Excel does things.

In my opinion, for most work, you need to either tolerate the lack of performance, or keep things on the desktop.
Thanks James

Would I need Infragistic controls or could it all be achieved in Visual Studio?

I'm considering throwing together a rough test utility and seeing if there is a difference in speed. (I have VBA desktop utilities that could benefit from as speed gain also)
All the Utility's do is retrieve, display and update the SQL database. I have read that VBA is Slow interacting with SQL - Is a Visual Studio application faster at SQL Access?

Lastly If I was to do a sample would you have any recommendations of books or online Tutorials that I could look at to learn the Basics of Visual Studio and VB.Net?
Visual Studio has all the controls you need to create an application. Infragistics simply sells controls that have a better (a lot better) look and can have extra properties that can make them easier to use.

For somebody who comes with an Excel or an Access background however, you will probably want to display your data in a rows and columns format, similar to Excel. In such a case, the grid that comes with Visual Studio is an horror to use, even for an experienced .NET programmers. Because I give training on Visual Studio, I force myself to stick to what comes with it, so I have no direct experience with stuff outside of the tools it provides. But I meet a lot of programmers. Most of those who have a lot of use for grid display end up buying a third party grid. Infragistics is one that they usually like.

-----

Although applications made with Visual Studio are usually faster than what you can do in VBA when both are run on a desktop, this may not translate to a tablet. I repeat that tablets were created first for simple apps (à la Windows 8) that communicate with a server in the background. When you try to run stuff such as SQL Server and a real application on a tablet, be it VBA or Visual Studio, unless you have a top of the line tablet you are trying to run a Ferrari with a Lada engine. It runs, but its slow no matter your tires, the type of fuel or your way of driving it.

And you have to take into account the time, energy and knowledge that is needed to create an application in .NET. It is far more involving than what it is in VBA. In VBA, you always have an application that does a lot of stuff for you. In VB.NET, you are creating the application from scratch. There is a lot more coding to do. You need to understand the Windows environment a lot better than you do in VBA. You need to be aware of security issues a lot more than simply requiring a password and protect/unprotect a Worksheet.

But because you are starting from scratch, your application can be optimized for a specific need instead of being run through a generic tools such as Excel. This is where it gain performance. But you need to work harder to get it to work at all.

As for documentation an tutorials, the best thing to do is to have a training sessions with me, that is if you can come to Montreal as are at ease with French :-)

I have to say that its been many years that I have stopped looking at books and tutorials. Books are so thicks and new versions of Visual Studio get out at such a pace that most books, are written with the beta and even the alpha versions of Visual Studio. By the time they get out the 2nd edition, it's too late, a new version of the software is already there.

I used to tell to my students that are not professional programmers and are a little overwhelmed by all the stuff that we see in the training session to start with something very step by step, such as VB.NET for dummies. It helped them review the basics and practice using the software. Then, go to the Internet for specific questions or articles. Articles on the Internet are usually better than books, because they can be revised fast. A change that can take 6 months to get in the 2nd edition of a book can be made in 3 minutes on a web page. And you do not have to buy a second copy of the book to make sure that what you read is what you have.
Avatar of Martin Liss
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.