dorado开发笔记
时间:2010-07-14 来源:mozhx
(冒号是参数声明,表示是一个参数)
单表的查询
选dataset1后点“向导”按钮,点where标签,选一个字段右移过去。。。。value填变量名如“:Employee_ID”必须带冒号 ,ok
(向导完成后在dataset1下的MatchRule文件夹下可看到设置好的条件,相同步骤:右击MatchRule文件夹-insert-BaseMatchRule) 预览jsp文件,看到没有数据输出。原因是要将MatchRule文件夹属性的ecacpaeEnabled属性设为true。ecacpaeEnabled设为true表示允许逃逸,即当该条件没有值时,就不生成相应的SQL语句,相当于动态查询。再浏览Ok. 5.3. 添加条件数据集 添加一个FormDatset重命名为datasetConditions。在datasetConditions子节点Fields添加3个Field,重命名为Employee_ID, SalaryMin, SalaryMax。
datasetConditions中Field的命名最好与dataset1的匹配条件中的Value的命名相同。不相同也可以,但需要额外添一些做转换的手工代码,这里先不介绍。
5.4. 添加用于条件输入的表单 在Controls中添加一个AutoForm,重命名为formConditions,设置其dataset属性为datasetConditions。 5.5. 添加查询命令 添加一个QueryCommand,重命名为commandQuery。
设置commandQuery的queryDataset为dataset1,conditionDataset为datasetConditions。 5.6. 添加查询按钮 添加一个按钮,设置button1的command属性为buttonQuery
设置command属性为commandQuery 将AutoForm,buttonQuery复制到jsp中,ok. 5.7. 改进
将button1输出到JSP,浏览页面,在Employ_ID文本框中输入“%AN%”,在SalaryMin与SalaryMax中分别输入1000与5000,点击button1,就得到工号中包含“AN”,并且Salary大于等于1000,并且Salary小于等于5000的记录。 做一处改进,一个是在commandQuery的beforeExecute方法中添加代码。
var Employee_ID = datasetConditions.getValue("Employee_ID");
if (Employee_ID) {
command.parameters().setValue("Employee_ID", "%" + Employee_ID + "%");
}
else {
command.parameters().setValue("Employee_ID", "");
}
这样在Employee_ID中输入“AN”即可,不用在前后特别加上2个通配符“%”了。 再做一处改进,在datasetConditions的Fields中的SalaryMin与SalaryMax的dataType属性设为double。这样在页面上SalaryMin与SalaryMax就只接入数字型的输入了。 ======================================================
DatasetDropDwon
在datasetDept中显示公司(分公司作为下拉框显示) 建两个autoSQLDataSet名为:datasetDept,datasetBranch
一个dataTable
一个autoFrom
一个dataseDropDwon,设置属性:
dataset选 datasetBranch
lableField
valueField
mapValue选true 在datasetDept下的field文件夹下选中branchId字段,并设置dropdown属性,点view节点,生成jsp。ok. ========================
CustomDropDown使用 1.建一个view名:viewEmployee 建autoSQLdataset选表employee,所有字段右移,点add按钮设置与表dept的id关联.再点dept对象,点branchName字段右移过去,点ok关闭窗口。
建dataTable
建dataPilot
建pagePilot
建一个button
建一个commandUpdate,在command节点下面建一个datasetInfo并设置dataset属性
建一个CustomDropDown,并设置:
autoDropDown=true//获得焦点自动弹出
cachable=true//缓存下级内容
path输入dept-tree.jsp //这个jsp是另一个view生成的。 选在dataset节点下field文件夹的dept_Name字段设置dropDown属性为上面创建的CustomDropDown,将字段与customDropDown关联
2.建一个view名为deptTree 建一个dataTree名treeDept
再在treeDept下建一个Simple treeLaval名levleBranch,同样在leveBranch下建simple treeLaval名为levelDept 建两个autoSQLdataset名为:datasetDept,datasetBranch。在datasetDept中设置关系与表branch的BRANCH_ID关联。
在datasetDept下插入一个baseMatchRule(匹配条件),设置属性:
table=dept
oprater选=
originField输入BRANCH_ID
value输入:BRANCH_ID(冒号是参数声明,表示是一个参数) 设置MasterLink
(下面我们将datasetBranch与datasetDept建立关联,确保datasetDept中:BRANCH_ID的参数值来源于datasetBranch。在dorado中通过dataset的MasterLink对象建立这种关联关系。
选中datasetDept的MasterLink,点属性masterDataset的编辑框,会出现一个按钮,点这个向导按钮。
系统将会在Join Relations编辑框中出现 “BRANCH_ID=BRANCH_ID”数据行。
这样就通过MasterLink的配置给两个Dataset之间定义了一个关联关系。datasetDept会自动的通过MasterLink对象的配置动态的从datasetBranch中获取BRANCH_ID的值并作为datasetDept的参数:BRANCH_ID的值。 ) 选中创建的treeDept,选中levelBranch:
1. labelField属性设置为BRANCH_NAME,用于树节点的标题显示。
2. dataset属性设置为datasetBranch。 接下来,选中levelDept
1. labelField属性设置为DEPT_NAME,用于树节点的标题显示。
2. dataset属性设置为datasetDept。
3. hasChild设置为false,表示无子节点,即本层是叶子节点。
生成jsp。浏览ok.
-----------------
完善tree功能 定义treeDept节点事件onclick代码: if(tree.getCurrentNode().getLevel() != 1)
DropDown.closeFrame(tree.getCurrentNode().getRecord());
以上代码的意思是,当选择节点的层次不是第一层时,也就是说不是分公司节点时,返回选中节点的附属Record对象,并且通过DropDown的closeFrame函数关闭下拉框。由于在treeDept的设计中,我们规定了第一层节点显示分公司的信息,通过这样处理,就可以确保只有在用户选择了部门节点之后,下拉框才会关闭。
回到视图模型EmployeeOperate中,选中dropdownDept对象,设置其中的readFields和writerFields的属性都为DEPT_ID,DEPT_NAME。两个属性保持一致。如下图: readFields = DEPT_ID,DEPT_NAME
writerFields = DEPT_ID,DEPT_NAME
这两个属性在用户选中下拉框的一个部门节点后使用,dropdownDept会自动的从下拉框中返回的record中获取DEPT_ID,DEPT_NAME的信息并设置到主界面上。 完美tree功能只是做到了可以修改员工的分公司信息。。
---------------- 6.2.8. 步骤七:Excel数据导出 在viewEmployee视图中添加Export2ExcelCommand控件
选中创建的Export2ExcelCommand,设置属性: id属性,修改为commandExport
dataset属性,与Dataset绑定,设置为datasetEmployee;
templateTable属性,表示要导出的DataTable,设置为tableEmployee;
exportMode属性,导出模式,设置为download,表示下载为Excel文件;
创建一个Button对象名为buttonExport并设定buttonExport的command属性为commandExport,value属性设定为“导出为Excel文件”
--------------------
打包 在DoradoStudio界面上点上图中的按钮Project Properties,出现Project Properties对话框 ,选择Build标签卡。【图 64】
在Archive Path中输入打包路径。
例如:c:\hr.war
设置完毕后,点ok。
该属性用以设定dorado studio在执行build编译时是否自动的将当前的项目打包成hr.war文件,并存放在c盘根目录下。
接下来我们要进行打包输出操作。
点工具栏中的Build按钮【图 65】,进行建置输出。 ok了,生成了hr.war文件,直接copy到tomcat的webapp目录下即可。
选dataset1后点“向导”按钮,点where标签,选一个字段右移过去。。。。value填变量名如“:Employee_ID”必须带冒号 ,ok
(向导完成后在dataset1下的MatchRule文件夹下可看到设置好的条件,相同步骤:右击MatchRule文件夹-insert-BaseMatchRule) 预览jsp文件,看到没有数据输出。原因是要将MatchRule文件夹属性的ecacpaeEnabled属性设为true。ecacpaeEnabled设为true表示允许逃逸,即当该条件没有值时,就不生成相应的SQL语句,相当于动态查询。再浏览Ok. 5.3. 添加条件数据集 添加一个FormDatset重命名为datasetConditions。在datasetConditions子节点Fields添加3个Field,重命名为Employee_ID, SalaryMin, SalaryMax。
datasetConditions中Field的命名最好与dataset1的匹配条件中的Value的命名相同。不相同也可以,但需要额外添一些做转换的手工代码,这里先不介绍。
5.4. 添加用于条件输入的表单 在Controls中添加一个AutoForm,重命名为formConditions,设置其dataset属性为datasetConditions。 5.5. 添加查询命令 添加一个QueryCommand,重命名为commandQuery。
设置commandQuery的queryDataset为dataset1,conditionDataset为datasetConditions。 5.6. 添加查询按钮 添加一个按钮,设置button1的command属性为buttonQuery
设置command属性为commandQuery 将AutoForm,buttonQuery复制到jsp中,ok. 5.7. 改进
将button1输出到JSP,浏览页面,在Employ_ID文本框中输入“%AN%”,在SalaryMin与SalaryMax中分别输入1000与5000,点击button1,就得到工号中包含“AN”,并且Salary大于等于1000,并且Salary小于等于5000的记录。 做一处改进,一个是在commandQuery的beforeExecute方法中添加代码。
var Employee_ID = datasetConditions.getValue("Employee_ID");
if (Employee_ID) {
command.parameters().setValue("Employee_ID", "%" + Employee_ID + "%");
}
else {
command.parameters().setValue("Employee_ID", "");
}
这样在Employee_ID中输入“AN”即可,不用在前后特别加上2个通配符“%”了。 再做一处改进,在datasetConditions的Fields中的SalaryMin与SalaryMax的dataType属性设为double。这样在页面上SalaryMin与SalaryMax就只接入数字型的输入了。 ======================================================
DatasetDropDwon
在datasetDept中显示公司(分公司作为下拉框显示) 建两个autoSQLDataSet名为:datasetDept,datasetBranch
一个dataTable
一个autoFrom
一个dataseDropDwon,设置属性:
dataset选 datasetBranch
lableField
valueField
mapValue选true 在datasetDept下的field文件夹下选中branchId字段,并设置dropdown属性,点view节点,生成jsp。ok. ========================
CustomDropDown使用 1.建一个view名:viewEmployee 建autoSQLdataset选表employee,所有字段右移,点add按钮设置与表dept的id关联.再点dept对象,点branchName字段右移过去,点ok关闭窗口。
建dataTable
建dataPilot
建pagePilot
建一个button
建一个commandUpdate,在command节点下面建一个datasetInfo并设置dataset属性
建一个CustomDropDown,并设置:
autoDropDown=true//获得焦点自动弹出
cachable=true//缓存下级内容
path输入dept-tree.jsp //这个jsp是另一个view生成的。 选在dataset节点下field文件夹的dept_Name字段设置dropDown属性为上面创建的CustomDropDown,将字段与customDropDown关联
2.建一个view名为deptTree 建一个dataTree名treeDept
再在treeDept下建一个Simple treeLaval名levleBranch,同样在leveBranch下建simple treeLaval名为levelDept 建两个autoSQLdataset名为:datasetDept,datasetBranch。在datasetDept中设置关系与表branch的BRANCH_ID关联。
在datasetDept下插入一个baseMatchRule(匹配条件),设置属性:
table=dept
oprater选=
originField输入BRANCH_ID
value输入:BRANCH_ID(冒号是参数声明,表示是一个参数) 设置MasterLink
(下面我们将datasetBranch与datasetDept建立关联,确保datasetDept中:BRANCH_ID的参数值来源于datasetBranch。在dorado中通过dataset的MasterLink对象建立这种关联关系。
选中datasetDept的MasterLink,点属性masterDataset的编辑框,会出现一个按钮,点这个向导按钮。
系统将会在Join Relations编辑框中出现 “BRANCH_ID=BRANCH_ID”数据行。
这样就通过MasterLink的配置给两个Dataset之间定义了一个关联关系。datasetDept会自动的通过MasterLink对象的配置动态的从datasetBranch中获取BRANCH_ID的值并作为datasetDept的参数:BRANCH_ID的值。 ) 选中创建的treeDept,选中levelBranch:
1. labelField属性设置为BRANCH_NAME,用于树节点的标题显示。
2. dataset属性设置为datasetBranch。 接下来,选中levelDept
1. labelField属性设置为DEPT_NAME,用于树节点的标题显示。
2. dataset属性设置为datasetDept。
3. hasChild设置为false,表示无子节点,即本层是叶子节点。
生成jsp。浏览ok.
-----------------
完善tree功能 定义treeDept节点事件onclick代码: if(tree.getCurrentNode().getLevel() != 1)
DropDown.closeFrame(tree.getCurrentNode().getRecord());
以上代码的意思是,当选择节点的层次不是第一层时,也就是说不是分公司节点时,返回选中节点的附属Record对象,并且通过DropDown的closeFrame函数关闭下拉框。由于在treeDept的设计中,我们规定了第一层节点显示分公司的信息,通过这样处理,就可以确保只有在用户选择了部门节点之后,下拉框才会关闭。
回到视图模型EmployeeOperate中,选中dropdownDept对象,设置其中的readFields和writerFields的属性都为DEPT_ID,DEPT_NAME。两个属性保持一致。如下图: readFields = DEPT_ID,DEPT_NAME
writerFields = DEPT_ID,DEPT_NAME
这两个属性在用户选中下拉框的一个部门节点后使用,dropdownDept会自动的从下拉框中返回的record中获取DEPT_ID,DEPT_NAME的信息并设置到主界面上。 完美tree功能只是做到了可以修改员工的分公司信息。。
---------------- 6.2.8. 步骤七:Excel数据导出 在viewEmployee视图中添加Export2ExcelCommand控件
选中创建的Export2ExcelCommand,设置属性: id属性,修改为commandExport
dataset属性,与Dataset绑定,设置为datasetEmployee;
templateTable属性,表示要导出的DataTable,设置为tableEmployee;
exportMode属性,导出模式,设置为download,表示下载为Excel文件;
创建一个Button对象名为buttonExport并设定buttonExport的command属性为commandExport,value属性设定为“导出为Excel文件”
--------------------
打包 在DoradoStudio界面上点上图中的按钮Project Properties,出现Project Properties对话框 ,选择Build标签卡。【图 64】
在Archive Path中输入打包路径。
例如:c:\hr.war
设置完毕后,点ok。
该属性用以设定dorado studio在执行build编译时是否自动的将当前的项目打包成hr.war文件,并存放在c盘根目录下。
接下来我们要进行打包输出操作。
点工具栏中的Build按钮【图 65】,进行建置输出。 ok了,生成了hr.war文件,直接copy到tomcat的webapp目录下即可。
相关阅读 更多 +