|

楼主 |
发表于 2010-4-17 22:01:33
|
显示全部楼层
procedure TMainForm.Button1Click(Sender: TObject);
const DBURL = 'Biz:\XXX\XXXX.Database';
var
I: Integer;
lBizFieldItem: TBizFieldItem;
lDesc: TTableDefDesc;
lCreator: TTableDefCreator;
begin
lDesc := TTableDefDesc.Create(nil);
//可从从设备对照表中得到多个表 with query_tables do
lDesc.FileName := 'SJB998.Table';
lDesc.DisplayName := '数据表998';
//lDesc.CreateMode := TCreateMode.CmNew; //新建不存在的'SJB1.Table'
lDesc.CreateMode := Business.Forms.TCreateMode.cmNew;
lDesc.LanguageExt := '.pas';
//lDesc.TableDef :=.... 定义TableDef
//可根据表,得到该表的字段 with query_fields do
lBizFieldItem := TBizFieldItem.Create(nil);
lBizFieldItem.ID := 'ZD1';
lBizFieldItem.DisplayName := '字段1';
//根据字段是varchar、datetime、num等,对字段的类型和长度进行赋值。
lBizFieldItem.DataType := TDataType.dtString;
lBizFieldItem.Size := 32;
lBizFieldItem.IsPrimaryKey := true;
lDesc.TableDef.FieldDefs.Add(lBizFieldItem);
lCreator := TTableDefCreator.Create;
try
lCreator.Execute(Business.Model.BizSys.ObjectInfo(DBURL).BizURL, lDesc,BizSys.GlobalContext);
lCreator.Save;
finally
lBizFieldItem.Free;
lDesc.Free;
lCreator.Free;
end;
end; |
|