Удаление Expression из столбца

Boa
Дата: 07.02.2006 12:17:06
Создал табличку, в ней несколько вычисляемых полей.

Когда все эти поля вычислены уже, хочу, чтоб в этих полях остались только значения, чтоб их можно было уже изменять.
Делаю так:
Private Sub itc_RemoveExpr(ByRef Table As DataTable)
    Dim NewTable As DataTable = Table.Copy
    Dim Row As DataRow
    Dim Col As DataColumn
    Dim AllCols As DataColumnCollection
    Table.Clear()
    For Each Col In Table.Columns
        If Col.Expression <> "" Then
            Col.Expression = ""
            Col.ReadOnly = False
        End If
    Next       
    For Each Row In NewTable.Rows
        Table.ImportRow(Row)
    Next
End Sub

Затем она ругается
Object reference not set to an instance of an object.
на строчках
if Not Convert.IsDBNull(PRow("Cost")) Then
    If Convert.IsDBNull(NewRow("Cost")) Then
        NewRow("Cost") = PRow("Cost")
     Else
         NewRow("Cost") += 1 ' Здесь ругается
     End If
End If

Как же правильно то сделать?
saint
Дата: 07.02.2006 15:29:00
поясните второй кусок что такое Prow и NewRow?

DBNull это не тоже самое что и null
Boa
Дата: 08.02.2006 15:36:41
Prow и NewRow - это строчки этой таблицы.
Поле Cost было вычисляемым, Expression стер, и тут делаю итог для этого поля.
Значение поля может быть Null, поэтому такие проверки.
Сейчас пока вышел из положения, путем удаления столбца и потом создаю новый.
Но тогда их порядок меняется...
saint
Дата: 08.02.2006 16:40:42
if Not Convert.IsDBNull(PRow("Cost")) Then
  if NewRow("Cost")<>null Then begin
    If Convert.IsDBNull(NewRow("Cost")) Then
        NewRow("Cost") = PRow("Cost")
     Else
         NewRow("Cost") += 1 ' Здесь ругается
     End If
   end
   else NewRow("Cost") = 1 end if
End If

?
saint
Дата: 08.02.2006 16:44:29
if Not Convert.IsDBNull(PRow("Cost")) Then
  if NewRow("Cost")<>null Then begin
    If Convert.IsDBNull(NewRow("Cost")) Then
        NewRow("Cost") = PRow("Cost")
     Else
         NewRow("Cost") += 1 ' Здесь ругается
     End If
   end
   else NewRow("Cost") = PRow("Cost") end if
End If

ну или так
Boa
Дата: 09.02.2006 10:47:43
Так проблема в том, что столбец cost существует.
Он был с Expression, которую я удалил.
И теперь хочу в этом столбце данные изменить руками.
В дебагере ItemArray для строки показывает все поля, Convert.IsDBNull с этим полем отрабатывает хорошо.
Но как только хочу в это поле записать значение - то ошибка.
Вопрос в том, как изменить процедуру удаления Expression из столбца.
Как писал выше, пока что просто удаляю такой столбец и добавляю новый с таким же именем. Но при этом порядок столбцов меняется, что не есть хорошо.
Может быть тогда кто-нибудь подскажет, как порядок столбцов поменять?
Заранее спасибо.