集成开发手册_第1页
集成开发手册_第2页
集成开发手册_第3页
集成开发手册_第4页
集成开发手册_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.DXP团团赚团购网站2.0源码eform集成开发手册PAGE@:PAGE54源码及文档下载地址:/code/DXPTuanTuanZhuanWeb2.0TOC\o"1-3"\h\z如何集成eform 4将eform和用户自己的系统集成在一起 4使用,数据库为sqlserver2000 4使用eformforjava,数据库为oracle9i 5系统文件说明 6前台文件: 7后台文件: 10Eform系统文件中的配置信息说明 11fcpub.js文件中的配置信息说明 11fcconfig.xml文件中的配置信息说明 12数据库表结构说明 13FC_ATTACH表结构: 13FC_BILLZL表结构: 13FC_MAXBH表结构: 14FC_DATADICT表结构: 14FC_ENTITY表结构: 14FC_ENTITYSUB表结构: 14FC_QUERY表结构: 15数据库连接的集成 15版数据源的配置 15eformforJ2ee版数据源的配置 16引入JS文件及函数 17自定义函数 17引入JS文件 19引用CSS样式 19切换Skins皮肤样式 20增加业务函数 21(1)将用户的业务函数注册到函数的选择窗口中 21(2)在控件中增加业务函数 21定制工具栏 22(1)在eformsys\fceform\fcpub.js文件中配置信息中设置你所需要的工具栏 22(2)工具栏的用途 22打开表单 23(1)打开文件表单 23(2)打开数据库中的表单 23定制新建表单向导 23运行表单 24和用户的权限体系进行集成 24(1)进入表单权限的控制 25(2)自定义表单加权限的使用说明 25(3)表单上控件的权限控制 28和工作流集成 29(1) 表单上控件在流程的不同阶段属性值不一样 29(2) 在打开表单时加上流程信息 29(3) 设计流程工具栏 29(4) 表单加流程的使用说明 29(5) 一个完整的和工作流相结合的示例说明 33eformFAQ 41表单属性页的工具栏下拉框没有“流程工具栏”,手册上有,因为我们真是要和流程结合的? 41查询工具栏上没用打印和打印预览? 41怎么添加函数库,还有增加的函数库放在哪里? 41标签好像不能绑定数据项的。 41select*fromareawheresareaid=:key_value:什么意思? 41我们的用户信息放在session里的,我怎么取得呢 41eForm中,要上传并显示图片,怎么做呀? 41如何将控件(如button)加到tab页签控件的页中 42dataset关联一个grid,下拉列表框是另外一个表里的内容,该dataset只保存其代码。而在单据输入的时候,怎样才能那个表格显示下拉列表框的内容,而保存的时候保存和他相关联的代码呢 42我设计了form以后,可以离开eform,到visualstudio中开发吗, 42设计了form怎么导出到visualstudio? 42在eform里新建一个表单保存后是存在哪里的?工程里有没有存? 42我想把设计好的页面copy到我现有的工程里面去可以吗? 42我想是在"自定义函数"中,调用java类里的方法怎么实现? 42在自定义函数中能写哪写东西?有什么规范? 42我想知道示例里面的正式运行表单和测试运行表单有什么区别 42grid上能放附件吗? 43我如果只是做界面设计的试用,不用数据也是可以的吧? 43选中表格中怎么把选中数据的值从地址中传到下一个页面? 43比如我要在表格中每条记录后面都加上详细的选项按钮,我在这新建了一个详细的字段,在这个字段的每条记录后面显示“详细” 43怎么设置文本框最大输入数 43我本机现在有修改后的htm文件,而数据库中没有,我能不能把新的文件放到数据库中? 43我要修改某个表里的一个字段,不使用数据集行不行?只运行一下修改的SQL语句! 43怎样能指定dbimg的图片啊 43树控件可以有多个根结点吗 43单击事件可以放多个函数吗? 43我的表单在执行的时候提示找不到 44在做数据验证时,就是在dataset的属性里有两个“数据验证”的地方,还有一个“常规校验”,这3个怎么区别,什么时候用,我有点不太清楚? 44最近打开的表单的记录存在那里的,我换了个库,好像还要我以前的打开记录,但是打开是空的。 44现在客户那里有一个要求,就是让每个部门来管理自己的表单。每个部门的管理员只能看到,操作自己的表单。你现在整个eform好像只能一个管理员来操作,该怎么弄 44打开表单是为什么还要传个djtype,那个djsn不是唯一的吗?能不能去掉啊 44就是如何去掉“离开的话数据将丢失”的提示 44我自己做的画面,我用(略)/fceform/common/djframe.htm?djsn=demoUserinfo1&djtype=TT的方式可以运行起来,而我采用直接在url指定路径的方式却运行不起来,javascript报错:'parent.toolbar.location'为空或不是对象 44我可以改变标签或文件框的位置和大小吗? 44如果绑定到了数据集,运行时控件的默认值就不显示吗? 44如果在表单中,我让表格控件绑定了数据集.我在数据集中增加一个字段XG,在表格中显示为'修改',我想让XG这一列的颜色与其它的列不同,应该怎么设置? 45怎么样设置图片的移入和移出事件? 45请问可以给dbimg控件设置默认图片吗?让表单在运行时,可以直接看到图片,控件已经绑定数据集了 45eform操作保存时,显示成功,但是服务器报null,而且运行的时候,和没改之前是一样的,这可能是什么问题呢? 45我用程序代码改变了text1的值后,怎么才能使text1所绑定的数据集相应字段的值也变化. 45eform中执行存储过程的函数是哪个 45我用Label7.style.value="aghjg"好象不能修改控件的值,是不是那里写错了? 45我在下拉列表中,选出的是两个字段,一个是ID,一个是Name,选择保存时,存到数据库中的是ID还是Name? 45我想问一下,eform里面的公共变量pubdjbh(eform5.0后改为fcpubdata.keyValue)到底是干什么用的? 45你说userfunc.js文件中直接引入自己的一个js文件,怎么引入啊,那个里面不是只能写函数吗? 46我新建分类时如果路径不存在,它好像不会自己生成路径的 47我弄了一个dsmain,在数据项中将此字段设默认值1,然后将此字段绑定在一个text上,设计时显示1,一运行显示空 47现在我一个表中有5万多条数据,列表显示的时候ie就没有响应了,请问如何优化性能? 47在表单属性中的”进入时状态“能不能在表单中动态修改? 47我的表单要实现两种功能,一个是录入,一个是修改.我是做到一个表单上还是做到两个表单上比较好? 47eform中将字符串保存到剪切板的命令是什么? 47我想设combobox中的值怎么办? 47文本框输入密码怎么设置 47我们公司原来有一套自己的css,能不能简单描述一下如何应用到eform中去呢? 47树控件的点击事件中对当前选中节点的访问是怎样的 48

