《HTC组件API手册.doc》由会员分享,可在线阅读,更多相关《HTC组件API手册.doc(118页珍藏版)》请在金锄头文库上搜索。
1、/用户名称:神州数码(中国)有限公司密级: HTC组件API手册文档编号:文档名称:编 写:编写日期:审 核:审核日期:批 准:批准日期:修订状况章节编号章节名称修订内容简述修订人修订日期修订前版本号批准人3.5.4.14Datawindow属性增加此属性,用于实现dw分页时每页的序号累积王健2006-3-143.5.4.12Datawindow属性支持多表头及表头的合并王健2006-5-93.5.5.13Datawindow方法支持在任意位置插入行赵元凯2006-5-113.18DocEditorX增加word编辑控件,用于在ie内能进行word文档的编辑3.3.4.1List属性增加对齐方
2、式属性align赵元凯2006-6-193.6.7.1Datawindow列属性增加列对齐方式属性align赵元凯2006-6-193.6.7.12Datawindow列属性增加表头对齐方式属性headeralign赵元凯2006-6-193.6.4.15Datawindow属性增加对列的分组合计汇总的功能王健2006-6-233.1.3.2TextArea增加maxLength和minLength两个属性王健2006-6-233.2.3.4TextField增加maxLength和minLength两个属性王健2006-6-233.7.4.3Tree增加tree分批加载数据的功能王健2006
3、-6-233.6.7.13Datawindow列属性增加input输入法开关ime赵元凯2006-6-233.6.7.23Datawindow列属性增加input大小写控制属性ucase赵元凯2006-6-231. HTC组件综述1.1. 本指南适用范围和人员本手册是为在SmatFrame平台上进行应用开发,前端使用htc方案的开发人员编写的。阅读人员需了解如下的基础知识:1) activex控件2) javascript语言3) xml语言4) j2ee1.2. HTC架构介绍1.2.1. HTC概述HTML组件(HTCsHtml Components)提供一种机制来使用脚本作为动态HTML
4、(DHTML)行为实现组件功能。以.htc扩展名保存,一份HTC是一份包含脚本和一组用于定义组件的HTC特殊元素的HTML文件。HTC组件内可包含属性、方法、事件,也可订阅绑定页面的事件,通过这些机制实现功能的封装。可理解成一个功能独立的javabean或一个activex控件,只是它的封装层次是在页面这一层。Frame提供的前端HTC组件主要是一组前端页面的展示组件和一些前端编程的工具函数。前端展示HTC组件内部以封装activeX控件的形式提供展示功能,包括自定义文本框、树型列表、单选下拉列表,多选下拉列表,数据网格等组件。前端编程工具函数以js文件的形式提供,主要提供loadXml,Xm
5、lToHtml,HtmlToXml,checkValid等功能。1.2.2. HTC的组成和调用客户前端WebServer通过XMLHTTP(msxml4.dll)进行前后台消息的请求和响应页面内的js脚本Service.jsHTC组件脚本ActiveX:Ctais_htc.ocxAutoupdt.dllDcbassrv.dll辅助工具脚本:checkValid.jsservicexml.jsHtc的前端由图示的几部分组成,service.js文件是前后端调用的总控模块,负责调用报文的拼装,操作xmlhttp进行报文的发送和接收,并将相应数据返回给调用的页面或js代码。Htc组件主要是对act
6、iveX控件的封装,使可直接使用html语言进行定义。Activex控件实现了大多数的界面元素,其中autoupdt.dll和dcbassrv.dll实现了组件的自动下载和一些基本服务支持。辅助工具脚本是一些有用的辅助开发工具,能够减少代码开发量和规范页面的一致性。checkValid用于对整个页面元素(主要是htc的页面元素)进行统一的有效性验证,servicexml用于统一处理数据从html页面的导出,和将xml数据导入到html页面内。所以对于常规的htc前端页面的开发,包含如下步骤:1) 使用htc组件进行页面的定义2) 使用jsp和js脚本进行页面逻辑的开发3) 通过调用servic
7、e.js内提供的方法访问后台的服务进行数据的提交和交换。2. 脚本工具2.1. htcCommon.js2.1.1. 用途负责维护一些常用的前台路径及全局的调试信息,用户在配置完Frame的htc方案后,可手工修改此文件的变量,完成信息的配置2.1.2. 引用方式2.1.3. 配置变量说明1) var G_DEBUG = false;定义是否在调试状态,如果G_DEBUG = true,则前后台传输的报文会打印到一个对话框上。2) var HOST = http:/localhost:7001;主机路径3) var URL_SERVICE_ENTRY = /WebTest/entry/Entr
8、yServlet;后台servlet的入口地址4) var URL_MESSAGE = /WebTest/public/htmComponent/htm/dlg_message.htm;调试信息对话框的地址5) var URL_ALERT = /WebTest/public/htmComponent/htm/dlg_alert.htm;定制了window.alert函数6) var URL_CONFIRM = /WebTest/public/htmComponent/htm/dlg_confirm.htm;定制了window.confirm函数7) var URL_PROMPT = /WebT
9、est/public/htmComponent/htm/dlg_prompt.htm;定制了window.prompt函数2.2. service.js2.2.1. 用途Service.js是一个核心脚本,负责前后端的通讯,所有服务报文的发送,接收,解析都是通过这个脚本来操作的,另外还提供一些和xml数据操作相关的函数和在调试状态下对报文的查看。2.2.2. 引用方式2.2.3. 函数2.2.3.1. createWorkId1 功能描述产生一个随机数,用于和后台的工作区相对应2 语法格式var sid = createWorkId();3 返回值一个随机数字符串4 相关Service doS
10、ervice 2.2.3.2. doService1 功能描述执行一个具体的后台服务调用,并将结果返回。2 语法格式var xmlResult = service.doService();var xmlResult = service.doService(strCondition);3 参数strCondition:xml格式字符串,对应于后台服务方法调用的传入条件字符串。4 返回值xmlResult:xml格式字符串,后台服务返回的结果。5 举例下面的示例演示了一个完整的服务方法的调用过程var sid=createWorkId();var service = new Service(“co
11、m.dc.class.method”, sid);var oArg = service.doService(“%”);if (getCode(service)= 2000) var oDoc = loadXml(oArg);/将数据映射到对应的htc控件内elseshowMessage(getMessage(service), 0);6 相关Service createWorkId getCode2.2.3.3. getCode1 功能描述得到调用后台服务的返回代码,约定2000为正常调用的返回代码,其他代码用户可自定义其含义,前后台根据约定的代码进行相应的处理。2 语法格式var sCode
12、 = getCode();var sCode = getCode(service);3 参数service:Service对象实例4 返回值字符串格式的返回代码5 备注第一种无参数的调用方式返回当前Service实例对象对应的返回代码;第二种调用返回指定的Service实例对象的返回代码6 相关Service doService getMessage2.2.3.4. getMessage1 功能描述得到调用后台服务的返回代码对应的消息说明,当返回代码不为2000时,通常在此处得到详细的异常消息说明。2 语法格式var sMsg = getMessage ();var sMsg = getMes
13、sage (service);3 参数service:Service对象实例4 返回值返回的消息说明字符串5 备注第一种无参数的调用方式返回当前Service实例对象对应的消息说明;第二种调用返回指定的Service实例对象的消息说明6 相关Service doService getCode2.2.3.5. loadFile1 功能描述装入指定的xml文件,以XmlDocument对象的形式返回2 语法格式var oDoc loadFile(strFile);3 参数strFile:一个本地的xml文件的全路径名4 返回值包含装入的xml文件的XmlDocument对象5 相关loadXml2.2.3.6. loadXml1 功能描述将给定的xml字符串进行解析,以XmlDocument对象的形式返回2 语法格式var oDoc loadXml(strXml);3 参数strXml:xml格式的字符串4 返回值XmlDocument对象5 相关loadFile2.2.3.7. Service1 功能描述通过new Service对象,建立一个前后台的连接机制,将前台的调用映射到后台的一个服务调用上,在doService()时调用后台的服务,并将结果返回。2