在客户端我用ClientDataSet控件,新增记录后在SQL2000数据库有更新的记录,但在DBGrid中没有显示出来,退出客户端程序,并重新进入才可看到新增的记录,不知是何故?
CDS2就是ClientDataSet控件.DataSource1.DataSet:=CDS2;
DBGrid1.DataSource:=DataSource1;
CDS2.Active:=True;
CDS2.Append;
CDS2.CommandText:='insert into CalPcs(CalDate,Dept,Sections,StaffName,PDTNo,ProdNo,ProdName,ProdStep,StepQty,StepTime,WorkTime,BeiZhu)'+' values(:CalDate,:Dept,:Sections,:StaffName,:PDTNo,:ProdNo,:ProdName,:ProdStep,:StepQty,:StepTime,:WorkTime,:BeiZhu)';
CDS2.FieldValues['CalDate']:=Trim(edtCalDate.Text);
CDS2.FieldValues['Dept']:=Trim(edtDept.Text);
CDS2.FieldValues['Sections']:=Trim(edtSections.Text);
CDS2.FieldValues['StaffName']:=Trim(edtStfName.Text);
CDS2.FieldValues['PDTNo']:=Trim(edtPDTNo.Text);
CDS2.FieldValues['ProdNo']:=Trim(edtProdNo.Text);
CDS2.FieldValues['ProdName']:=Trim(edtProdName.Text);
CDS2.FieldValues['ProdStep']:=Trim(edtProdStep.Text);
CDS2.FieldValues['StepQty']:=Trim(edtStepQty.Text);
CDS2.FieldValues['StepTime']:=Trim(edtStepTime.Text);
CDS2.FieldValues['WorkTime']:=Trim(edtWorkTime.Text);
CDS2.FieldValues['BeiZhu']:=Trim(edtBeiZhu.Text);CDS2.Post;
CDS2.ApplyUpdates(0);
CDS2.Refresh;

解决方案 »

  1.   

    DataSource1.DataSet:=CDS2;
    DBGrid1.DataSource:=DataSource1;
    CDS2.Active:=True;
    CDS2.Append;
    CDS2.CommandText:='insert into CalPcs(CalDate,Dept,Sections,StaffName,PDTNo,ProdNo,ProdName,ProdStep,StepQty,StepTime,WorkTime,BeiZhu)'+' values(:CalDate,:Dept,:Sections,:StaffName,:PDTNo,:ProdNo,:ProdName,:ProdStep,:StepQty,:StepTime,:WorkTime,:BeiZhu)';
    CDS2.FieldValues['CalDate']:=Trim(edtCalDate.Text);
    CDS2.FieldValues['Dept']:=Trim(edtDept.Text);
    CDS2.FieldValues['Sections']:=Trim(edtSections.Text);
    CDS2.FieldValues['StaffName']:=Trim(edtStfName.Text);
    CDS2.FieldValues['PDTNo']:=Trim(edtPDTNo.Text);
    CDS2.FieldValues['ProdNo']:=Trim(edtProdNo.Text);
    CDS2.FieldValues['ProdName']:=Trim(edtProdName.Text);
    CDS2.FieldValues['ProdStep']:=Trim(edtProdStep.Text);
    CDS2.FieldValues['StepQty']:=Trim(edtStepQty.Text);
    CDS2.FieldValues['StepTime']:=Trim(edtStepTime.Text);
    CDS2.FieldValues['WorkTime']:=Trim(edtWorkTime.Text);
    CDS2.FieldValues['BeiZhu']:=Trim(edtBeiZhu.Text);CDS2.Execute;cds2.commandtext:='select * from xxxx where xxxx';
    cds2.open;