家居装修知识
模具知识|在AutoCAD环境下与数据库间的互联技术
2016-06-26  浏览:98
模具之家讯:摘要 本文阐述了在液压CAD系统中,针对AutoCAD R13 for Windows二次开发环境下,利用其内部ASI接口技术进行程序设计,实现与Visual Foxpro 3.0之间进行数据交换的方法。
关键词:AutoCAD 二次开发 接口 数据交换

1 引言

数据交换是CAD的核心技术,可以说没有数据的有效交换,就没有CAD优越性的充分发挥。在AutoCAD环境下进行CAD软件二次开发时,如何实现各模块间数据的有效交换,如何解决各类不同软件间的接口问题以及如何实现图形实体与非图形实体数据的联系,是二次开发CAD系统解决的关键问题。
本文着重讨论了AutoCAD R13 C4 for Windows环境下与Visual Foxpro 3.0之间进行的数据交换的ASI (AutoCAD SQL Interface)程序设计方法,并具体应用于液压系统的CAD软件中。

2 AutoCAD的开发与数据库的访问

象其他流行软件一样,Autodesk公司在AutoCAD R13内部提供了与外部数据库相互联系的机制。AutoCAD本身含有ASI(AutoCAD SQL Interface)、ASE(AutoCAD SQL Extension)和DBMS(Database Manager System)驱动程序几部分。AutoCAD与数据库文件之间进行数据交换的示意图如图所示。
AutoCAD与数据库文件之间数据交换示意图

ASI遵循ANSI/ISOSQL标准,是用于从AutoCAD中访问外部数据库的函数集。用ASI建立的应用程序,均可通过AutoCAD的开发应用系统;C语言开发的ADS,Visual C++4.0开发的ARX或其内部所自带的AutoLISP语言连接到AutoCAD系统中,同时可以在不同的数据库驱动程序支持下对不同的数据库进行数据的存取交换。
ASE是一组命令集,可将SQL连接到AtuoCAD系统中。其实质就是利用ASI建立的ADS/ARX的应用程序。使用 ASE可以在AutoCAD内部对外部数据库中的数据文件的记录和字段进行查询和修改等操作,可以将数据关联到图形实体和非图形实体(如哑图中尺寸参数替换和明细表等)上,实现图形和数据间的双向查询,并可以实现在图形中动态跟踪显示数据。
AutoCAD本身包含一组数据库驱动程序,其中每一个驱动程序都支持自己所连接的一种外部DBMS。其中用ADS/ARX或AutoLISP建立的应用程序,不必考虑DBMS专用的代码应用程序,是用 ASI编程还是用ASE命令编程,其实质都是遵循通用SQL标准的。
AutoCAD支持的开发语言有Turbo C,Visual Basic 5.0,Visual C/C++4.0和内部拥有AutoLISP语言,其中C,VB通过建立生成ADS的函数,VC生成的是ARX函数,与AutoCAD信息相联系。
ASE作为AutoCAD内部的一组命令,可用编程方式执行。ASE作为AutoCAD访问数据库的核心具有更直接访问数据库的能力,允许应用程序对多种DBMS,DBMS内的多个数据库,库内的多张表进行数据访问。ASE和ASI可根据需要单独或同时使用。ASE方法在显示属性、编辑、列表框、基于查询等功能方面显得容易实现,但对于复杂的应用程序,就要使用ASI方式编程实现功能。

3 ASI方法的使用

3.1 ASI的支持文件与开发环境
AutoCAD R13 for windows所支持的ASI编程的文件都存放在缺省的\ACAD\WIN\ASE目录中。
有ASI目标库(文件后缀为.LIB)如asiatm80.lib;ASI头文件(asi.h含ASI的通用定义)、(asierr.h包含返回出错代码值的含义)、(asiappl.h含主要的AutoCAD SQL结构查询语言的头文件)、(asisdata.h含C++的用户接口定义)。
用ASI编制的应用程序,可用的编译器有:Borland C/C++4.0、Microsoft C/C++7.0、Microsoft Visual C++4.0以上版本等。
3.2 利用ASI与数据库交互处理的实现过程步骤
● 连通数据库:通过asi-initsql,ads-initdrv,asi-connect分别对ASI指定的DBMS驱动程序进行初始化,登录到所指定的数据库。
● 打开一个通讯句柄:这可通过调用asi-compile函数来实现。在ASI程序中,每条SQL语句都通过一个通讯句柄来进行处理。
● 编译SQL语句:通过调用asi-compile函数来实现。
● 执行SQL语句:用asi-iexecute函数执行SQL语句。
● 查询和处理数据:逐行查询结果,选取当前行,进行数据处理。所需的函数有:asi-fetch获得光标所在的当前行;asi-coldsc获得一列的说明;asi-delete删除当前行;asi-update更换当前行,等函数。
● 关闭通讯句柄:用asi-chandle函数关闭语句处理的句柄,并释放句柄。
● 断开与数据库的连接:调用asi-disconnect函数,断开登录的数据库;调用asi-temdrv函数,终止驱动程序;调用asi-temrsql函数,终止程序接口。
上述每一过程可用ASI的出错代码处理函数进行错误信息处理,用asi-err获得一条出错代码,用asi-errmsg函数获得一条出错信息。

