OK. It appears that the grid control is good for displaying tables with data stored in a database connection. However, I am having a few dilemmas that need some clarification. I will try to be as clear as possible in outlining my problem with the control thus far. <BR><BR>I have a database consisting of nearly forty tables. I need to assemble a massive report using data from those tables which have been joined together in a SQL statement. <BR><BR>The required report to be generated needs to have some fields perform calculations using a formula based upon the current date with reference to a date in the database. If the date is within the range set by the database, then it would show the calculation, else it would not. On and on it would go while looping through the records and while it was doing that, it would total the values from those calculations. Finally, the total results would be exported to a file using the FileSystemObject to be imported into a server component for a dynamic barchart page.<BR><BR>I successfully performed these functions using Classic ASP, but now I need to convert to ASP.NET. So, once again, here are my questions.<BR><BR>First, is it possible to perform calculations with data that is stored in the database, and then based upon the results of those calculations to either show the calculation or not in a table cell in a report?<BR><BR>Second, is it possible to total the results from the values that are calculated while the server loops throught the recordsets? I need to do this for twenty-four fields, as the report was designed for resource allocation purposes.<BR><BR>Third, is the grid control supposed to be the "replacement" for Crystal Reports or would Crystal Reports dynamically do as I require based upon the selection from a DropDownListBox?<BR><BR>Any assistance would be greatly appreciated.Here is a sample from one of the calculations. As you can see, I assign a date field and then perform a calulation based upon the results from those calculations.<BR><BR>While Not RS.EOF<BR> COUNTRY_NAME = RS("COUNTRY_NAME")<BR> START_ACTIVITIES = RS("COUNTRY_FPI") - 90<BR> END_ACTIVITIES = RS("COUNTRY_LPO") + 31<BR> TOTAL_CTM = RS("TOTAL_CTM")<BR> MONTH_CELL_VALUE_CTM = CDbl(RS("PROBABILITY")) * CDbl(RS("WEIGHT")) * CDbl(RS("COUNTRY_TOTAL_CENTERS_SPONSOR"))<BR><BR> MONTH_VALUE=http://aspmessageboard.com/archive/index.php/01<BR> DATE_FIELD = MONTH_VALUE & "/" & DAY_VALUE_A & "/" & YEAR_VALUE_A<BR> If DateDiff("d",START_ACTIVITIES,DATE_FIELD)>0 and DateDiff("d",DATE_FIELD,END_ACTIVITIES)>0 Then<BR> <td class=reporttxt align=right>" & MONTH_CELL_VALUE_CTM & "</td>")<BR> TOTAL_CTM_JAN_A = TOTAL_CTM_JAN_A + MONTH_CELL_VALUE_CTM<BR> TOTAL_CTM_EQUIVALENTS_JAN_A = TOTAL_CTM_JAN_A/MONITORING_DAYS_PER_MONTH<BR> PERCENT_UTILIZATION_CTM_JAN_A = CInt((TOTAL_CTM_EQUIVALENTS_JAN_A/TOTAL_CTM)*100) & "%"<BR> else<BR> <td class=avgtxt> </td>")<BR> end if<BR> MONTH_VALUE=02<BR> DATE_FIELD = MONTH_VALUE & "/" & DAY_VALUE_A & "/" & YEAR_VALUE_A<BR> If DateDiff("d",START_ACTIVITIES,DATE_FIELD)>0 and DateDiff("d",DATE_FIELD,END_ACTIVITIES)>0 Then<BR> <td class=reporttxt align=right>" & MONTH_CELL_VALUE_CTM & "</td>")<BR> TOTAL_CTM_FEB_A = TOTAL_CTM_FEB_A + MONTH_CELL_VALUE_CTM<BR> TOTAL_CTM_EQUIVALENTS_FEB_A = TOTAL_CTM_FEB_A/MONITORING_DAYS_PER_MONTH<BR> PERCENT_UTILIZATION_CTM_FEB_A = CInt((TOTAL_CTM_EQUIVALENTS_FEB_A/TOTAL_CTM)*100) & "%"<BR> else<BR> <td class=avgtxt> </td>")<BR> end if<BR>...<BR><BR>Wend<BR><BR>Display the totals....<BR><BR>