if form1.add=false then
     begin
        position := 0;
        with form1.ClientDataSet1  do
        begin
         Edit;
         FieldByName('Fcredit').asstring:=self.CreditEd.Text ;
         FieldByName('Fpay').asstring:=PayEd.text;
         FieldByName ('Fprepay').asstring:=prepayEd.text;
         FieldByName ('Fexcept').asstring:=ExceptEd.text;
         FieldByName ('Fuseful').asstring:=floattostr(2500-strtofloat(CreditEd.text));
         FieldByName ('Fmemo').asstring:=Memo1.text;
        end;
         DecodeDate(strtodate(form1.ClientDataSet1.fieldByName('Fdate').asstring),y1,m1,d1);
         m1:=m1+1;
         lDate:=EncodeDate(Y1,m1,1);
         lDate:=lDate-1;
          while (strtodate(form1.ClientDataSet1.fieldByName('Fdate').asstring)<> lDate) and (form1.ClientDataSet1.recno<=form1.ClientDataSet1.recordcount-1) do
           begin
              Credit:=floattostr(form1.ClientDataSet1.fieldByName('Fcredit').asfloat-
              form1.ClientDataSet1.fieldByName('Fpay').asfloat+form1.ClientDataSet1.fieldByName('Fprepay').asfloat+
              form1.ClientDataSet1.fieldByName('Fforwar').asfloat);
              form1.ClientDataSet1.Next;
              position := position +1;
              form1.ClientDataSet1.edit;
              form1.ClientDataSet1.FieldByName('Fcredit').asstring:=Credit;
              form1.ClientDataSet1.FieldByName('Fuseful').asstring:=floattostr(2500-strtofloat(Credit));
           end;
         //form1.ClientDataSet1.Edit;
         form1.ClientDataSet1.Post;
         Form1.ClientDataSet1.ApplyUpdates(-1);
         Form1.ClientDataSet1.MoveBy(-position);
      end更新的时候提示, 列名'forder' 无效(我有FORDER这个字段!)不知道为什么会出现这样的错误!而下面这个不会出错!一样没有改变FORDER字段
else
        begin
        with form1.ClientDataSet1 do
        begin
        FieldByName('Fdate').asstring:=DateEd.text;
        FieldByName('Fcredit').asstring:=CreditEd.text;
        FieldByName('Fpay').asstring:=payEd.text;
        fieldByName('Fprepay').asstring:=prePayEd.text;
        FieldByName('Fexcept').asstring:=ExceptEd.text;
        fieldByName('Fuseful').asstring:=floattostr(2500-strtofloat(CreditEd.text));
        fieldByName('Fmemo').asstring:=Memo1.text;
        end;
        try
         form1.ClientDataSet1.Post ;
         Form1.ClientDataSet1.ApplyUpdates(0);
        except
          on e:Exception do
             showmessage(pchar('数据提交出错'+#13+#13+e.message))
        end;