I have two tables that include data that I need to display and update in a DataGridView bound to a strongly typed DataSet. The first three columns of the DataSet are fixed but the next columns need to be variable depending on a date range. The columns will start with the month of the beginning date and increase in months until the end date.
Here's a rough example of the data:
Notice the ScheduleDates table has exactly as many rows for each idSchedule as there are months between and including the startDate and endDate.Code:table - Schedule idSchedule startDate endDate 0 9/1/2007 11/31/2007 1 12/1/2007 3/31/2008 table - ScheduleDates idScheduleDate idSchedule Date isChecked 0 0 9/1/2007 1 1 0 10/1/2007 1 2 0 11/1/2007 0 3 1 12/1/2007 1 4 1 1/1/2008 1 5 1 2/1/2008 1 6 1 3/1/2008 0 Calculated Grid Date Range is 9/1/2007 to 3/31/2008 Data to display in the grid -- The x represents a CheckBox checked, the blank is no check, and the -- means the field is disabled. idSchedule startDate endDate Sep07 Oct07 Nov07 Dec07 Jan08 Feb08 Mar08 0 9/1/2007 11/31/2007 X X -- -- -- -- 1 12/1/2007 3/31/2007 -- -- -- X X X
The DataSet of course doesn't include the columns for the months until I add them. The problem then is that isn't really the same DataSet anymore so Updates and Deletes to the DataSet won't be capture properly.
I'm going to have to write a lot of convoluted code to scan the grid and update the two DataSet tables manually. I also don't have a clear idea of how I could tie each month column to the [Date] row value in the ScheduleDates table.
Is there any better way to do this?


Reply With Quote