魔方网表 让信息化更简单

 找回密码
 注册
查看: 4627|回复: 2

[原创] 利用行间公式——实现自动生成数据详解

[复制链接]
mofang001 发表于 2012-6-27 10:41:59 | 显示全部楼层 |阅读模式

1 行间公式实现自动生成
行间公式也就是字段级的公式,功能是实现字段级数据的自动计算。
我们常用的就是在一个字段上设置一个计算公式,然后魔方就会根据该公式自行计算,得出结果显示在设置公式的字段上,这样,我们就不需要再去手动的进行输入了,只要设置好一个可行的公式,魔方就能实现自动生成数据的功能。
下面我来举个例子,继续在“员工基本资料表”的基础上添加行间公式的功能。
我现在不想手动输入性别了,我想让系统根据员工的身份证号来自动判断性别,然后通过重算功能,直接把员工正确的性别显示出来,那么我该怎样做呢?下面我先来说下思路,然后在下一小节具体讲解实现的操作步骤。
大家都知道,现在的身份证号是18位,性别是可以根据身份证号的第17位数字进行判断的,奇数为男,偶数为女。所以现在我就可以根据这个条件来设定一个判断的公式:
IF(MOD(MID($MF(身份证号)$,17,1),2)=1,"男","女")
$MF(身份证号)$:身份证号字段的宏变量,判断的条件;
MID():返回文本字符串中从指定位置开始的特定数目的字符,该数目由用户指定,文本函数;
MOD():返回两数相除的余数,结果的正负号与除数相同,数字函数;
IF():根据对指定的条件计算结果为TRUE或FALSE,返回不同的结果,一般使用IF对数值和公式执行条件检测,逻辑函数。
通过该公式,我们就可以正确的判断出员工的性别。MID($MF(身份证号)$,17,1)返回身份证号的第17位数字,然后用MOD()函数来判断返回的第17位数字是奇数还是偶数,如果是奇数则返回TRUE,是偶数则返回FALSE,最后IF()函数就可以根据返回的逻辑值来判断最终输出“男”,还是“女”。TRUE也就是奇数,最终输出“男”,FALSE也就是偶数,最终则输出“女”。
在此,我特别说明一下,不了解字段宏变量的朋友可以看下本手册基础篇第10章,而不太了解函数功能和书写格式的朋友,可以直接去附录2中查看,附录2中有所有函数的类型介绍、功能详细说明、书写格式规范。

小提示:魔方网表的公式从逻辑形式和写法上是完全兼容excel的公式的,只是用字段这个概念替代了excel里单元格的概念。所以,当你需要用到一些不常见的函数或者公式的时候,你就可以充分的利用你所熟悉的excel函数、公式的帮助文档和第三方资料,来查找魔方网表中对应的函数和公式。详细的说明可以见本手册附录1。

2 自动生成员工的性别信息
本小节就来具体讲解,在魔方网表中实现由员工的身份证号自动生成员工性别的整个步骤流程。
步骤一:修改表单的两个字段属性:身份证号字段和性别字段。
        修改身份证号字段属性
员工的性别是根据员工的身份证号判断的,所以身份证号是必填的,并且身份证号也是唯一的。首先,进入“员工基本资料表”的属性修改页面,单击“修改表单”按钮 ,进入到表单属性页面,在该页面的下面是字段属性修改面板,面板左边是字段,右边是字段的属性,如图1所示,先选中左边的“身份证号”字段,然后勾选上右边的“唯一(即不允许重复)”,唯一字段在魔方网表中默认是必填项,所以必填系统自动勾选了。最后单击“保存表单”按钮 即可,修改完后一定要及时保存。
1.JPG
图1 “身份证号”字段

        修改性别字段属性
员工的性别是需要自动生成的,在魔方网表中,是可以设置成禁止手动编辑的,并且需要用到行间公式。如图2所示,先选中“性别”字段,然后把属性框拉到最下边,勾选上 “启用公式计算”和“禁止手动编辑”即可,最好保存表单。
2.JPG
图2 “性别”字段

步骤二:编辑性别字段的行间公式。
        单击 “启用公式计算”后面的“编辑公式”按钮 ,详见图3.2.2中序号1标注的位置。
        在编辑公式面板中输入公式:IF(MOD(MID($MF(身份证号)$,17,1),2)=1,"男","女"),如图3。在这我简单的介绍下如何快捷编辑。
1)在编制公式面板的下方,有一行工具栏,见图3中下面红圈所圈位置,单击“字段”按钮 ,可以看到本表单中所有字段,单击那个字段,系统就会在编辑公式面板中返回该字段的宏命令,如图4。
2)通过“逻辑”按钮 ,可以找到IF()函数,双击即可返回该函数。
3)通过“数字”按钮 ,可以找到MOD()函数,双击即可返回该函数。
4)通过“文本”按钮 ,可以找到MID()函数,双击即可返回该函数。
3.JPG
图3 编辑公式面板

4.JPG
图4 字段宏

        校验、保存。单击编辑公式面板最下面的校验,校验成功后,单击保存即可。

注意,输入的公式一定要规范,所有的符号必须用英文半角输入(符号有小括号、逗号、双引号),否则系统验证会失败,无法保存。

步骤三:保存表单,并查看数据,验证公式是否生效。在这里可以直接单击“保存并查看数据” 按钮 ,系统就会直接保存,并进入表单数据查询页面了,下面我们就来验证下效果吧。
        添加一条新的员工信息。单击“添加”按钮 ,进入添加界面,我把顾玉婷的信息添加进去,如图5所示。我们可以看到,身份证号的编辑框后有个红色米字号,这表示该项为必填项,如果不填写,将无法保存数据;性别后面是不能编辑的,这就是启用了禁止手动编辑的效果。现在性别还没有值,因为系统还没有进行计算。
5.JPG
图5 添加一条员工信息

        利用魔方网表的重算功能,让系统执行计算公式,并自动生成性别。单击“重算公式”按钮 ,如图6中序号1标示处。系统执行重算后,我们就可以看到,性别值自动生成了,顾玉婷的身份证号第17为是“2”,为偶数,所以系统自动生成的性别值是“女”,如图6所示。然后保存记录。
6.JPG
图6 系统重算自动生成“女”

        修改一条记录,验证修改时系统也是可以自动修改性别值的。单击顾玉婷记录前的 “修改”按钮 ,我把身份证号的第17位改成了奇数“1”,然后单击“重算公式”按钮 ,我们可以看到如图7所显现的,性别自动修改成“男”了,然后保存记录。
7.JPG
图7 系统重算自动生成“男”

到此,整个利用行间公式实现自动生成性别值的过程都演示完了,如果你是跟着一起做的话,现在也一定成功了。关于行间公式的详细介绍可在本手册基础篇第10章看到。




本帖由魔方木木编辑,魔方木木拥有最终解释权,如有疑问请QQ联系:1302184358
 楼主| mofang001 发表于 2012-6-27 10:42:38 | 显示全部楼层
欢迎大家有更多想法和实例应用提供讨论~~
回复

使用道具 举报

qhwangdh 发表于 2013-12-9 09:41:09 | 显示全部楼层
一定要来学习的,谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则


Archiver|手机版|小黑屋|魔方软件 ( 京ICP备08008787号 )

京公网安备 11010702001722号

GMT+8, 2024-5-16 07:49 , Processed in 0.081387 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表