当前位置:首页 > 范文大全 > 公文范文 >

公文范文

管子加工管理系统实现自定义筛选方式提高工作效率

2021-12-02 11:25:03公文范文
刘勇涛各阶段产生的数据进行全面管理,同时对管理的各项数据采用自定义筛选的方式,通过点击数据网格的某个

刘勇涛

各阶段产生的数据进行全面管理,同时对管理的各项数据采用自定义筛选的方式,通过点击数据网格的某个标题栏,对数据网格中的标题栏绑定的数据字段进行排序、常规筛选或自定义条件筛选,达到快速、便捷、高效的筛选出想要的数据,生成各類简明报表和直观图表,提高公司管理水平和工作效率。

关键词:管子加工管理系统;自定义筛选; 数据网络

中图分类号:TP315                                 文献标识码:A

Improving Work Efficiency of Pipe Processing Management System by Achieving Custom Screening

LIU Yongtao

(CSSC Huangpu Wenchong Shipbuilding Co., Ltd., Guangzhou 510725 )

Abstract:
The pipe processing management system is used to comprehensively manage the data generated in each stage of processing, such as processing receipt, contract, incoming goods, inventory, production arrangement, invoice and payment collection of the order. At the same time, the custom screening method is provided for the management of various data, by clicking a title bar of the data grid, the data in the data grid can be sorted, screened by general or user-defined conditions according to the data fields bound to the title bar, so as to achieve fast, convenient and efficient screening of the desired data, generate various concise reports and intuitive charts, improve the management level and work efficiency of the company.

Key words:
Pipe processing management system; Custom screening; Data network

1     前言

我司年加工管子约45万支,从接单、订货、库存、加工、送货、收款等阶段都会产生了大量的数据,靠手工台帐或EXCEL电子表格进行管理效率低下,有必要借助管子加工管理系统,对接单的加工小票、合同、来货、库存、生产安排、发票及收款等各阶段产生的数据进行全面管理,对各项数据进行快速、便捷、高效的筛选,生成各类简明报表和直观图表,提高公司管理水平和生产效率。

本系统的数据库采用SQL SERVER2008,程序的开发工具是Delphi 6.0。

2     系统功能

系统主要分为:基础数据、小票、合同、来货、库存、生产安排、查询、打印、发票及收款九大项。

(1)基础数据

包括:客户维护、船舶维护、卡位维护、员工维护和材料牌号维护。

(2)小票

包括:小票导入、小票数据维护(导入)、小票数据维护(自录)、小票查询、数据状态维护和接收外网小票文件。

(3)合同

包括:加工合同导入、加工合同查询、采购合同导入、采购合同查询、供货合同导入和供货合同查询。

(4)来货

包括:加工来货导入、加工来货查询、采购来货导入、采购来货查询、供货来货导入、供货来货查询。

(5)库存

包括:入库查询、生产发料、发料查询、备料发料、发料修改、库存盘点、盘盈盘亏和库存出库。

(6)生产安排

包括:号料表和装箱清单编制、号料表和装箱清单完成情况、随车送货单生成、过磅重量维护、管材备料送货单、结算单维护和供货单。

(7)查询

包括:合同来货情况、库存(年)查询、装箱单完工、小票完成情况、小票材料检查、发票查询、供货合同送货情况、送货单未开申请、采购合同来货情况。

(8)打印

包括:成品送货单打印、成品发料单打印、备料单打印、管材备料送货打印、结算单打印。

(9)发票及收款

包括:结算单关联发票、发票收款登记、送货单付款登记。

3     自定义筛选功能设计

如何达到对管理的各项数据进行快速、便捷、高效的筛选,必须从筛选功能设计下手。

一般的筛选界面设计方式,其筛选的内容可以直接输入或从下拉框中选择,然后点击筛选按钮,此时会对数据库的数据进行筛选,并以固定的排序方式显示在界面的数据网格中。熟悉EXCEL的用户都会被EXCEL强大的排序和筛选功能折服,这也是用户在使用管理软件时,喜欢将数据导出至EXCEL,再借助EXCEL强大的排序和筛选功能,快速、便捷地得到想要的数据。

下面以小票查询界面为例,介绍如何设计出强大的自定义筛选功能。

