Changeset 20 for trunk/USystem.pas


Ignore:
Timestamp:
Jun 15, 2011, 11:11:59 AM (13 years ago)
Author:
george
Message:
  • Added: Import relation one and many from existed database.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/USystem.pas

    r19 r20  
    2727  TypeString = 'TypeString';
    2828  TypeFloat = 'TypeFloat';
     29  TypeDateTime = 'TypeDateTime';
    2930
    3031type
     
    103104    function AddProperty(ObjectId: Integer; Name, ColumnName: string; CustomType: Integer): Integer;
    104105    function AddPropertyNumber(ObjectId: Integer; Name,
    105       ColumnName: string; Default: Integer = 0; Min: Integer = 0;
     106      ColumnName: string; Default: Integer = 0; Min: Integer = Low(Integer);
    106107      Max: Integer = High(Integer)): Integer;
    107108    function AddPropertyFloat(ObjectId: Integer; Name,
    108       ColumnName: string; Default: Integer = 0; Min: Integer = 0;
    109       Max: Integer = High(Integer)): Integer;
     109      ColumnName: string; Default: Double = 0; Min: Double = 0;
     110      Max: Double = 0): Integer;
     111    function AddPropertyDateTime(ObjectId: Integer; Name,
     112      ColumnName: string; Default: TDateTime = 0; Min: TDateTime = 0;
     113      Max: TDateTime = 0): Integer;
    110114    function AddPropertyString(ObjectId: Integer; Name, ColumnName: string;
    111115      Default: string = ''; MaxLength: Integer = 255): Integer;
     
    307311
    308312function TChronisBase.AddPropertyNumber(ObjectId: Integer; Name,
    309   ColumnName: string; Default: Integer = 0; Min: Integer = 0;
     313  ColumnName: string; Default: Integer = 0; Min: Integer = Low(Integer);
    310314  Max: Integer = High(Integer)): Integer;
    311315var
     
    339343
    340344function TChronisBase.AddPropertyFloat(ObjectId: Integer; Name,
    341   ColumnName: string; Default: Integer; Min: Integer; Max: Integer): Integer;
     345  ColumnName: string; Default: Double; Min: Double; Max: Double): Integer;
    342346var
    343347  DbRows: TDbRows;
     
    356360    Data.Clear;
    357361    Data.Add('CustomType', IntToStr(CustomTypeId));
    358     Data.Add('Min', IntToStr(Min));
    359     Data.Add('Max', IntToStr(Max));
    360     Data.Add('Default', IntToStr(Default));
     362    Data.Add('Min', MySQLFloatToStr(Min));
     363    Data.Add('Max', MySQLFloatToStr(Max));
     364    Data.Add('Default', MySQLFloatToStr(Default));
    361365    Database.Insert(TypeFloat, Data);
     366    //CustomTypeId := Database.LastInsertId;
     367
     368    Result := AddProperty(ObjectId, Name, ColumnName, CustomTypeId);
     369  finally
     370    Data.Free;
     371    DbRows.Free;
     372  end;
     373end;
     374
     375function TChronisBase.AddPropertyDateTime(ObjectId: Integer; Name,
     376  ColumnName: string; Default: TDateTime; Min: TDateTime; Max: TDateTime
     377  ): Integer;
     378var
     379  DbRows: TDbRows;
     380  Data: TDictionaryStringString;
     381  CustomTypeId: Integer;
     382begin
     383  try
     384    DbRows := TDbRows.Create;
     385    Data := TDictionaryStringString.Create;
     386
     387    Data.Clear;
     388    Data.Add('Type', IntToStr(Integer(vtDateTime)));
     389    Database.Insert(CustomTypeTableName, Data);
     390    CustomTypeId := Database.LastInsertId;
     391
     392    Data.Clear;
     393    Data.Add('CustomType', IntToStr(CustomTypeId));
     394    Data.Add('Min', DateTimeToSQL(Min));
     395    Data.Add('Max', DateTimeToSQL(Max));
     396    Data.Add('Default', DateTimeToSQL(Default));
     397    Database.Insert(TypeDateTime, Data);
    362398    //CustomTypeId := Database.LastInsertId;
    363399
Note: See TracChangeset for help on using the changeset viewer.