Home » SQL & PL/SQL » SQL & PL/SQL » Using PL/SQL to display a web page - speed/functionality issues
Using PL/SQL to display a web page - speed/functionality issues [message #194044] Wed, 20 September 2006 09:25 Go to next message
chris32680
Messages: 92
Registered: January 2006
Location: Charlotte
Member
Good afternoon,
Our software department is designing a new application to be used by our accounting group. This application is coded in pl/sql and is accessed through our local intranet via a browser window. We are using oracle 9.2.0.4.0 .

Basically, the web page itself allows for the entry of debits and credits to our internal accounts.
The web page consists of multple rows of form text fields.

When entering a new debit or credit, a popup is displayed that allows the user to enter the internal account. This account is validated, and once deemed ok, is returned to the appropriate text box on the parent web page via javascript and the cursor is placed in the next box. The way its coded now, when one row of data is completed and the cursor is moved to the next row, the page refreshes and validates that all the data entered on the previous line is error free, saves it to the appropriate table, and then displays the popup to enter the account for the next row. This refreshing has caused us a lot of headaches.

Sometimes the user can get ahead of the refreshing and start entering data on the next row's account popup before the previous row is validated. This can cause duplications and unnecessary errors. So to remedy this, we decided to put a timer on the popup to slow it down. That way the popup would wait an amount of time before it would display after validating a row. This seemed to work ok until a user had to enter a very large batch of details. Over a hundred details caused the popup to appear dreadfully slow. We played with the timer, and there was no happy medium. Either it was too fast and they could get ahead of the save/refresh, or it was too slow and they complained about the wait.

We are now concerned that there has to be a better way to approach handling such large amounts of data in a web page. Validation is necessary and speed is necessary.

Does anyone know of a technology that we should be utilizing for applications such as this that work with large amounts of data between our DB and a web page? Is there a different programming technique/language that we should be looking at?

Thanks for you help

if you need anymore information, just let me know.
Re: Using PL/SQL to display a web page - speed/functionality issues [message #194047 is a reply to message #194044] Wed, 20 September 2006 09:39 Go to previous messageGo to next message
scottwmackey
Messages: 505
Registered: March 2005
Senior Member
Enter the data in an CSV file, using something like Excel. Upload the file through the browser. Parse it, validate it, and log it. It's been done thousands of times.
Re: Using PL/SQL to display a web page - speed/functionality issues [message #194082 is a reply to message #194044] Wed, 20 September 2006 13:55 Go to previous messageGo to next message
rigatonip
Messages: 50
Registered: December 2005
Member
Can you delay validation until the whole form is submitted rather than after each row? Or can you do the validation checks with javascript without submitting the form? That would get rid of the page refreshes.

If there's a lot of inserting/updating done on the server, consider scheduling a job (could either run immediately or at some later time) to do the work asynchronously. That would allow the work to be done in the background and give control back to the user right away.
Re: Using PL/SQL to display a web page - speed/functionality issues [message #194346 is a reply to message #194044] Thu, 21 September 2006 10:31 Go to previous messageGo to next message
chris32680
Messages: 92
Registered: January 2006
Location: Charlotte
Member
scott,
your solution is not an option, although i appreciate your time in reading and thinking about it.

i work for a distribution company that develops our own proprietary inventory management software (which we also sell and support to several other similar companies) and this is an application that is part of that system. the user needs a way to be able to enter information into a screen and have it save to our database. using a csv file is cumbersome and would not be appreciated much by our users Smile

rigatonip,
that was my solution and is actually probably what we're going to end up with. (or at least some variation of that). the only reservation we have about validating large amounts of data at the end of entry is that error messages have to be returned if the user makes a mistake, and if they make a mistake on multiple rows, they could potentially have a page full of error messages that they would have to go back and correct. thus was the reason we had it validating each row. if an error was encountered, they knew immediately and could correct that row.

and since i'm not one of our main programmers, i've never gotten fully into javascript and its capabilities. can javascript dynamically check data against the constraints set up in oracle (plus other logical constraints) without having to refresh the page after checking?

thanks for the thoughts, folks.
Re: Using PL/SQL to display a web page - speed/functionality issues [message #194417 is a reply to message #194346] Fri, 22 September 2006 01:33 Go to previous messageGo to next message
sandeepk7
Messages: 137
Registered: September 2006
Senior Member

you can use a intermediate table. When one row completes put that row into this table. use all the check and validation on database level like constraints and foreign key for internal account. And when user finally saves the data flush this table, and put data to your main table.

Might this will work for u...

Sandy
Re: Using PL/SQL to display a web page - speed/functionality issues [message #194516 is a reply to message #194346] Fri, 22 September 2006 08:18 Go to previous message
rigatonip
Messages: 50
Registered: December 2005
Member
You're right. Sounds like you'd be making a trip back to the server unless its reasonable to download the info necessary for validation and check it via javascript on the client as each row is entered.
Previous Topic: Deleting database
Next Topic: not able to view timestamp column in enterprise manager console
Goto Forum:
  


Current Time: Thu Dec 08 20:24:18 CST 2016

Total time taken to generate the page: 0.09579 seconds