起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: wangyinchang

【结】DecisionChart[问题]**

[复制链接]
 楼主| 发表于 2008-4-28 17:09:48 | 显示全部楼层
不要范围也不行啊
我再测试一下。
居然数据影响显示效果。
纳闷中
回复 支持 反对

使用道具 举报

发表于 2008-4-28 17:27:35 | 显示全部楼层
数据?有啥特殊的数据在里面?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-28 18:10:34 | 显示全部楼层
我删除数据 2个科室的时候 没有修改任何代码 我这边显示也是正确的

你录入超过10个科室测试一下

里面只有一条数据的时候 代码就出错 在DecisionChart1.Series[4].Marks.Visible := True;  外置

但是 去掉这条代码  又在主状体上不显示  具体的百分比了 
回复 支持 反对

使用道具 举报

发表于 2008-4-29 10:01:28 | 显示全部楼层
附件是效果图,这是你的代码,你看一下哪些有出入

unit SWDJFX;

interface

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

type
  TSWDJFX = class(FUNC_GGJCCTZ.TForm_GGJCZCT)
    pgc: TPageControl;
    TabSheet1: TTabSheet;
    ControlBar1: TControlBar;
    BizToolBar1: TBizToolBar;
    DocViewBar1: TDocViewBar;
    TabSheet2: TTabSheet;
    TabSheet3: TTabSheet;
    TabSheet4: TTabSheet;
    DecisionChart1: TDecisionChart;
    ActionList1: TActionList;
    act_find: TAction;
    act_Clear: TAction;
    DecisionBroker1: TDecisionBroker;
    InfoBroker1: TInfoBroker;
    FuncBroker1: TFuncBroker;
    InfoBrokerTJ: TInfoBroker;
    dsbTJ: TDataSetBroker;
    Series2: TBarSeries;
    Series3: TBarSeries;
    Panel2: TPanel;
    Bevel1: TBevel;
    Label3: TLabel;
    SpeedButton2: TSpeedButton;
    Label1: TLabel;
    Label2: TLabel;
    Label4: TLabel;
    SpeedButton1: TSpeedButton;
    Label5: TLabel;
    dedtStart: TDataEdit;
    dedtEnd: TDataEdit;
    dedtDD: TDataEdit;
    dedtBC: TDataEdit;
    dedtXZ: TDataEdit;
    DecisionChart2: TDecisionChart;
    Series4: TBarSeries;
    DecisionChart3: TDecisionChart;
    Series5: TBarSeries;
    DecisionBroker2: TDecisionBroker;
    DecisionBroker3: TDecisionBroker;
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure dedtEndChange(Sender: TObject);
    procedure BizFormCreate(Sender: TObject);
  private
    {private declarations}
     procedure UDecisionChart;
  public
    {public declarations}
  end;

implementation


procedure TSWDJFX.SpeedButton2Click(Sender: TObject);
var
  sql,s1,s2: String;
