- 1、本文档共48页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
OBPM开发者常见问题课案
开发常见问题及解答
视图查询
代码生sql
1 表单
1.1表单的类型
说明:
表单类型分为普通,查询表单,普通(映射)表单。
(1)普通,常规的表单配置
(2)查询表单,主要为视图列表配置查询头,要与视图配置结合使用
(3)映射表单,可以调用应用软件在同一个数据库中不属于平台生成的数据表,通过字段的映射,对该表进行数据查询,修改,添加,删除操作
1.2控件属性
1.2.1刷新
说明:
控件刷新属性,是指当控件的内容发生改变时,触发包含当前控件的表单的刷新事件,以通知表单中其它具有重计算属性的控件进行刷新。
1.2.2重计算
说明:
控件重计算属性,是指当控件配置选择重计算时,则包含当前控件的表单,其刷新事件被触发时,当前控件的脚本将被重新运算,以实现与必威体育精装版数据同步
1.2.3手机
说明:
控件手机属性,是指当控件配置选择手机时,通过MYAPPS智能客户端访问平台应用,则此控件将在智能客户端上显示,否则不显示。
1.2.4值脚本
说明:
控件值脚本,是指可能通过脚本来决定控件的值。
示例1:表单字段计算
/* 这里我们用单价与数量,计算金额为例进行讲解。
* 表单中有一个字段“单价”,数字类型;有一个字段“数量”,数字类型;有一个字段“金额”,数字类型。
* 单价和数量两个字段都选择了“刷新”属性,金额字段选择了“重计算”属性。
* 其中,金额字段写有值脚本。
*/
var price = getItemValueAsDouble(单价);
var count = getItemValueAsDouble(数量);
price * count;
示例2:汇总子表单字段值
/* 这里我们以汇总子表“金额”字段为例进行讲解。
* 主表有一字段为“总金额”,数字类型;子表有一字段为“金额”,数字类型。
* 子表包含元素控件选择了“刷新”属性,总金额字段选择了“重计算”属性。
* 其中,总金额字段写有值脚本。
*/
//此函数有两个参数,第一个参数:子表单名称;第二个参数:汇总字段名称。
sumSubDocument(子表明细,金额);
示例3:子表单记录计数
/*这里我们以获取子表记录数为例。*/
countSubDocument(子表单名称);
示例4:自动编号
/*方法1, 创建数据但未保存时,会出现断号的情况。生成TLK0001、TLK0002、TLK0003......*/
var number = getItemValue(字段名);
if(number ==null || number.trim().length()=0){
number = countNext2(TLK,false,false,false,4);
}
number;
/*方法2, 创建数据但未保存时,会出现断号的情况。生成TLK201101050001、TLK201101050002、TLK201101050003......*/
var number = getItemValue(字段名);
if(number ==null || number.trim().length()=0){
number = countNext2(TLK,true,true,true,4);
}
number;
1.2.5选项脚本
说明:
控件选项脚本,是指通过脚本来创建出控件的可选择项,支持固定选项、动态生成选项。
示例:
/*方法1:固定选项列表,选项名与选项值相同。*/
;选项1;选项2;选项3;选项4;
/*方法2:固定选项列表,选项名与选项值不相同。*/
var opts=createOptions();
opts.add(,);
opts.add(选项1,1);
opts.add(选项2,2);
opts.add(选项3,3);
opts.add(选项4,4);
opts;
/*方法3:动态生成选项列表,从基础表中获取数据动态生成选项。*/
//获取所有区域
var opts=createOptions();
opts.add(,);
var dql = $formname=/片区信息表;
var datas =queryByDQL(dql);
if(datas!=null datas.size()0){
for(var iter = datas.iterator();iter.hasNext();){
var doc = iter.next();
opts.add(doc.getItemValueAsString(片区),doc.getItemValueAsString(片区代码));
}
}
opts;
/*方法4:动态生成选项列表,从基础表中动态生成选项。
* 从基础表中动态生成选项列表。选项名与选项值取不同字段的值。
*/
var dql = $fo
文档评论(0)