Database ASP.NET form approval process

Posted on 2005-03-04
Medium Priority
Last Modified: 2006-11-17
Hi there,

I have a question I am not sure what category it belongs since it touches ASP.NET, SQL2000 and document routing concepts.
I have an ASP.NET application that has a SQL2000 database as a back end.
This ASP.NET application has several forms that need to be filled in (each form is based on a table in the database) and then they need to be approved by 3 gatekeepers (3 different employees of our organization).
I am not sure what is the correct way to implement the approval process.
(One idea I have is to have a table for each form with the log in ID of the people that need to approve it and then based on the users log in ID to allow only to the above users to click on a button.... but this idea seems to "small approach" based on the fact that in the near future we are going to have dozens of forms that will need to be approved).
Any ideas of what is the proper approach of database generated documents approval process would be very much appreciated.

Thank you,

Question by:ronchonchon
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
LVL 15

Accepted Solution

Ralf Klatt earned 1000 total points
ID: 13464026

It's never easy to imagine what else could be necessary for an approval process in a company you do not really know about ... an "interesting" article (at least!) can be found at:


Best regards,

Assisted Solution

margant earned 1000 total points
ID: 13464680
Well how about grouping users into an approval group, so for example one database design could be:

AGID PageID ApprovedOrNot

ApprovalGroupMembersAndState (linking table)
AGID UserID ApprovedOrNot

To use these tables you will have all required people approving which will add ApprovedOrNot into ApprovalGroupMembersAndState and once all of them approved you will change ApprovedOrNot in the ApprovalGroup table to true.

You may also choose to add a role-based authentication based on this approval group scenario or something of this sort. For more info on that please check out

Hope that helps,
LVL 15

Expert Comment

by:Ralf Klatt
ID: 13645425

I think that http://www.informit.com/articles/article.asp?p=171030&seqNum=8&rl=1 gave at least the same good overview to this question as http://www.codeproject.com/aspnet/formsroleauth.asp did ... if the provided answers are not to be deleted, they should at least be split!

Best regards,

Expert Comment

ID: 13649538
pinalDave, Raisor
I completely agree about a split, i think Raisor's link very informative, i learned quite a bit from it myself :)

Featured Post

Video: Liquid Web Managed WordPress Comparisons

If you run run a WordPress, you understand the potential headaches you may face when updating your plugins and themes. Do you choose to update on the fly and risk taking down your site; or do you set up a staging, keep it in sync with your live site and use that to test updates?

Question has a verified solution.

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

When it comes to write a Context Sensitive Help (an online help that is obtained from a specific point in state of software to provide help with that state) ,  first we need to make the file that contains all topics, which are given exclusive IDs. …
When the s#!t hits the fan, you don’t have time to look up who’s on call, draft emails, call collaborators, or send text messages. An instant chat window is definitely the way to go, especially one like HipChat. HipChat is a true business app. An…
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
Learn how to create flexible layouts using relative units in CSS.  New relative units added in CSS3 include vw(viewports width), vh(viewports height), vmin(minimum of viewports height and width), and vmax (maximum of viewports height and width).
Suggested Courses

752 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