您的位置:首页 > 其它

智能表单设计器Web Free Form Designer:FreeForm动态数据验证和动态自动计算

2011-06-26 10:04 671 查看
FreeForm自动计算及数据验证

FreeForm自动计算

创建2个控件用于演示自动计算:



进入Runtime
Design 添加自动计算



字符型公式



选择ToUpper



然后将鼠标放在括号()的中间



请按键盘
Ctrl 键,将自动出现当前的控件列表,选择FieldA



点击 Add ,并点击 OK



在FieldA输入abcd,然后进入Runtime Design 测试自动计算



点击“Test
Calculation”

可以看到效果:



其他操作的方法也是类似。



时间公式



为FieldA添加公式ShortDateString:



效果:



选择 Now



点击“Test
Calculation”

可以看到效果:



数字公式





还记得圆面积的计算公式吗?是πr²(圆周率*半径的平方)

添加公式:



我们现在要试验一下,半径输入5



点击“Test
Calculation”

可以看到效果:



FreeForm提供了2种数据验证方式:一般验证和自定义验证,前者是为较简单的验证提供支持,后者可以编写复杂的组合,可以用于较复杂的业务系统。

FreeForm一般验证

进入Runtime
Design 添加验证:



一些例子



比如我们要规定Min
Age最小年龄必须等于1,最大年龄必须小于等于150,那么可以这么定义:





如果我们输入了错误的值,点击“Test Validations”或者“Design Check”中的“Check”。



会自动出现错误提示。

支持的验证方法还有很多,不一一介绍,其中就包括几乎万能的正则表达式。



FreeForm动态自定义验证

一般验证有局限性,那就是只能一个语句一个语句的录入,一些复杂的验证难以实现,于是我们就开发了动态的客户自定义验证方式.

进入Runtime
Design 添加自定义验证:



一些例子



比如我们规定在性别选择了Male或者Female的时候,real Age必须大于Min Age,同时,必须小于Max Age,在不选Male和Female的时候,不予验证。

我们可以这样定义(选择简练的3目运算符):

( [Male] == 'True' || [Female] ==
'True') ?

( [Male] == 'True' || [Female] ==
'True') && ( [RealAge] >= [MinAge]) && ( [RealAge]
<= [MaxAge] ) : true

或者用更直观的If-Else写法:

if ([Male] == 'True' ||[Female] == 'True')

{( [RealAge] >= [MinAge]) && ( [RealAge] <=
[MaxAge] ) ;}

else {true;}

声明变量也是可以的:

var MaleorFemale=([Male] == 'True'
||[Female] == 'True');

if (MaleorFemale == true)

{( [RealAge] >= [MinAge]) && ( [RealAge] <=
[MaxAge] ) ;}

else {true;}



千万不要忘了键盘 Ctrl 键,它将自动出现当前的控件列表,非常方便。效果如下:



测试一下效果

当有一项性别选中时,年龄大于150

提示错误:



并且显示红框:



当性别不选的时候,即使大于150也不会抱错。



这个例子我们放在Demo菜单里,您可以测试。



验证可以通过点击“Test Validations”或者“Design Check”中的“Check”。





Demonstrate(ver2011):

http://crmwin.com/FreeForm2011TestPage.html

.

我们的网站(昕友软件):http://crmwin.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