使用 TClientDataset 作为参数创建过程

Create a Procedure using a TClientDataset as a parameter

我想在 Delphi 2010 年创建一个程序。

此过程将接收一个 TClientDataset 'cdTable1' 参数和一个 X 整数,它必须执行 close/open 数据集的操作:

if cdTable1.Active then cdTable1.Close; cdTable1.Params.ParamByName('MyParameter').AsString:=X; cdTable1.Open;

如何定义它并运行它?

试试这个:

procedure TForm1.MyProcName(cds : TClientDataSet; X : Integer);
begin
    if cds.Active then 
        cds.Close; 
    cds.Params.ParamByName('MyParameter').AsString := X; 
    cds.Open;
end;

procedure TForm1.Button1Click(Sender : TObject);
begin
    MyProcName(cdTabel1, 1234);
end;

在定义 TForm1 的界面部分,您必须添加:

public
    procedure MyProcName(cds : TClientDataSet; X : Integer);

如果您使用的是 TDataModule,可能过程 MyProcName 会在那里找到一个不错的位置,而不是表单。