网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > DELPHI > 正文
Cell报表控件应用于汽车零配件销售企业管理信息系统
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
下载{$ArticleTitle}原创论文样式
olWin;

type
TFrmCKRealTimeStorageRep = class(TFrmCKCellEditor)
Panel1: TPanel;
ClbStorage: TCheckListBox;
SBtnQuery: TSpeedButton;
UISet: TUISet;
CDSStorage: TClientDataSet;
CellReport: TCellReport;
CDSSource: TClientDataSet;
procedure SBtnQueryClick(Sender: TObject);
procedure CellReportAfterExecReport(Cell: TCell);
private

public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;

var
FrmCKRealTimeStorageRep: TFrmCKRealTimeStorageRep;

implementation

{$R *.dfm}

{ TFrmCKRealTimeStorageRep }

constructor TFrmCKRealTimeStorageRep.Create(AOwner: TComponent);
var
sSQL: string;
begin
inherited;
sSQL := ''select * from T_CK_BASE_STORAGE'';
CDSStorage.Data := UISet.GetData(sSQL);

ClbStorage.Items.Clear;
CDSStorage.First;
while not CDSStorage.Eof do
begin
ClbStorage.Items.Add(CDSStorage.FieldByName(''F_NAME'').AsString);
CDSStorage.Next;
end;
end;

destructor TFrmCKRealTimeStorageRep.Destroy;
begin

inherited;
end;

procedure TFrmCKRealTimeStorageRep.SBtnQueryClick(Sender: TObject);
var
sSQL: string;
sStorageList: string;
I: Integer;
begin
inherited;
for I := 0 to ClbStorage.Count - 1 do
begin
if ClbStorage.Checked[I] then
begin
CDSStorage.First;
CDSStorage.MoveBy(I);
if sStorageList = '''' then
sStorageList := CDSStorage.FieldByName(''ID'').AsString
else
sStorageList := sStorageList + '','' +
CDSStorage.FieldByName(''ID'').AsString;
end;
end;

if sStorageList = '''' then
raise Exception.Create(''请选择仓库'');

sSQL := ''select '' +
'' a.F_CODE,'' +
'' a.F_NAME as F_ITEM_NAME, '' +
'' a.F_SPEC as F_SPEC,'' +
'' d.F_UNIT as F_UNIT,'' +
'' a.F_PRICE as F_PRICE,'' +
'' b.F_NAME AS F_STORAGE,'' +
'' c.F_NUM as F_NUM,'' +
'' c.F_NUM * a.F_PRICE as F_MONEY'' +
'' from '' +
'' T_CK_ITEM a,'' +
'' T_CK_BASE_STORAGE b,'' +
'' T_CK_TIME_STORAGE c,'' +
'' T_SYS_UNIT d'' +
'' where '' +
'' c.F_ITEM_ID = A.ID '' +
'' and c.F_STORAGE = b.ID '' +
'' and a.F_UNIT = d.ID '' +
'' and c.F_STORAGE in ( '' +
sStorageList +
'')'';

CDSSource.Data := UISet.GetData(sSQL);

CellReport.Cell := Cell;
CellReport.CloneClientDataSet(CDSSource, CellReport.CDSSource);
CellReport.CloneClientData(CDSSource, CellReport.CDSSource);
CellReport.ExecReport(7);
end;

procedure TFrmCKRealTimeStorageRep.CellReportAfterExecReport(Cell: TCell);
begin
inherited;

// 执行后期处理 -- 表头
Cell.SetCellString(1, 1, Cell.GetCurSheet, ''分仓库实时库存表'');
Cell.SetCellAlign(1, 1, Cell.GetCurSheet, 36);
Cell.SetCellFontStyle(1, 1, Cell.GetCurSheet, 10);
Cell.SetCellFontSize(1, 1, Cell.GetCurSheet, 24);
Cell.SetRowHeight(1, Cell.GetRowBestHeight(1), 1, Cell.GetCurSheet);
Cell.MergeCells(1, 1, Cell.GetCols(Cell.GetCurSheet) - 1, 1);


// 制表人
Cell.SetCellString(1, Cell.GetRows(Cell.GetCurSheet) - 1,
Cell.GetCurSheet, ''制表人:'' + gUserInfo.UserName);
Cell.MergeCells(1, Cell.GetRows(Cell.GetCurSheet) - 1,
3, Cell.GetRows(Cell.GetCurSheet) - 1);

// 制表日期
Cell.SetCellString(4, Cell.GetRows(Cell.GetCurSheet) - 1,
Cell.GetCurSheet, ''制表时间:'' + DateToStr(Now));
Cell.MergeCells(4, Cell.GetRows(Cell.GetCurSheet) - 1,
Cell.GetCols(Cell.GetCurSheet) - 1, Cell.GetRows(Cell.GetCurSheet) - 1

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号