将eform和用户自己的系统集成在一起使用,数据库为sqlserver2000安装好sqlserver2000在sqlserver中建好用户要开发的数据库,假如数据库名为CRM下载并安装好,假如按默认安装到C:\Inetpub\wwwroot\fcbill目录下.用户已有一个CRM的.net工程,假如此工程在C:\Inetpub\wwwroot\CRM目录下,虚拟目录的名称为CRM.1将C:\Inetpub\wwwroot\fcbill\ebsys这个目录复制到C:\Inetpub\wwwroot\CRM目录下,把C:\Inetpub\wwwroot\fcbill\bin\中的所有文件复制到C:\Inetpub\wwwroot\CRM\bin目录下。2修改C:\Inetpub\wwwroot\CRM\bin\fcconfig.xml文件。数据库连接串保存在此文件中。其文件内容如下:<?xmlversion="1.0"encoding="utf-8"?><root> <datasources> <dsname="eformsqloledb"dbType="sqlserver" type="oledb"connStr="Provider=SQLOLEDB;DataSource=localhost;InitialCatalog=efdemo;UserID=sa;Password=;"/> <dsname="eformsql"dbType="sqlserver" type="sqlclient"connStr="DataSource=localhost;InitialCatalog=eformtest;UserId=sa;Password=;"/> <dsname="ebsql"dbType="sqlserver" type="oledb"connStr="Provider=SQLOLEDB;DataSource=localhost;InitialCatalog=ebtest;UserID=sa;Password=;"/> <dsname="ebsqljava"dbType="sqlserver" type="jdbc"jdbcDriver="com.newatlanta.jturbo.driver.Driver"jdbcUrl="jdbc:JTurbo://localhost/ebtest/charset=GBK"user="sa"password=""/> <dsname="eboracle"dbType="oracle" type="jdbc"jdbcDriver="oracle.jdbc.driver.OracleDriver"jdbcUrl="jdbc:oracle:thin:@localhost:1521:sys"user="eboracle"password="eboracle" /> </datasources> <fileroot>/ebsys</fileroot> <pubparam>用户.ID,用户.名称,部门.ID,部门.名称,系统.单位名称</pubparam></root>这是一个XML格式的文件,其中<datasources>节点的内容为所有数据库连接的配置,每一个子节点为一个数据库连接的配置,其中第一个子节点是默认的数据库连接的配置,即如没有选择数据源名称时,用第一个数据库连接的配置。用户需要根据自己的情况来修改数据库连接串。3在SQL-SERVER查询分析器编辑框内执行:useCRM,从而进入数据库名为:CRM操作。点击图标,解压databasebak.rar文件,打开其中的sqlserver.sql文件,点击图标,SQLServer系统自动生成eForm平台上所用的系统表。4这样用开发用户自己的CRM数据库要用的表单的开发环境就配置好了.执行http://localhost/crm/ebsys/fceform/design/design.htm就可以进入eform自定义表单设计器.使用eformforjava,数据库为oracle9i安装好oracle9i,下载并解压安装好eformforj2ee,假如安装到d:\fcsoft\tomcat\webapps\eform目录下.1修改web-inf/fcconfig.xml文件,eformforj2ee的数据库连接串保存在此文件中,此文件的内容大致如下:<?xmlversion="1.0"encoding="utf-8"?><root> <datasources> <dsname="fhjtest"dbType="sqlserver" type="jdbc"jdbcDriver="com.newatlanta.jturbo.driver.Driver"jdbcUrl="jdbc:JTurbo://localhost/eformtest/charset=GBK"user="sa"password=""/> <dsname="efdemo"dbType="oracle" type="jdbc"jdbcDriver="oracle.jdbc.driver.OracleDriver"jdbcUrl="jdbc:oracle:thin:@localhost:1521:mysys"user="efdemo"password="efdemo"/> <dsname="fcsamples"dbType="oracle" type="jdbc"jdbcDriver="oracle.jdbc.driver.OracleDriver"jdbcUrl="jdbc:oracle:thin:@localhost:1521:mysys"user="fcsamples"password="fcsamples"/> <dsname="ebjndi"dbType="sqlserver" type="jndi"jndiName="jdbc/ebjndi"jndiPrefix="java:/comp/env"/> <dsname="eboracle"dbType="oracle" type="jdbc"jdbcDriver="oracle.jdbc.driver.OracleDriver"jdbcUrl="jdbc:oracle:thin:@localhost:1521:mysys"user="eboracle"password="eboracle"/> <dsname="ebsql"dbType="sqlserver" type="jdbc"jdbcDriver="com.newatlanta.jturbo.driver.Driver"jdbcUrl="jdbc:JTurbo://localhost/ebtest/charset=GBK"user="sa"password=""/> <dsname="eformsql"dbType="sqlserver" type="jdbc"jdbcDriver="com.newatlanta.jturbo.driver.Driver"jdbcUrl="jdbc:JTurbo://localhost/eformtest/charset=GBK"user="sa"password=""/> <dsname="eformoracle"dbType="oracle" type="jdbc"jdbcDriver="oracle.jdbc.driver.OracleDriver"jdbcUrl="jdbc:oracle:thin:@localhost:1521:sys"user="eformtest"password="eformtest"/> </datasources> <fileroot>/ebsys</fileroot> <pubparam>用户.ID,用户.名称,部门.ID,部门.名称,系统.单位名称</pubparam></root>这是一个XML格式的文件,其中<datasources>节点的内容为所有数据库连接的配置,每一个子节点为一个数据库连接的配置,其中第一个子节点是默认的数据库连接的配置,即如没有选择数据源名称时,用第一个数据库连接的配置。修改其中的数据库名(如:sys),用户名,口令,以和自己的相匹配。2解压databasebak.rar文件,打开其中的oracle.sql文件,将其内容在PL/SQL软件中执行,以生成eForm平台上所用的系统表。3这样用eformforj2ee开发用户自己的CRM数据库要用的表单的开发环境就配置好了.执行http://localhost:8070/eform/ebsys/fceform/design/design.htm就可以进入eform自定义表单设计器。系统文件说明eform系统文件分为前台文件和后台文件。前台文件是指htmjscss图片xml等文件。后台文件是指在服务器端运行的文件,如dll和jar包。Eformforjava版与版的前台文件是一样的。但后台文件不一样。前台文件:上图是eform前台文件的界面图,它都在ebsys目录下。其中ebsys/eformaspx/目录下的文件是版的后台文件。在eformforjava版中不需要此目录。(1)在ebsys目录中eformhelp目录提供在线帮助,在eform设计当中点击问号,提供详细说明。如图:点击第一个问号将出现下图:(2)ebsys/fceform目录是eform的核心文件,在其下的目录:css目录是eform的样式文件,其中dj.css在样式文件中比较重要,所有表单都引用它。此目录的界面图如下:skins目录下定义了多种皮肤文件供用户定义多套样式来切换。Common有好多常用的页面,如在运行表单时先打开djframe.htm的页面。Design目录是表单要进入设计器用到的文件。如下图进入ListBox互选示例就要用到它。dj目录下放了eform系统本身要用到的表单,这些表单都是用eform设计器来设计的,也可以用eform设计器打开来修改这些表单的功能。Js目录下是一些JS文件。 csjsrequest.js这是用于当超链接的地址是链接到一个htm页面,此时希望取URL的?后的以参数名称=参数值格式的值时,就需要引用此JS,它是实现这样的功能的。 design.js表单设计器中要用到的JS fcbasecont.js基本控件(如radiocheckboxcombobox等)中要用到的一些函数。 fcdataset.js数据集控件的一些常用函数。 fcebiao.jslayout布局控件和ebiao控件的实现函数。 fcgensql.jsSQL语句生成向导界面的实现函数。 fcopendj.js打开表单用的函数 fcother.js资料选择等杂类函数 fcpub.js全局JS,它是最常用的函数,几乎所有的页面都会引用它。 fcrundj.js表单运行时会用到的函数。 fcsavedj.js表单保存时会用到的函数。 fcselfuse.jseform系统表单中会用到的函数。 fcskins.js切换皮肤的函数。 fctoolbar.js自定义表单设计器的工具栏的功能函数。 fctorun.js实现将表单的设计串转换成运行串的功能,它在表单设计器中保存表单时调用。 fcupload.js多附件上传控件的实现函数。 fcvalid.js数据验证的实现函数。 fcwebgrid.jsgrid控件的常用函数。 htmlarea.js,table-operations.js在表单设计器中设计htmltable的实现函数。 MicrosoftAjax.js微软JS框架。 selectdate.js实现选择日期。 tabpane.jstab页签控件的实现函数。 xtree.js树控件的实现函数。Htc目录下是网页控件。它类似于JS文件。 dataset.htc数据集控件的实现 fc_code.htcdropdownlist控件的实现。 NumEdit.htcspin控件的实现。 webgrid.htcgrid控件的实现。 webmenu.htc右键菜单功能的实现。Images目录下是eform要用到的图片。(3)fceformext是用户扩展用的。其下的目录: common目录常用来保存用户自定义的工具栏页面。 css目录常用来保存用户自定义的CSS文件 form_开头的目录是一些示例用的表单。 Html目录保存的是layout布局控件要用到的布局页面 Js目录保存的是用户自定义的JS文件,其中userfunc.js在默认时表单都会引用它,可以将多个表单上都要使用的JS函数写到此文件中。这样就可以在表单中调用了。 Res目录保存了上传附件控件所上传的文件。 Xml目录保存XML文件。其中的billpos.xml文件保存的是用有模式窗口打开的表单的打开位置信息。Billtype.xml文件中保存的表单的生成路径分类的信息。(4)samples目录是示例中心的框架所用的文件。(5)zk目录是新建表单向导功能和数据库中的表信息等功能的页面。后台文件:如果是版就要用到bin,在bin目录中有fcDCommon.dll是通用的连数据库用的,ebiao.dll是eform系统的后台程序。ebiaoext.dll是供用户集成和扩展时写的后台程序工程。WebBill.dll是当前工程生成的dll,即当前工程的.aspx.cs文件生成的版的后台文件还有ebsys/eformaspx/下的文件,它只有一个WebBill.aspx,这是由前台JS调用后台DLL的关联性的文件,即前台JS用AJAX方式先调用WebBill.aspx,再由WebBill.aspx.cs文件(此文件编译成WebBill.dll)来调用后台DLL文件中的方法。如果是eformforjava版,需要web-inf/目录下的fcconfig.xml文件和perties文件,perties文件是log4j的日志的配置文件。web-inf/lib目录下文件。其中eform.jar是eform运行的包。这个包中的根目录下是WebBill.class文件,这是一个servlet,前台JS用AJAX方式先调用先调用到此servlet,然后再调其它的类。.fcsoft.ajax这个包下是eform读写后台数据库的主要的类文件.fcsoft.report.ext这个包下是供用户集成或扩展用的类文件。.fcsoft.util这个包下是一些常用的工具类。web-inf/lib目录下的下面的文件是一些开源的包及数据库的驱动: commons-fileupload-1.1.jar和commons-io-1.2.jar是用于上传附件 dom4j-1.6.1.jar和jaxen-1.1-beta-6.jardom4j用于分析xml的 GUID-OpenTools.jar用于产生GUID值 log4j_128.jarlog4j日志 ojdbc14.jaroracle库的JDBC驱动 sqlserver7jdbc.jaruna2000.jar这是两个sqlserver库的JDBC驱动,可选其中一个使用。 Eform系统文件中的配置信息说明Eform系统文件中有两个文件是可配置的,用需要根据自己的需要而修改它们,这两个文件是:一个是前台的JS文件,是ebsys/fceform/js/fcpub.js,它用于配置前台JS中要用到的信息。另一个是后台的XML文件,它配置后台程序中要用到的一些配置信息。如果是版这个文件是bin目录下的fcconfig.xml文件,如果是版这个文件是web-inf目录下的fcconfig.xml文件。fcpub.js文件中的配置信息说明varfcpubdata={ servletPath :"/ebsys/eformaspx", //调用后台文件的基路径,for.NET的常用写法是:/ebsys/eformaspx,eformforj2ee的常用写法是:/servlet path :"/ebsys", //定位到fceform目录,不含虚拟目录的路径,常用写法是:/eformsys dotnetVersion :".aspx", //=""表示为java版本,=".aspx"为.net版本 databaseTypeName :"sqlserver", //数据库类型,sqlserver/mysql/oracle/db2 dbStruDict:"FC_DBSTRU",//="FC_DBSTRU"="FC_FLDLIST"=""表示临时从数据库中取. cssFiles:[],//在表单中加载的css文件,路径在fceform目录,一般写/css/xx.css skins:"base",//表单skin可设值为:base/blue/red/yellow/light/green/white toolbarStyle :"base",//设计器工具栏的样式可设值为:base/blue/red/yellow/light/green/white actionButtonDisplay:"",//控件属性框中的设置权限按钮的style.display属性值"none"表示不显示 db2UserName :"DB2ADMIN", //db2数据库的用户名(即模式名) gridNoFieldName :"dj_sn", //主子表编辑时子表的顺序号字段名 billOpenWinName :"rightmain", //运行表单的帧窗口的名称 position :"absolute", //缺省的定位模式=absolute/static toolbar:"newempty,opendj,opendjfile,billtype,djpreview,directrun,save,saveas,|,cut,copy,paste,undo,redo,|,align,focus,front,behind,form,|,userfunction,userfunction1,addhtml,execute,showlist,listconfig,setPosition,|,cbozoom,br,button,label,img,div,shape,|,tab,tree,a,spin,checkboxlist,radiolist,|,dataset,grid,htmltable,formattab,|,text,checkbox,radio,listbox,combobox,dropdownlist,textarea,|,dbimg,upload",//表单设计器工具栏按钮,|是分隔符,br是换行 formToolbar :"<optionpath=\"~/fceform/common/toolbarinput1.htm\">单表输入工具栏</option><optionpath=\"~/fceform/common/toolbarinput2.htm\">多表输入工具栏</option><optionpath=\"~/fceform/common/toolbarfind.htm\">查询工具栏</option><optionpath=\"~/fceform/common/toolbar.htm\">带工具栏</option>",//配置用eform画的表单的可用工具栏,内容为<option>格式的XML串,节点属性path表示页面路径,~表示fcpubdata.path值,节点属性height表示工具栏占的高度,如不指定,则取默认值为31px,节点值为工具栏名称,在表单设计器的表单属性窗口中以列表形式显示,供操作员选择。 sendHttpErrMsg :":与后台连接出错:", //特定的连后台出错信息 area:null,//eform的设计区,是个div元素. dsMain :"DsMain", //主数据集即未绑定到表格的第一个数据集的ID pubSession :"null",//取得session的标识,这是为了用同步方式取session的方法,常用写法是:username=&deptname= autoAddField :"no" , //为yes表示新建表单时是否自动加一个主数据集,以及加控件时自动加字段。 pubdataSrc :"", //保存各子窗口的url,下同 topicSrc :"", keyValue:"",//原来的pubdjbh,用于跟踪主键字段的值 obj:null,//原来的pubDataSet,用于在表单之间传递对象参数时用. isEdit:false,//原来的pubEdit,判断表单是否手动修改过的标志. enterStatus:"OK", //判断能不能进入表单,为OK表示可以进入. arrValidObj:newArray(),//保存校验失败的事件对象,用于在保存前再校验. controls:newObject(),//取表单上的所有控件, popup:window.createPopup()//等待窗口};fcconfig.xml文件中的配置信息说明<?xmlversion="1.0"encoding="utf-8"?><root> <datasources>//数据源配置列表 <dsname="eformsqloledb"dbType="sqlserver" type="oledb"connStr="Provider=SQLOLEDB;DataSource=localhost;InitialCatalog=efdemo;UserID=sa;Password=;"/> <dsname="eformsql"dbType="sqlserver" type="sqlclient"connStr="DataSource=localhost;InitialCatalog=eformtest;UserId=sa;Password=;"/> <dsname="ebsql"dbType="sqlserver" type="oledb"connStr="Provider=SQLOLEDB;DataSource=localhost;InitialCatalog=ebtest;UserID=sa;Password=;"/> <dsname="ebsqljava"dbType="sqlserver" type="jdbc"jdbcDriver="com.newatlanta.jturbo.driver.Driver"jdbcUrl="jdbc:JTurbo://localhost/ebtest/charset=GBK"user="sa"password=""/> <dsname="eboracle"dbType="oracle" type="jdbc"jdbcDriver="oracle.jdbc.driver.OracleDriver"jdbcUrl="jdbc:oracle:thin:@localhost:1521:sys"user="eboracle"password="eboracle" /> </datasources> <fileroot>/ebsys</fileroot>//文件的根路径, <pubparam>用户.ID,用户.名称,部门.ID,部门.名称,系统.单位名称</pubparam>//配置的全局参数.</root>数据库表结构说明eform可能会用到的系统表有:FC_ATTACH、FC_BILLZL、FC_MAXBH。FC_ATTACH表结构:CREATETABLEFC_ATTACH( extendvarchar(255)NULL,//附件的文件扩展名,如:.txt djbhchar(15)NOTNULL,//关联主键值,比如当前附件属于职员张三的,而职员张三的ID为ZBF00000014,则此字段的值就保存ZBF00000014,由此字段来建立附件与附件所属者之间的关联。因为一次可以上传多个附件(即一个职员可能会有多个附件),所以此字段在当前表中并不是唯一的。 dj_snintNULL,//多附件时的顺序号,可空。 filenamevarchar(255)NULL,//附件的原始文件名,如:D:\1.txt,表示这个附件是从客户端的D:\1.txt处上传而来的。 attachidchar(11)NOTNULL,//本表的主键字段,唯一标识。 bzvarchar(255)NULL,//附件备注信息 djsnvarchar(40)NULL,//表示本附件是由哪张表上传来的,此字段保存表名 fileposvarchar(250)NULL//附件上传后在服务器端保存的位置,如:/fceformext/res/c7f3dbc4-41ed-453e-a820-91569f2f57d7.txt);FC_ATTACH表用于记录上传的附件的相关信息,如果用户没有用eform中的上传附件控件的话,则这张系统表可以不要。FC_BILLZL表结构:CREATETABLEFC_BILLZL( djidintNOTNULL,//本表主键,用于唯一标识 dj_namevarchar(40)NULL,//表单中文名称 djlxvarchar(20)NULL,//表单分类号 xmltextntextNULL,//表单运行串 DjPositionvarchar(255)NULL,//表单的位置等信息 djsnvarchar(40)NULL,//表单SN,即表单的程序调用名称 designtextntextNULL,//表单设计串 stmptablevarchar(4000)NULL,//用于生成临时表的建表字符串 userTypevarchar(50)NULL//用户自定义的表单分类);FC_BILLZL表用于保存eform设计的表单,每条记录保存一张表单。如果用户将所有的表单直接保存在.dj的文件中的话,则不需要建这张系统表。反之,如果用户需要将表单保存在数据库中的话,则需要建这张表。FC_MAXBH表结构:CREATETABLEFC_MAXBH( biaoshichar(3)NOTNULL,//三个字母的标识,本表主键 recnumintNULL//最大号);FC_MAXBH表用于生成唯一标识号的表,即用此表来生成主键字段的值。如果用户不用这种方式来生成主键字段的值的话,则不用建这张系统表。但要注意,默认时,象FC_BILLZL表的主键字段(djid)的值的生成就要用到这张表。FC_DATADICT表结构:CREATETABLEFC_DATADICT( idchar(11)NOTNULL, typenamevarchar(50)NOTNULL, dj_snintNULL, namevarchar(50)NULL, codechar(10)NULL);FC_DATADICT表是数据词典表,保存了在eform本身用的数据词典信息,如果用户不用此表,则数据库中的表信息界面上的查询信息会显示不出。FC_ENTITY表结构:CREATETABLEFC_ENTITY( orgidchar(11)NULL, tbnamevarchar(50)NOTNULL,//表名 tbchnnamevarchar(50)NULL, //表中文名 owneridchar(11)NULL, keyPrefixchar(3)NULL);FC_ENTITY表用于保存数据库中的表名和表中文名,也可不用此表。FC_ENTITYSUB表结构:CREATETABLEFC_ENTITYSUB( orgidchar(11)NULL, tbnamevarchar(50)NOTNULL,//表名 fdnamevarchar(50)NOTNULL, //字段名 chnnamevarchar(50)NULL, //字段中文名 fdtypechar(4)NULL, //字段类型,取值:字符/整数/实数/文本/图像 fdsizeintNULL, //字段长度 fddecintNULL, //小数位数 typechar(10)NULL,//字段详细类型 detailxmlvarchar(7000)NULL//详细信息,XML格式的);FC_ENTITYSUB表用于保存数据库中的表的字段名和字段中文名和字段类型长度等,也可不用此表。FC_QUERY表结构:CREATETABLEFC_QUERY( typeintNOTNULL,//类别 tbnamevarchar(50)NOTNULL,//表名 fdlistvarchar(2000)NULL,//字段名列表,用逗号分隔 fdchnlistvarchar(3000)NULL//字段中文名列表,用逗号分隔);FC_QUERY表查询信息,即常用的查询的输出字段信息。在极端的情况下,是可以不用建任何eform系统表的。即不用额外建任何表,就可以用eform来设计用户表单。数据库连接的集成版数据源的配置在bin目录中有一个fcconfig.xml的文件,此文件的格式如下:<?xmlversion="1.0"encoding="utf-8"?><root> <datasources> <dsname="eformsqloledb"dbType="sqlserver" type="oledb"connStr="Provider=SQLOLEDB;DataSource=localhost;InitialCatalog=eformtest;UserID=sa;Password=;"/> <dsname="eformsql"dbType="sqlserver" type="sqlclient"connStr="DataSource=localhost;InitialCatalog=eformtest;UserId=sa;Password=;"/> <dsname="ebsql"dbType="sqlserver" type="oledb"connStr="Provider=SQLOLEDB;DataSource=localhost;InitialCatalog=ebtest;UserID=sa;Password=;"/> </datasources> <fileroot>/ebsys</fileroot> <pubparam>用户.ID,用户.名称,部门.ID,部门.名称,系统.单位名称</pubparam></root>这是一个XML的配置文件,其中的datasources节点用于配置数据源,一般是把可能用到的数据源一个个都配置在此。其下每一个ds节点表示一个数据源。ds节点的格式说明如下: <dsname="eformsqloledb" //数据源名称dbType="sqlserver" //数据源连接的数据库类型,其值为:sqlserver/oracle/db2/mysql type="oledb" //连接对象类型,其值为:oledb/sqlclient/oracleclientconnStr="Provider=SQLOLEDB;DataSource=localhost;InitialCatalog=eformtest;UserID=sa;Password=;" //具体的数据库连接串/>其中数据源名称会出现在界面上的选择数据源的地方。第一个ds节点为默认的数据源,即当没有指定数据源名称时,表示用第一个ds节点中配置的数据源。动态数据源的配置当数据源名称为:fcDsnTemp时,表示此时数据库连接可以由代码动态产生。如果需要将fcDsnTemp这个名称改名的话,可以通过修改ebiaoext项目下ConfigFix类中的如下行: publicstaticstringdatasourceNameTemp="fcDsnTemp";//动态的数据源名称,当数据源名称为此表示由外部接口程序来产生数据库的连接.来达到。 动态产生数据库连接的代码需要写到ebiaoext项目下GetDbConnection类的publicstaticDBOperatorgetDBOperator(){中。eformforJ2ee版数据源的配置在WEB-INF目录中有一个fcconfig.xml的文件,此文件的格式如下:<?xmlversion="1.0"encoding="utf-8"?><root> <datasources> <dsname="ebjndi"dbType="sqlserver" type="jndi"jndiName="jdbc/ebjndi"jndiPrefix="java:/comp/env"/> <dsname="fhjtest"dbType="sqlserver" type="jdbc"jdbcDriver="com.newatlanta.jturbo.driver.Driver"jdbcUrl="jdbc:JTurbo://localhost/eformtest/charset=GBK"user="sa"password=""/> </datasources> <fileroot>/ebsys</fileroot> <pubparam>用户.ID,用户.名称,部门.ID,部门.名称,系统.单位名称</pubparam></root>这是一个XML的配置文件,其中的datasources节点用于配置数据源,一般是把可能用到的数据源一个个都配置在此。其下每一个ds节点表示一个数据源。ds节点的格式说明如下: <dsname="fhjtest" //数据源名称jndiName="jdbc/ebjndi" //jndi名称dbType="sqlserver" //数据源连接的数据库类型,其值为:sqlserver/oracle/db2/mysql type="jdbc" //类型,其值为:jdbc/jndi/fcpooljndiPrefix="java:/comp/env" //表示查找数据源时的环境串前缀,在不同的WEB服务器中不同,如Tomcat中是java:/comp/env,而Weblogic和Websphere中均不需要,可以不填。jdbcDriver="com.newatlanta.jturbo.driver.Driver" //驱动jdbcUrl="jdbc:JTurbo://localhost/eformtest/charset=GBK"//URLuser="sa" //用户名password="" //密码/>如果type=fcpool,则表示使用eform自身的数据库连接池,此时数据库连接信息的配置在webapps\eform\web-inf\classes\perties文件中.其中数据源名称会出现在界面上的选择数据源的地方。第一个ds节点为默认的数据源,即当没有指定数据源名称时,表示用第一个ds节点中配置的数据源。动态数据源的配置数据库连接的打开和关闭在.fcsoft.report.ext..DBConn.java的open()和close()上,用户可以改写这个类的代码,以便控制用自己的数据库连接。当数据源名称为:fcDsnTemp时,表示此时数据库连接可以由代码动态产生。如果需要将fcDsnTemp这个名称改名的话,可以通过修改.fcsoft.report.ext.ConfigFix类中的如下行: publicstaticStringdatasourceNameTemp="fcDsnTemp";//动态的数据源名称,当数据源名称为此表示由外部接口程序来产生数据库的连接.来达到。 动态产生数据库连接的代码需要写到.fcsoft.report.ext.GetDbConnection类的publicstaticConnectiongetConnection()throwsException中。引入JS文件及函数在eform设计的表单中,常常需要自定义一个JS函数来实现一些特殊的功能,有时某些JS函数需要在多个表单中使用,或是需要调用在自己的JS文件中的某些函数。自定义函数在eform设计的表单中,当需要自定义一个JS函数,只在本表单中用时。可以从eform表单设计器界面的上边的工具栏中,点自定义函数按钮,在弹出的窗口中写上自定义函数的内容。界面图如下: 在上面的窗口中写的内容,在eform表单设计器中保存表单时,会套上一个<script>…</script>后保存到表单中。在一个页面文件中,能够在<script>…</script>中写的JS程序的内容,都可以在上面的窗口中写,而且写的作用和在页面的<script>…</script>中写的作用是一样的。比如:要定义一个页面级的JS的全局变量的话,就可以在上面的窗口中的首行直接写上:varpubVar=123;这样就表示定义了一个名为pubVar的全局变量,其值为123。 当用户经常需要写自定义函数,或是要写很多的自定义函数时,在上面的窗口中写就不太方便,此时可以用带颜色的自定义函数了。其界面图如下:在这个界面上写JS代码就要方便得多了。在此写其功能是和上面的一样的。但它需要安装一个cmax30e.rar的软件,而且需要将客户端的IE使用activeX控件的权限放低才行。引入JS文件在eform设计的表单中,当只需要在本表单中使用某个函数时,可以在上述的自定义函数的界面上写,但当希望函数能在多个表单中使用时,则需要将函数的内容写到JS文件中,然后在表单生成的页面上引入JS文件,这样就可以在表单上调用了。默认情况下,eform设计的表单都会引入了ebsys/fceformext/js/userfunc.js文件,所以可以将要在多个表单中使用的函数直接写到此文件中即可.如果想要单独弄一个JS文件,让此文件的所有函数可以在所有的表单中使用,则需要修改ebsys/fceform/js/fcpub.js文件中的 varscripts=[fcpubdata.path+"/fceform/js/fcskins.js",fcpubdata.path+"/fceform/js/fcvalid.js"]; varheads=document.getElementsByTagName("head");部分,象引入fcskins.js等文件一样,写上要引入的文件的路径即可.引用CSS样式在页面中都是通过CSS来定义表单的样式,eform设计的表单实际上也是生成一个页面,所以可以象常规页面一样来用CSS定义样式.在表单生成的页面中,都会引入了ebsys/fceform/css/dj.css样式文件,所以可以将所有表单都要用的样式直接定义在此文件中.如用户自己已有一个CSS文件,或是希望单独的一个CSS文件需要在表单中使用,可以在ebsys/fceform/js/fcpub.js文件中的 cssFiles:[],//在表单中加载的css文件,路径在fceform目录,一般写/css/xx.css"/css/tdm_main.css"处加上,如为cssFiles:[“/css/test.css”],//在表单中加载的css文件,路径在fceform目录,一般写/css/xx.css"/css/tdm_main.css"表示引入了ebsys/fceform/css/test.css文件.也可以用逗号分隔来引入多个CSS文件.切换Skins皮肤样式当需要做好多套Skins样式供运行时切换时,可以这样做。先将每套Skins样式放在一个目录下,此目录应在ebsys\fceform\css\skins\目录下,且应将目录名作为Skins皮肤的名称。在ebsys/fceform/js/fcpub.js文件中的skins:"base",//表单skin可设值为:base/blue/red/yellow/light/green/white toolbarStyle :"base",//设计器工具栏的样式可设值为:base/blue/red/yellow/light/green/white设置默认的skins皮肤样式,其中skins:"base",设置的是用eform表单设计器设计的表单的默认的skins皮肤样式,toolbarStyle:"base"

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论