TParamsAssign (C++)
Description
This example saves parameters from a ClientDataSet, alters them, and restores them.
Code
TParams *SavedParams;
void __fastcall TForm1::SaveParamsClick(TObject *Sender)
{
// Save the parameters for the TDataSet.
SavedParams->Assign(CDS->Params);
}
void __fastcall TForm1::AlterParamsClick(TObject *Sender)
{
CDS->Params->CreateParam(ftInteger, "StateParam", ptInput);
CDS->Params->CreateParam(ftInteger, "MyParam", ptInput);
for (int i = 0; i < CDS->Params->Count; i++)
if ((CDS->Params->Items[i]->IsNull) &&
(CDS->Params->Items[i]->DataType == ftInteger))
// Items is the default property, so you can omit its name.
CDS->Params->Items[i]->AsInteger = -1;
}
void __fastcall TForm1::RestoreParamsClick(TObject *Sender)
{
// Restore the parameters to TDataSet.
CDS->Params->AssignValues(SavedParams);
}
#include <memory> // for STL auto_ptr class
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
// Initialize SavedParams.
static std::auto_ptr<TParams> _SavedParamsCleaner(SavedParams = new TParams());
}
Uses
- System.Classes.TCollection.Assign ( fr | de | ja )
- Data.DB.TParams.AssignValues ( fr | de | ja )
- Data.DB.TParams.CreateParam ( fr | de | ja )