实现自定义筛选功能的思路是:放置一个用于显示数据的数据网格,点击数据网格的某个标题栏,通过该标题栏绑定的数据字段对数据网格中的数据进行排序、常规筛选或自定义条件筛选。如果执行的是数据筛选操作,则将该标题栏作特殊显示,告知用户此时数据网格中显示的数据是通过对该标题栏做了筛选操作的。

3.1   界面设计

点击菜单File、New、Form,添加一个窗体,将该窗体的名称设为xpcxfrm、Caption设为小票查询,FormStyle设为fsMDIChild,同时将该窗体保存为xpcx_frm。

从工具栏中点击EhLib面板,将控件DBGridEh拖放至表单xpcxfrm中,采用系统默认的命名DBGridEh1,设置好其相关的属性值。

要使DBGridEh1数据网格中能够显示数据,必须绑定数据源。

从工具栏中点击Ado面板,向窗体添加二个AdoQuery,为a1、a2;再点击Data Access面板,向窗体添加一个DataSource,其名称设为DataSource1、DataSet设为a1、DataSource设为DataSource1。

双击小票查询表单的OnShow,通过a1从数据库中筛选数据并显示于数据网格DBGridEh1中。

3.2   设置排序和筛选菜单

点击数据网格的标题栏,出现可操作的菜单项,包括升序、降序、从XXX中清除筛选、文本/数字筛选、搜索框、多选条件框和搜索、确认、取消按钮。

(1) 添加排序和筛选面板(菜单)

① 点击Standard面板,添加一个Sele_Panel;从工具栏中点击Additional面板,添加7个控件(Sele_Panel_Asc、Sele_Panel_Desc、Sele_Panel_Clear、Sele_Panel_Select、Sele_Panel_Find、Sele_Panel_Confirm、Sele_Panel_Cancel);点击Standard面板,添加1个Edit控件(Sele_Panel_Edit),Text设为搜索;

点击1stClass面板,添加1个控件(Sele_panel_fc)。

以上控件的其余属性做相应的设置即可;

② 在程序运行时,点击数据网格的某个标题栏时,假设点击了数据网格的规格标题栏,系统将弹出排序和筛选面板(菜单);

点击升序菜单项,则数据网格中显示的数据将按规格以升序的方式重新排序;点击降序菜单项,则数据网格中显示的数据将按规格以降序的方式重新排序;点击从‘规格中清除筛选菜单项,数据网格中显示的将是清除后的数据。

多选框中的规格,是当前数据网格中按规格唯一值筛选出来的,也可通过在搜索文本框中输入想筛选规格的关键字来减少多选框中显示的规格;

③ 对于文本型数据,常用的筛选方式有:等于、不等于、开头是、结尾是、包含和不包含;

④ 对于数值型数据,常用的筛选方式有:等于、不等于、大于、大于或等于、小于、小于或等于、介于、N个最大的值、高于平均值、低于平均值。对于本实例中显示的数据,只有长度和重量是数值型,其它均是文本型。

(2) 添加文本筛选面板(菜单)

点击Standard面板,向窗体添加一个Exp_Panel;点击Additional面板,向Exp_Panel面板添加7个SpeedButton控件(Exp_Panel_Bt1、Exp_Panel_Bt2、Exp_Panel_Bt3、Exp_Panel_Bt4、Exp_Panel_Bt5、Exp_Panel_Bt6、Exp_Panel_Bt7);向Exp_Panel面板添加3个Sharp控件,作为上面7个菜单项的分隔符,依次设置控件的属性值。

当把鼠标指针移动到文本筛选菜单项时,系统将弹出文本筛选面板(菜单)。

(3) 添加数字筛选面板(菜单)

点击Standard面板,添加一个Spe_Panel;点击Additional面板,添加11个SpeedButton控件(Spe_Panel_Bt1~Spe_Panel_Bt11);向Spe_Panel面板添加3个Sharp控件,作为上面11个菜单项的分隔符。

当把鼠标指针移动到数字筛选菜单项时,系统将弹出数字筛选面板(菜单)。

3.3   添加自定义自动筛选窗体

点击文本筛选菜单项或数字筛选菜单项(除10个最大的值、高于平均值、低于平均值菜单项外),出现对所选字段可由用户自行输入或选择内容且自由组合该字段筛选方式的窗体。