begin
  Inherited;
  dsbTJ.DataSet.Edit;
  dsbTJ.DataSet.Post;

  s1 := ' 00:00:00.000';
  s2 := ' 23:59:59.000';
  sql := '1 = 1';
  if (SysUtils.Trim(dedtStart.Text) <> '') and (SysUtils.Trim(dedtEnd.Text) <> '') then
  begin
    dedtEndChange(nil);
    sql := sql + ' and (swxx4 >= ''' + SysUtils.Trim(dedtStart.Text) + s1 + '''' +
           ' and swxx4 <= ''' + SysUtils.Trim(dedtEnd.Text) + s2 + ''')';
  end;

  if SysUtils.Trim(dedtBC.Text) <> '' then
  begin
    sql := sql + ' and swxx5 = ''' + dsbTJ.DataSet.FieldByName('BC').AsString + '''';
  end;

  if SysUtils.Trim(dedtXZ.Text) <> '' then
  begin
    sql := sql + ' and swxx6 = ''' + dsbTJ.DataSet.FieldByName('WZCD').AsString + '''';
  end;

  //if SysUtils.Trim(dedtZL.Text) <> '' then
// begin
  //  sql := sql + ' and S_SWBM.swzl = ''' + dsbTJ.DataSet.FieldByName('SWZL').AsString + '''';
  //end;

  if SysUtils.Trim(dedtDD.Text) <> '' then
  begin
    sql := sql + ' and swxx3 = ''' + dsbTJ.DataSet.FieldByName('DD').AsString + '''';
  end;

  if sql = '1 = 1' then sql := FSQL;
  TSQLDataSet(DecisionBroker1.DataSet).UserFilter := sql;
  if not DecisionBroker1.DataSet.Active then DecisionBroker1.DataSet.Open;

  UDecisionChart;

  if DecisionBroker1.DataSet.IsEmpty then
  begin
    jsDialogs.ShowMsg('没有满足条件的数据,请重新选择条件!','系统提示');
    DecisionBroker1.DataSet.Close;
    Exit;
  end;

  pgc.ActivePageIndex := 0;

end;

procedure TSWDJFX.SpeedButton1Click(Sender: TObject);
begin
  Inherited;
    dsbTj.DataSet.Delete;
end;

procedure TSWDJFX.dedtEndChange(Sender: TObject);
begin
  Inherited;
   if (SysUtils.Trim(dedtStart.Text) <> '') and (SysUtils.Trim(dedtEnd.Text) <> '') then
    if SysUtils.StrToDate(SysUtils.Trim(dedtEnd.Text)) <
       SysUtils.StrToDate(SysUtils.Trim(dedtStart.Text)) then
    begin
      dedtEnd.SetFocus;
      jsDialogs.ShowWarning('结束时间不能早于起始时间!','系统警告');
      SysUtils.Abort;
    end;
end;

procedure TSWDJFX.UDecisionChart;
begin
  //去掉左轴和低轴的标题
  DecisionChart1.LeftAxis.Title.Caption   := '';
  DecisionChart1.BottomAxis.Title.Caption := '';
  DecisionChart2.LeftAxis.Title.Caption   := '';
  DecisionChart2.BottomAxis.Title.Caption := '';
  DecisionChart3.LeftAxis.Title.Caption   := '';
  DecisionChart3.BottomAxis.Title.Caption := '';
  //显示标签
  if DecisionBroker1.DataSet.RecordCount > 0 then
  begin
    DecisionChart1.Series[1].Marks.Visible := True;
    DecisionChart1.Series[2].Marks.Visible := True;
    DecisionChart1.Series[3].Marks.Visible := True;
    DecisionChart1.Series[4].Marks.Visible := True;
   // DecisionChart2.Series[1].Marks.Visible := True;
   // DecisionChart2.Series[2].Marks.Visible := True;
   // DecisionChart3.Series[1].Marks.Visible := True;
   // DecisionChart3.Series[2].Marks.Visible := True;
  end;
   if DecisionBroker2.DataSet.RecordCount > 0 then
  begin

    DecisionChart2.Series[1].Marks.Visible := True;
   // DecisionChart2.Series[2].Marks.Visible := True;

  end;
   if DecisionBroker3.DataSet.RecordCount > 0 then
  begin

    DecisionChart3.Series[1].Marks.Visible := True;
   // DecisionChart3.Series[2].Marks.Visible := True;
  end;


end;

procedure TSWDJFX.BizFormCreate(Sender: TObject);
begin
  Inherited;
  pgc.ActivePageIndex := 0;
  dsbTJ.DataSet.Open;
  BizToolBar1.Buttons[4].Visible := False;

  FSQL := ' swxx4 >= ''' + FStartTime + ''' and swxx4 <= ''' + FEndTime + '''';
  TSQLDataSet(DecisionBroker1.DataSet).UserFilter := FSQL;
  DecisionBroker1.DataSet.Open;
  DecisionBroker2.DataSet.Open;
  DecisionBroker3.DataSet.Open;
  UDecisionChart;

  //dsbTJ.DataSet.Open;
  DecisionChart1.Color := Self.Color;
  DecisionChart2.Color := Self.Color;
  DecisionChart3.Color := Self.Color;
end;

end.

2.gif

66.04 KB, 下载次数: 114

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-29 10:58:57 | 显示全部楼层
代码相同

你将柱状图上的百分比显示出来看看
回复 支持 反对

使用道具 举报

发表于 2008-4-29 11:20:06 | 显示全部楼层
是这样吗?

1.gif

19.45 KB, 下载次数: 155

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-29 12:17:10 | 显示全部楼层
正是!!

能不能将上面的百分比 “层次”显示。
解决如 部门5  那种“覆盖”的问题。
回复 支持 反对

使用道具 举报

发表于 2008-4-29 13:46:36 | 显示全部楼层
见附件

3.gif

18.88 KB, 下载次数: 146

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-4-29 14:09:46 | 显示全部楼层
多谢,调试中。。
回复 支持 反对

使用道具 举报

发表于 2008-4-29 14:42:01 | 显示全部楼层
不客气,无论结果如何,都请跟帖告知我一下
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-11 18:53 , Processed in 0.041945 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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