jQuery in Action, 3rd edition
The moose likes General Computing and the fly likes Hospital Application In Dark Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Engineering » General Computing
Bookmark "Hospital Application In Dark" Watch "Hospital Application In Dark" New topic

Hospital Application In Dark

Prithiraj Sen Gupta
Ranch Hand

Joined: Sep 13, 2006
Posts: 92

Recently I got a Project.
A hospital has a software with number of modules like Transaction, Billing. etc etc. All kind of modules which is needed for an Hospital management. The most awkward thing with the application is that the application runs in VB 6. And the back end is oracle 9i(this is a good thing).

The Hospital has more than 150 terminals. The systems remain very busy all the time. As they are using VB6 which uses ADO.

Originally from http://www.startvbdotnet.com/ado/default.aspx
ADO was a connected data access, which means that when a connection to the database is established the connection remains open until the application is closed.

Originally from http://www.startvbdotnet.com/ado/default.aspx

ADO .NET addresses the above mentioned problems by maintaining a disconnected database access model which means, when an application interacts with the database, the connection is opened to serve the request of the application and is closed as soon as the request is completed.

Once the Application in the Hospital got hanged,because each time a request is needed to be sent to the Oracle Database, opens up a new connection. A oracle database expert was called for that reason and he increased the default number of session (150) to 2000. Application has started running but due to the connection traffic the application is too slow. I do programming in VB.NET and sometimes in Java too. What I have suggested is that a .dll file must be created which will have a reference inside the vb 6 code. The select Sql Commands from the vb6 will be send to the .dll file, that will create an XML file from the dataset in vb.net. A .XSL file will be used to organize the xml format to make this file readable to recordset in vb6.

I made a demo of an application using vb6 and VB.NET with a small data from MS access. The process runs successfully. What I am more anxious about is that the XML file which will be created in Real scenario will be very very heavy in size. That will definitely cross more than 5 MBs. And the reading from that file will be slow. But not as slow as it is in present condition.

VB.NET uses DOM to read and write the data which is a tree structured and It takes more time to read and write a XML file than the SAX Processes which is in Java.

Can I refer a Java Classes to do the thing in for the issue? If Possible how can I do that? and what could be the issues. Now its not feasible to change the whole application to any other platforms. we need to change the transaction part.

So, I would like to get some opinion regarding the issue.


Prithiraj Sengupta
Paul Sturrock

Joined: Apr 14, 2004
Posts: 10336

Both .NET and ADO support connection pooling. Can't you change the app to use this?

Also, MSSXML2 supports SAX. No need to use Java.

My suspicion is a change in technology will not fix this. It sounds like a design issue.

JavaRanch FAQ HowToAskQuestionsOnJavaRanch
Prithiraj Sen Gupta
Ranch Hand

Joined: Sep 13, 2006
Posts: 92
The application can't be changed now. As its a huge application it will need a huge time. Thanks for your opinion. I will go with that. Just cutting the codes of opening connection through VB replacing that with opening xml file and .net dll reference codes. I am worried for the kind of file that will be created, huge data together, inside a single XML file, is the biggest challenge. Reading those may become a nightmare.

Prithiraj Regards.
Gabriel Claramunt
Ranch Hand

Joined: May 26, 2007
Posts: 375

Seems like a client-server architecture problem. The obvious (although expensive maybe) is to scale up the Oracle server.
If size is a problem, XML doesn't seem the best idea: there's lot of information you don't need, and parsing it will never be fast. Why do you need the XML file? Can you use some kind of binary file? What about Excel or Access format? They're easily accessible though ODBC. (probably even CSV files would be better).
If the application uses VB data controls directly binding the UI with the Database, I don't see an easy way out other than converting the whole app. to VB.NET to enable a "disconnected" mode (hey! is Microsoft, that should be easy).

Software Surgeon
I agree. Here's the link: http://aspose.com/file-tools
subject: Hospital Application In Dark
It's not a secret anymore!