这个工具的目的是,在项目开始阶段快速的产生项目原型,提高沟通和需求确认的效率,避免由于需求确认的问题影响项目进度。
由于我们产生的代码是直接可以运行的,所以这个功能也可以提供代码框架供2开使用。
使用这个工具,发开者可以根据模板快速的实现从bm到screen页面的过程,省去了绝大部分需要编写代码的操作。
为了实现整个过程的自动化,我们在bm的某些Tag上增加了一些特殊的属性,这些属性具有特殊的目的,目前只会在我们的原型编辑器中起作用。
下面列出这些属性的相关信息
Table 1. bm特殊属性列表
属性名 | 所在Tag | 可选值 | 说明 |
---|
defaultDisplayField | model | 当前bm的一个field或ref-field的name | 当此bm被用作comboBox的数据源时,指明哪个字段作为displayField |
defaultEditor | field | (同常规输入组件:textField,lov等) | 指明这个字段默认使用哪种编辑器来显示或编辑 |
options | field | (bm的classpath形式) | 当此field使用lov(或comboBox)作为编辑器的时候,指定lovService(或options的model) |
有了符合要求的bm以后,就可以根据合适的模板来使用我们的设计器了。
bm是整个过程的基础,模板是整个过程的入口。
现在有3个表:uip_emp,uip_dept,uip_job
所用bm可在附件中下载
现在要做一个页面,完成对uip_emp表的增删改查操作。
原型工程不同于Aurora工程,但必须关联一个Aurora工程才可以。如果新建的时候没有选择关联工程,也可以以后通过“工程属性”页进行修改,重新设置。
原型工程默认包含3个目录:model_prototype,template,ui_prototype。
*model_prototype主要用来存放一些与bm自动生成生成有关的文件,这在将来会用得到。
*template用来存放模板及其相关文件。
*ui_prototype用来存放原型文件(*.uip),此目录的结构会自动对应到 所关联 Aurora工程的 [web]目录的结构。
下面我们开始在ui_prototype目录下新建原型文件,由于要从模板开始,新建文件请使用向导来完成。
接下来开始选择模板。
在向导页面上,我们可以浏览所有模板(预览图),选择一个合适的模板后就可以进入下一步。
为模板选择合适的bm
虽然我们有3个bm,但是主bm只有一个:uip_emp(根本原因是:选择的模板只需要一个bm),另外两个是被uip_emp引用的,这种引用关系会被自动解析得到。
根据bm和模板自动生成的页面,大概就是编辑器中显示的样子
5.生成代码
修改完成并保存以后就可以生成代码了。点击工具栏上的按钮
代码会自动生成到关联的Aurora工程[web]目录下,并保持目录结构。
接下来就可以去做一些配置(如注册页面,分配bm等),然后测试一下功能是不是完善。
自动生成的页面是比较简单的,如果希望进一步实现一些特殊的功能,则需要配置一下。
设计器中容器类(可以放置其他组件)组件分为4种类型:
* 查询区域,用于放置一些输入组件,形成查询条件(如Form,Fieldset等)
* 按钮区域,用于放置button(如hbox等)
* 结果区域,查询的结果显示区域(如grid等)
* 无,普通的组件
位于Grid的ToolBar上的Button,有5种标准的类型可以选择,还可以添加自定义按钮。
设计器默认提供了几种预定义的button类型(这些类型screen中并不存在),使得设计者只需进行简单的设置就可以自动生成js代码。
当预定义类型仍不能满足要求时,可以自己写一些js代码。
Table 2. button类型
类型 | 描述 |
---|
查询 | 选择一个作为“结果区域”的组件 |
重置 | 选择一个作为“查询区域”的组件,重置它绑定的DataSet |
保存 | 选择一个作为“结果区域”的组件,提交它绑定的DataSet |
打开 | 新弹出窗口,显示指定的页面 |
关闭 | 关闭指定的窗口(id) |
自定义 | 写一个javascript函数 |
renderer主要用于Grid
column上的数据渲染。(screen上的renderer用途不仅限于此,目前我们的设计器仅在此处使用renderer)
使用renderer可以使用特定的格式去显示数据,或者以超链接的形式展示其他的页面。
column默认都是不适用renderer,如果使用的话,有3中预定模式可供选择:
Table 3.
类型 | 描述 |
---|
(不使用) | 默认不使用renderer |
页面跳转 | 使用指定的显示文本,指定页面,生成一个超链接,可以打开一个窗口显示指定页面 |
内置函数 | 内置了3个用于格式化日期、数字的函数 |
自定义函数 | 自己写一个渲染函数 |
复合表头需要的操作很简单:只需额外新建一列,把需要的列拖进去即可。
查询区域的输入组件的默认类型都来自bm文件的信息。如需要改变其类型,则可右击,选择TypeChange
如Form,FieldSet,HBox,VBox等容器类组件也可以改变类型,操作同上。
Grid column 也可以设置编辑器,如需改变,只需在属性区域进行简单选择即可。
Comments
0 Responses to the article暂时没有评论。