起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 354|回复: 19

【结帖】工作台中弹出窗体问题。**

[复制链接]
发表于 2008-3-27 11:08:08 | 显示全部楼层 |阅读模式
TSystemCore.FuncManager.RunFunc(Context, '', 功能URL,'' ,'你的条件'
False, nil, False);

然后在功能处理窗体里面的FormCreate里面
databroker.dataset.close;
databroker.dataset.SqlFilter:=FuncBroker.Func.Parameters;
databroker.dataset.SqlFilter:=true;
databroker.dataset.open;

我按这个改了,以后在功能处理窗体中编译报错:“[[错误]Biz:\OPERATION\SXY\WJJ1\GZRWXX.FUNC.DIR\MainForm.Form.pas(31, 26): Undeclared identifier "SqlFilter"
[错误]Biz:\OPERATION\SXY\WJJ1\GZRWXX.FUNC.DIR\MainForm.Form.pas(32, 26): Undeclared identifier "SqlFilter"

请问怎么解决?
回复

使用道具 举报

发表于 2008-3-27 11:12:00 | 显示全部楼层
TSqlDataset(databroker.dataset).SqlFilter
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-27 11:18:12 | 显示全部楼层
数据没有过滤出来,都是显示的同一个结果。
这个是工作台上的代码:
unit DESKTOPDOCCHILD;

interface

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

type
  TDESKTOPDOCCHILD = class(DESKTOPINFO.TDESKTOPDOC)
    DataTransparentGrid1: TDataTransparentGrid;
    DataSetBroker1: TDataSetBroker;
    InfoBroker1: TInfoBroker;
    procedure DataTransparentGrid1Click(Sender: TObject);
    procedure actDetailExecute(Sender: TObject);
    procedure FormDocCreate(Sender: TObject);
  private
    {private declarations}
    function GetTestDataSet: TSQLDataSet;
    function GetTestInfo: TYWXX1;
   // procedure DoGetPlanFieldsEvent(var APlanFields: string);
  public
    property TestDataSet: TSQLDataSet read GetTestDataSet;
    property YWXX1: TYWXX1 read GetTestInfo;
  end;

implementation


procedure TDESKTOPDOCCHILD.DataTransparentGrid1Click(Sender: TObject);
begin
  actDetailExecute(DataTransparentGrid1);

end;
function TDESKTOPDOCCHILD.GetTestDataSet: TSQLDataSet;
begin
  Result := DataSetBroker1.DataSet as TSQLDataSet;
end;
function TDESKTOPDOCCHILD.GetTestInfo: TYWXX1;
begin
  Result := InfoBroker1.Info as TYWXX1;
end;
procedure TDESKTOPDOCCHILD.actDetailExecute(Sender: TObject);
begin
TSystemCore.FuncManager.RunFunc(Context, '', 'Biz:\OPERATION\SXY\GZRWXX.Func',
   GetTestDataSet.FieldByName('ID').AsString , False, nil, False);
end;

procedure TDESKTOPDOCCHILD.FormDocCreate(Sender: TObject);
begin
  Inherited;
TestDataSet.Open;
end;

end.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-27 11:18:54 | 显示全部楼层
这个是要打开的窗体上的代码:
unit MainForm;

interface

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

type
  TMainForm = class(TForm)
    FuncBroker: TFuncBroker;
    InfoBrokerYWXX1: TInfoBroker;
    ControlBar: TControlBar;
    DataNavigator: TDataNavigator;
    DocViewBar: TDocViewBar;
    Panel: TPanel;
    DocViewYWXX1_GZRWWD: TDocView;
    DataSetBroker1: TDataSetBroker;
    procedure BizFormCreate(Sender: TObject);
  private
    {private declarations}
  public
    {public declarations}
  end;

implementation


procedure TMainForm.BizFormCreate(Sender: TObject);
begin
  DataSetBroker1.dataset.close;
  TSqlDataset(DataSetBroker1.DataSet).SqlFilter:='ID='+FuncBroker.Func.Parameters;
  //DataSetBroker1.dataset.SqlFilter:=true;
  DataSetBroker1.dataset.open;

end;

end.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-27 11:20:05 | 显示全部楼层
帮忙看看,那的问题,我就是想把点击的记录显示出来。
回复 支持 反对

使用道具 举报

发表于 2008-3-27 11:26:52 | 显示全部楼层
DataSetBroker1.dataset.close;
  TSqlDataset(DataSetBroker1.DataSet).SqlFilter:='ID='+FuncBroker.Func.Parameters;
   TSqlDataset(Dataset(DataSetBroker1.DataSet).SqlFiltered:=true;
  DataSetBroker1.dataset.open;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-27 11:39:38 | 显示全部楼层
按上面的改完后(应该这样:TSqlDataset(DataSetBroker1.DataSet).SqlFiltered:=true;),打开窗体时报错。如图:

1.jpg

12.28 KB, 下载次数: 162

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-27 11:43:54 | 显示全部楼层
我试了一下“FuncBroker.Func.Parameters;”没有接到东西。
回复 支持 反对

使用道具 举报

发表于 2008-3-27 12:04:33 | 显示全部楼层
8楼怎么试的?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-27 13:37:05 | 显示全部楼层
我在要打开的窗体中加了个“ dialogs.ShowMessage('传递的id是:'+FuncBroker.Func.Parameters);”,输出了下。
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-9 11:38 , Processed in 0.045580 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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