Hello there,
I have a web application with the top form for the user input the information one line at a time. The bottom is the grid and once the user inputs the information and click on "Save To List" button, it will appear in the grid and the data will be saved into a table of the database in the background.
Now, some of users report to me that they might need to input like thousands of records into the system. In that case, it doesn't make sense for me to let them input line by line for bulk data input. Thus, I'm find the most efficient way for them to upload the data into the system.
What I'm wondering is that to have the XML file with the data(of course, I define the DTD tags in the XML and they need to fill in the data into the XML for all thousands of records they intend to upload; I've checked with them and they said there is no issue for them to prepare the XML from their side). And then I'll provide them a file uploading functionality to upload the XML file into the system.
Once successfully uploaded, all records in XML will be saved into the database table. From there, I extract those records and display in the grid of my web application for them to see and update if necessary.
This is how I'm envisioning for thise Bulk data upload.
1) Since I have very little experience with XMl heavily before, I'm not quite positive about this though. So, any contributions to get me into the right direction will be much appreciated. Or any other better suggestion or solution will be welcomed too.
2) Also, I have the following questions:
What is the best way to implement the solution: Parsing the XML data and store into the database table? In my web client application, just open up the XML, parse the data and loop throgh it and store them into the database?
And I talked to one of my co worker and he suggested me to use SQL DTS(now it called SISS on SQL server 2008) to import data from XML file to SQL table. Then, called this DTS/SISS package from my ASP.net web application. But he hasn't done that before either and he was not sure it's doable or not. Any suggestion on which one is the way to go?
3) Another question is that there might cases where the user might need to correct the data for the previously uploaded XML file. In that case, they will upload a new XML file for the correction. I'm wondering that to let them reupload everything(all the records instead of just the records which need to be corrected) so that I don't need to go and check and do the update for the records.
Alright, the challenge here is that my client wants to know the difference between the old data set and new data set. They basically want to know what has been changed? Some records might be deleted and some records' fields might be updated or even all fields of some records might be changed. They want me to do the difference report between two set of data.
I will keep both the old XMl and the new XML files. Also, I have will keep the old set of data and the new data of data in the table(two separate tables as well). Question here is that what is the best way to do the data difference here?
I need to get this done as soon as possible and your help is truly appreciated.
Thanks so much for your reply!!
Best,
Eve