点击菜单File、New、Form,添加一个窗体,改名为zdsxfsfrm,Caption改为自定义自动筛选方式,同时将该窗体保存为zdsxfs_frm。

点击Standard面板,添加2个Label、4個ComboBox和2个RadioButton;点击Additional面板,添加2个SpeedButton和1个Sharp。

3.4   添加自动筛选前10个窗体

点击菜单File、New、Form,添加一个窗体,改名为zdsxfs1frm,Caption改为自动筛选前10个,同时将该窗体保存为zdsxfs1_frm。

点击Standard面板,添加2个ComboBox、1个Label和1个Edit;点击Additional面板,添加2个SpeedButton和1个Sharp;点击Win32面板,添加1个UpDown。

4    代码实现

在xpcxfrm表单中定义8个过程和1个记录型数据:

(1)8个过程

① procedure showdata(Fir:Boolean):按设置的条件筛选数据,并显示于数据网板中;

②procedure showtj(sTitle:string;sZd:String):根据点击标题栏筛选网格中的数据,并显示于多选条件框中;

③procedure showpanel(i:integer):根据点击标题栏显示排序和筛选菜单;

④procedure Decide(Node:TfcTreeNode):判断点击多选条件框项,同时更改多选条件框各项的勾选状态;

⑤procedure DataSort:对数据网格中显示的数据,根据点击标题栏项进行升序或降序显示;

⑥procedure showcheck(sZd:String):根据点击的标题栏和输入的搜索内容从数据网格中筛选数据并显示于多选条件框中;

⑦procedure SetExpress:设置并获得自定义筛选条件;

⑧procedure SetSpecial:设置并获得特别项数据(如最大的前10项)。

(2)用于记录各字段已经设置的筛选条件:1个记录型数据

type

Expr = record

Field:string;

Expr:string;

MaxExpr:string;

Ishl:integer;

Null:String;

Spe:integer;

end;

各项含义说明如下:

Field:用于存放筛选条件的字段名;

Expr:用于存放筛选条件的表达式;

MaxExpr:用于存放最大或最小的值;

Ishl:用于记录筛选条件中字段已使用的次数;

Null:用于存放筛选条件是否是空值;

Spe:用于记录筛选条件的方式,0为正常,1为最大项,2为最大百分比,3为最小项,4为最小百分比,5为高于平均值,6为低于平均值,其中1-4时MaxExpr的值为项数或百分比数。

当程序运行时,初始化记录型数据TJexpr:

procedure Txpcxfrm.FormShow(Sender:
TObject);

var

i:integer;

begin

self.Resize;

Setlength(Tjexpr,DBgrideh1.Columns.Count);  //初始化记录型数据TJexpr

for i:=0 to DBgrideh1.Columns.Count-1 do

begin

DBgrideh1.Columns[i].Title.TitleButton:=True;     //将数据网格的标题设置为按钮

DBgrideh1.Columns[i].Title.Hint:=DBgrideh1.Columns[i].Title.Caption;

Tjexpr[i].field:=DBgrideh1.Columns[i].FieldName;

Tjexpr[i].expr:="";

TJexpr[i].MaxExpr:="";

Tjexpr[i].null:="";

Tjexpr[i].ishl:=0;

Tjexpr[i].spe:=0;

end;

sField:=DBGrideh1.Columns[0].FieldName;

showdata(True);       //第一次,显示所有数据于数据网格中;

End。

5    结论

至此,管子系统中的小票查询界面的强大的自定义筛选功能设计完成。进入系统后,点击面板菜单中的小票查询按钮,根据所顯示的界面用鼠标点击数据网格的标题栏,即可体验到对数据网格中的数据进行排序和自定义筛选功能,从而提高工作效率。

参考文献

[1] 王晟,万科. Delphi数据库开发经典案例解析[M]. 北京:清华大学出

版社, 2005.

[2] 毛新军. 面向主体的软件开发[M]. 北京:清华大学出版社, 2005.

[3] 张友生, 李雄. 软件开发模型研究综述[J]. 计算机工程与应用, 2006,

42(3):
109-115.

推荐访问:自定义 筛选 提高工作效率