4 实例说明

本例给出一个由Visual Foxpro3.0环境下,建立起来的液压系统软件包设计中的顺序阀数据库文件SXFLIB.DBF,其数据结构如下表所示。



Name TypeDiameterPressureFluxScale 顺序阀X-F*#p#分页标题#e#10D3-P-*10.020.040.00.5 顺序阀2X-F*10D3-AB/BA-*10.020.040.01.0 单向顺序阀XA-F*10D3-B-*10.020.040.00.7 单向顺序阀XA-F*10D3-B(A)-*10.020.040.00.5

编制ASI应用程序,实现所需功能:
(1)编制ins-rowvalue命令,实现将AutoCAD图形上的数据和名称做一标记插入到数据库的记录中。
(2)编制get-rowvalue命令,实现从数据库选定行中读取数据,在软件的对话框中显示出来,并按数据所提供的比例画出图形。
(3)编制fetch-dallue命令,实现从数据库中读取所有记录,在对话框的列表框内显示出来,以便用户调用,插入图形中。
由于AutoCAD可通过ASI/ASE、DBMS访问数据库,所以使许多应用项目的设计思路大为开阔,节省了设计者的工作时间,提高了工作效率,降低了投入成本,有利于集成系统的实现。
模具之家为您提供最全面的塑胶,塑料,模具,模具设计,塑胶模具品牌的装修知识点和各种塑胶模具的导购与在线购买服务,拥有最便宜的塑胶模具价格和最优质的售后服务,敬请登陆模具之家:http://muju.jc68.com/
更多»您可能感兴趣的文章:
更多»有关 塑料 的产品:
南亚塑胶洛阳总经销 PVC塑料管

南亚塑胶洛阳总经销 PVC塑料管

价格:10.00/米

深圳 南亚 耐酸碱 PVC管道 pp管 PVC管 塑料管

深圳 南亚 耐酸碱 PVC管道 pp管 PVC管 塑料管

价格:3.00/米

LED封装塑料导热专用纳米氧化镁

LED封装塑料导热专用纳米氧化镁

价格:到店咨询

塑料专用纳米氧化铝

塑料专用纳米氧化铝

价格:到店咨询

联塑PE钢丝网骨架塑料(聚乙烯)复合管

联塑PE钢丝网骨架塑料(聚乙烯)复合管

价格:1.00/米

塑料光纤连接器

塑料光纤连接器

价格:7.50/个

易博仕铝方通吊顶木纹铝方通厂家直销

易博仕铝方通吊顶木纹铝方通厂家直销

价格:7.50/米

易博仕勾搭式垂帘铝挂片吊顶天花

易博仕勾搭式垂帘铝挂片吊顶天花

价格:8.50/米

供应易博仕氟碳铝单板幕墙铝单板厂家直销

供应易博仕氟碳铝单板幕墙铝单板厂家直销

价格:198.00/平方米

供应易博仕氟碳铝单板幕墙铝单板厂家直销

供应易博仕氟碳铝单板幕墙铝单板厂家直销

价格:198.00/平方米

易博仕铝天花吊顶明架跌级铝扣板600*600厂家直销

易博仕铝天花吊顶明架跌级铝扣板600*600厂家直销

价格:38.00/平方米

供应易博仕c型铝条扣 防风铝条扣天花厂家直销

供应易博仕c型铝条扣 防风铝条扣天花厂家直销

价格:38.00/平方米

  • 头条资讯
  • 发表评论 | 0评
  • 评论登陆
  • 移动社区 建材风水 木板之家 电工之家 壁纸之家 净化之家 安防之家 水暖之家 洁具之家 窗帘头条 家饰之窗 老姚之家 灯饰之家 电气之家 全景头条 陶瓷之家 照明之家 防水之家 防盗之家 博一建材 卫浴之家 区快洞察 建材 郑州建材 周口建材 信阳建材 商丘建材 南阳建材 漯河建材 许昌建材 濮阳建材 焦作建材 新乡建材 鹤壁建材 安阳建材 洛阳建材 开封建材 武汉建材 天门建材 企业之家 驻马店建材 三门峡建材 平顶山建材 神农架建材 建材之家 720全景
    (c)2015-2017 BO-YI.COM SYSTEM All Rights Reserved