Delphi中数据的自动录入-Delphi-优质IT资源分享社区

admin
管理员
管理员
  • UID1
  • 粉丝27
  • 关注4
  • 发帖数581
  • 社区居民
  • 忠实会员
  • 原创写手
阅读:192回复:0

Delphi中数据的自动录入

楼主#
更多 发布于:2016-06-13 13:42
在Delphi数据库运用系统的数据录入过程中,有些数据是保留在Excel中的;有些是保留在纸张上的;还有一些是需求新增加的,由于各条记载之间有很多的重复数据,如果每条记载都让录入人员悉数手艺录入,其间的重复劳动是相当大的,还降低了作业效率。下面就这个问题进行论说。
1、运用Delphi调用Excel
Delphi中现已带了Word与PowerPoint的比如,由于Excel的调用与这两个运用服务器的调用略有不同,所以也能够运用Delphi调用Excel。
步骤如下:
(1) 创建一个一般Application.
(2) 在Form中别离放入ExcelApplication, ExcelWorkbook和ExcelWorksheet.
(3) 衔接Excel.
翻开Excel.
Try
ExcelApplication1.Connect;
Except
End; ExcelApplication1.Visible[0]:=True;
增加一个Workbook.
ExcelWorkbook1.ConnectTo(ExcelApplication1
Workbooks.Add(EmptyParam,0));
增加一个Worksheet.
Var Temp_Worksheet: _WorkSheet;
Begin
Try
Temp_Worksheet:=ExcelWorkbook1.
WorkSheets.Add(EmptyParam,
EmptyParam,EmptyParam,EmptyParam,0)
as _WorkSheet;
ExcelWorkSheet1.ConnectTo(Temp_WorkShee);
Except
ShowMessage(′Failure′); End;
封闭Excel.
Try
ExcelApplication1.Quit;
ExcelWorksheet1.Disconnect;
ExcelWorkbook1.Disconnect;
ExcelApplication1.Disconnect;
Except
End;
End;
(4) 对Excel的一些操作:
挑选某一作业簿中的一个作业表,然后对某一单元格进行赋值及取值。最终挑选某一区域作以下操作:
ExcelWorkSheet1.Range[′A1′,′C1′].Select;
翻开一个Excel文件.
if OpenDialog1.Execute then
Begin
Try
ExcelWorkBook1.ConnectTo(Excel
Application1.Workbooks.Open(OpenDialog1FileName,EmptyParam,EmptyParam,Empty
Param, EmptyParam, EmptyParam,
EmptyParam,EmptyParam,EmptyParam, EmptyParam,EmptyParam,
EmptyParam,EmptyParam,0));
ExcelWorkSheet1.ConnectTo(ExcelWorkBook1.Activesheet as _Worksheet);
Except;
End;
2、运用OCR辨认扫描
OCR能够辨认一页A4大小的印刷体中英文混排的纯文本文件只用几秒钟,所以咱们能够把扫描的图画进行辨认处理、保留。然后经过增加记载或批仿制的操作将得到的数据转入数据库的相应的表中。详细完成如下:
Procedure TForm1.buttonclick(sender:tobject);
Begin
Shellexecute(handle,’open’,’
c:\sh60\sh60.exe’,’,’,sw-shownormal);
Button3.enabled:=false;
End;
Procedure TForm1.formcreat(sender:tobject);
Var i:integer:
Begin
Chdir(‘c:\sh60’);
Form1.edit1.clear;
Form1.memo1.clear;
Assignfile(textid,form1.opendialog1.filename);
For i:=1 to form1.adoquery1.sql.count do
Begin
Form1.adoquery1.close;
Form1.adoquery1.clear;
Form1.adoquery1.sq1.add(‘select 表名
from Formname’)close;
Form1.adoquery1.open;
Form1.dbcombox1.datafield:=’表名’;
End;
3、运用原记载更改
Delphi数据录入时主动仿制原记载,然后做很少的修正,就完成了一条新记载的修正,最终直接保留。
运用 ADO 办法存取 Access数据库中的表 test,表的第一个字段是“主动编码”字段,在记载仿制时要越过。首先在 Form1 上增加
ADOConnection1、ADODataSet1、DataSource1、DBGrid1 等数据库有关组件,运用衔接向导把 ADOConnection1 与
Access 数据库衔接起来,把 ADOConnection1 的 LoginPrompt 属性设置为 False,其它组件的对应属性设置如下:
ADODataSet1.Connection :=ADOConnection1;
ADODataSet1.CommandText :=select * from test;
ADODataSet1.Active :=True;
DataSource1.DataSet :=ADODataSet1;
DBGrid1.DataSource :=DataSource1;
在 DBGrid 中看到数据库表 test 中的数据,后在窗体上增加一些数据灵敏的数据输入控件(如 DBEdit 等),将其 DataSource
属性设为 DataSource1,再别离与各字段绑定起来。
在窗体上增加 2 个按钮 Button1 和Button2,规划相应的触发事情。
程序编译运转后,按 Button1 按钮,就会增加一条新的记载,记载的内容为增加前记载指针指向的记载的内容.然后对现有数据做些改动,按 Button2
按钮保留新记载。
4、定论
经过对上面部分代码的修正,能够完成数据的主动录入,极大的提高了数据的录入速度。







优质IT资源分享社区为你提供此文。
本站有大量优质Delphi教程视频,资料等资源,包含Delphi基础教程,高级进阶教程等等,教程视频资源涵盖传智播客,极客学院,达内,北大青鸟,猎豹网校等等IT职业培训机构的培训教学视频,价值巨大。欢迎点击下方链接查看。
Delphi教程视频
优质IT资源分享社区(www.itziyuan.top)
一个免费,自由,开放,共享,平等,互助的优质IT资源分享网站。
专注免费分享各大IT培训机构最新培训教学视频,为你的IT学习助力!

!!!回帖受限制请看点击这里!!!
!!!资源失效请在此版块发帖说明!!!

[PS:按 CTRL+D收藏本站网址~]

——“优质IT资源分享社区”管理员专用签名~

本版相似帖子

游客