中山比尔科技 / 中山华盛科技有限公司 中山比尔/中山华盛科技有限公司   中山比尔/中山华盛科技有限公司 设为主页  |  加入收藏  
  中山比尔/中山华盛科技有限公司
 
中山华盛科技有限公司
ERP软件
POS软件
其他硬件
解决方案
Linux/Unix
 
ERP软件
ERP管理系统解决方案(分模块)
服装ERP管理软件解决方案
电子厂ERP管理软件解决方案
灯饰厂ERP管理软件解决方案
鞋业ERP管理软件解决方案
卫浴洁具ERP管理软件解决方案
POS软件
商场百货总部-分店连锁解决方案
商场百货POS管理软件解决方案
超市POS管理软件解决方案
连锁店总部-分店解决方案
连锁店POS管理软件解决方案
服装连锁POS管理软件解决方案
连锁型会员解决方案
POS硬件
商业POS机
商业数据中心服务器
其他硬件
工业型-数据采集器-HT3600
商业型-数据采集器-HT3300
条形码打印机-斑马Zebra888
条形码打印机-斑马Zebra140XI
条形码打印机-斑马Zebra170XI
条形码打印机-TSC 243E
条形码打印机-东芝 TEC B-452
条形码打印机-立象 OS-214
条形码阅读器-Metrologic6130
条形码阅读器-Argox RF800
条形码阅读器-SymbolLs4004P
解决方案
企业网络解决方案
ICEFLOW VPN应用
VPN在DRP连锁分销管理中应用
知识平台
DELPHI编写邮件特快专递程序
DELPHI中数据的自动录入
DELPHI访问数据库结构
DELPHI的"八皇后"问题
API实现在MSN的信息提示
DELPHI编写蠕虫病毒浅析
开源软件-Linux/Unix
三十种Linux发行版名称含义祥解
站在开源社区,建立开放新世界
从Windows转向UNIX的一些困惑
Linux系统更耐网络攻击
开源开发模式是否适合商业用户
开源程序应用仍然有待改善
 
 
 
客户案例
   
  您现在的位置是: 中山华盛科技主页 - 软件开发 / 知识平台 - DELPHI中数据的自动录入
 
   
 

DELPHI中数据的自动录入

 
http://dev.21tx.com 2007年09月24日 计算机与信息技术 马宏艳
 

   在 Delphi 数据库 应用系统的数据录入过程中,有些数据是保存在 Excel 中的;有些是保存在纸张上的;还有一些是需要新增加的,由于各条记录之间有大量的重复数据,如果每条记录都让录入人员全部手工录入,其间的重复劳动是相当大的,还降低了工作效率。下面就这个问题进行论述。

1、利用Delphi调用Excel

   Delphi中已经带了Word与Pow ERP oint的例子,因为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、结论

   通过对上面部分代码的修改,可以实现数据的自动录入,极大的提高了数据的录入速度。

 
 
 
 
 
 
 

 

 
 
网站导航: 首 页|关于我们|新闻中心|ERP软件产品|POS软件产品|硬件产品|客户案例|知识平台|软件下载|解决方案|服务与支持|联系我们|汇款帐号|工作机会|法律条款|网站地图|客户留言
   友情链接:
              汽车租赁      注册香港公司  上海网站建设  上海网站制作 上海网页制作 网站制作      无忧维修网   杭州送水站  POS系统       进销存软件    POS机
              电脑维修网    收银系统      更多友情链接   注册公司
     

Copyright@2006-2009 中山比尔/中山华盛科技有限公司版权所有 网站设计:中山华盛科技  网站优化:中山华盛科技
电话:  0760-8862282 / 0760-8161185 / 0760-8613158 / 0760-8150358 传真: 0760-8862049 / 0760-8615118 / 0760-8862049
地址:  广东省中山市西区西苑广场富荣阁17楼C座(技术部) / 广东省中山市石岐区永胜广场7楼C座(开发部)
        广东省中山市西区西苑电脑城1楼1029(门市) / 广东省中山市西区颐高数码广场1楼F08(门市)
联系人:汪经理 (13590742255) / 黄经理 (13590757383)