I wrote an engine that reads a table, pumps out a survey/questionaire and builds the entire survey from the database in .Net . I utilized the placeholder control, and had it not only create a control set, but also allow for returning and editing the responses to the first set of questions. The application is totally data driven, without any requirements for hard coding of controls or data. The survey, the questions, the responses allowed - all reside in the SQL database.
Now - When I went to save the data from the control set - I seperated the values with a pipe, and saved them to a column in the database. I figured I could write all the possible queries to a result application that would satisfy 99% of the users of the application.
My Boss decided to take the engine to a whole new level. He wants the engine to be utilized by all the 32 bit apps we have currently - the problem being - since the application is data driven without any reliance on controls - how can a dynamic application satisfy a win 32 app that relys on knowing where the data is stored? With the method I have of saving the results based on the dynamic controls set and seperating the field with pipes, it isn't easy to access the specific control, and the specific answer.
I was told to stop doing the application that way and to code it so each possible answer got its own line in the database. I did so - but a simple 19 question survey that spawns 87 possible answers per question, multiplied by the amount of users the survey was sent to - well, suffice it to say - my DB for the answers done the new way has over 40,000 rows. The corporate survey I did 5 months ago, utilizing this method would of caused over 3,000,000 rows - and that ain't good.
So - In essence - I need a data storage solution that will allow me to not assign a control with a field, but rather allow for a dynamic control set to save to a db - yet still allow for easy reporting via t-sql - and it can't suck up space with a loud whoosing sound either.
_________________________
_________________
Neo needed a pill. I pulled my own plug.