RAD Studio VCL Reference
|
Specifies the value of the parameter when it represents an integer field.
property AsInteger: LongInt;
__property LongInt AsInteger;
Set AsInteger to assign the value for an integer field to the parameter. Setting AsInteger sets the DataType property to ftInteger.
Read the AsInteger property to determine the value that was assigned to an output parameter, represented as a 32-bit integer. The value of the parameter is converted to a 32-bit integer if possible.
C++ Examples:
/* This example requires a TClientDataSet and a button on a form. */ void __fastcall TForm1::Button1Click(TObject *Sender) { for (int I = 0; I < CDS->Params->Count; I++) { if (CDS->Params->Items[I]->IsNull && CDS->Params->Items[I]->DataType == ftInteger) CDS->Params->Items[I]->AsInteger = -1; }} void __fastcall TForm1::FormCreate(TObject *Sender) { CDS->LoadFromFile(GetCurrentDir() + L"/../CDS.XML"); CDS->Params->CreateParam(ftInteger, "StateParam", ptInput); CDS->Params->CreateParam(ftInteger, "MyParam", ptInput); }
Delphi Examples:
{ This example fills in the parameters of a client dataset from the entries of a list box. } procedure TForm1.Button4Click(Sender: TObject); var I: Integer; ListItem: string; begin { Call FetchParams to ensure parameters reflect server metadata } ClientDataSet1.FetchParams; with ClientDataSet1.Params do begin for I := 0 to Count - 1 do begin ListItem := ListBox1.Items[I]; case Items[I].DataType of ftString: Items[I].AsString := ListItem; ftSmallInt: Items[I].AsSmallInt := StrToIntDef(ListItem, 0); ftInteger: Items[I].AsInteger := StrToIntDef(ListItem, 0); ftWord: Items[I].AsWord := StrToIntDef(ListItem, 0); ftBoolean: begin if ListItem = 'True' then Items[I].AsBoolean := True else Items[I].AsBoolean := False; end; ftFloat: Items[I].AsFloat := StrToFloat(ListItem); ftCurrency: Items[I].AsCurrency := StrToFloat(ListItem); ftBCD: Items[I].AsBCD := StrToCurr(ListItem); ftDate: Items[I].AsDate := StrToDate(ListItem); ftTime: Items[I].AsTime := StrToTime(ListItem); ftDateTime: Items[I].AsDateTime := StrToDateTime(ListItem); end; end; end; end; procedure TForm1.FormCreate(Sender: TObject); begin ListBox1.Items.Add('Here is a string'); ListBox1.Items.Add('4'); ListBox1.Items.Add('3456789'); ListBox1.Items.Add('34'); ListBox1.Items.Add('0'); ListBox1.Items.Add('12.56'); ListBox1.Items.Add('4.23'); ListBox1.Items.Add('99.5'); ListBox1.Items.Add('4/12/53'); ListBox1.Items.Add('7:45:00'); ListBox1.Items.Add('4/12/53 7:45:00'); end;
{ This example requires a TClientDataSet and a button on a form. } {$IFNDEF UNICODE} uses SwSystem; {$ENDIF} procedure TForm1.Button1Click(Sender: TObject); var I : Integer; begin { Assign -1 to any integer parameter which does not have a value. } for I := 0 to CDS.Params.Count - 1 do if (CDS.Params.Items[I].IsNull) and (CDS.Params.Items[I].DataType = ftInteger) then { Items is the default property, so you can omit its name } CDS.Params[I].AsInteger := -1; end; procedure TForm1.FormCreate(Sender: TObject); begin {$IFDEF UNICODE} CDS.LoadFromFile(GetCurrentDir + '\CDS.XML'); {$ELSE} CDS.LoadFromFile(gsAppPath + 'CDS.XML'); {$ENDIF} CDS.Params.CreateParam(ftInteger, 'StateParam', ptInput); CDS.Params.CreateParam(ftInteger, 'MyParam', ptInput); end;
Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
|
What do you think about this topic? Send feedback!
|