起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 198|回复: 12

【结贴】创建业务数据集必须传入有效的 AOwner 参数**

[复制链接]
发表于 2008-11-3 15:07:47 | 显示全部楼层 |阅读模式
在窗体里初始化TUserDataSet

DataSet:=TUserDataSet.Create(nil);


create的参数应该写什么呢?
self 和self.context都不行
回复

使用道具 举报

发表于 2008-11-3 15:12:39 | 显示全部楼层
DataSetZDYSJJ1:=TUserDataSet.Create(self);
回复 支持 反对

使用道具 举报

发表于 2008-11-3 15:12:57 | 显示全部楼层
self也不行吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-3 15:17:08 | 显示全部楼层
加入用self
如图

2008-11-3 15-16-33.gif

5.73 KB, 下载次数: 86

回复 支持 反对

使用道具 举报

发表于 2008-11-3 15:19:13 | 显示全部楼层
你怎么写的?贴出来看一下。
回复 支持 反对

使用道具 举报

发表于 2008-11-3 15:19:15 | 显示全部楼层
你放到什么地方了,这段代码?贴个完整的图看看。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-3 15:20:37 | 显示全部楼层
unit DRGS;

interface

uses
  Business.System, Business.Forms, Business.Model, Business.Data,ExcelHandling;

type
  TDRGS = class(TForm)
    panelControls: TPanel;
    btnImport: TButton;
    PanelDataGrid: TPanel;
    DataGrid: TDataGrid;
    sbStatusBar: TStatusBar;
    procedure btnImportClick(Sender: TObject);
    procedure BizFormCreate(Sender: TObject);
    procedure BizFormDestroy(Sender: TObject);
  private
    {private declarations}
    DataSet: TUserDataSet;
    _DataSource:TDataSource;
    procedure ImportWorkTime(strFileName,sheetName: string;iStartRow,iEndRow,iStartColumn: Integer);
  public
    {public declarations}
  end;

implementation

procedure TDRGS.BizFormCreate(Sender: TObject);
var
  bizField:TBizField;
begin
  DataSet:=TUserDataSet.Create(self);
  DataSet.Name:='DataSet';

  bizField:=TUserDataField.Create(DataSet);
  bizField.DataSet:= DataSet;
  bizField.ID:='MoldID';
  bizField.Name:='MoldID';
  bizField.DisplayName:='制号';
  bizField.DataType:=TDatatype.dtString;
  bizField.Size:=20;

  bizField:=TUserDataField.Create(DataSet);
  bizField.DataSet:= DataSet;
  bizField.ID:='ManufactureProgress';
  bizField.Name:='ManufactureProgress';
  bizField.DisplayName:='制造工序';
  bizField.DataType:=TDatatype.dtString;
  bizField.Size:=20;

  bizField:=TUserDataField.Create(DataSet);
  bizField.DataSet:= DataSet;
  bizField.ID:='dDate';
  bizField.Name:='dDate';
  bizField.DisplayName:='日期';
  bizField.DataType:=TDatatype.dtString;
  bizField.Size:=20;

  bizField:=TUserDataField.Create(DataSet);
  bizField.DataSet:= DataSet;
  bizField.ID:='WorkTime';
  bizField.Name:='WorkTime';
  bizField.DisplayName:='工时';
  bizField.DataType:=TDatatype.dtString;
  bizField.Size:=20;

  bizField:=TUserDataField.Create(DataSet);
  bizField.DataSet:= DataSet;
  bizField.ID:='Person';
  bizField.Name:='Person';
  bizField.DisplayName:='人员';
  bizField.DataType:=TDatatype.dtString;
  bizField.Size:=20;

以下省略、
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-3 15:21:16 | 显示全部楼层
在表单文档里用self没问题

放在窗体里就报错了
回复 支持 反对

使用道具 举报

发表于 2008-11-3 15:46:01 | 显示全部楼层
你看我的:

1.gif

241.63 KB, 下载次数: 77

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-3 16:12:20 | 显示全部楼层
刚试了一下, 在主窗体上可以。

  当在功能下建一个新的窗体,然后主窗体某个按钮调用这个新窗体的时候,就所述错误。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-25 10:43 , Processed in 0.047820 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表