以文本方式查看主题

-  易表在线答疑  (http://www.egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://www.egrid2000.com/dvbbs/list.asp?boardid=2)
----  中括号和引号来表达字段的区别是什么,分别用在什么场合 (无内容)  (http://www.egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=1097)

--  作者:Egei
--  发布时间:2012/4/20 14:20:00
--  中括号和引号来表达字段的区别是什么,分别用在什么场合 (无内容)
正文为空!
--  作者:lyang70
--  发布时间:2012/4/20 15:22:00
--  
一般来讲,中括号表示引用的是一个值,而引号表示的引用的某列,但字符常量是用引号表示,日期常量用$加引号表示;数值常量直接输入即可。

参考帮助文件“基本语法规则”章节。具体运用还是需结合函数语法要求。


--  作者:Egei
--  发布时间:2012/4/20 16:01:00
--  
引用某列的时候,有的时候,是引号,有的时候是中括号,什么情况下用引号,什么时候用中括号,引用列真让人头疼呀。
--  作者:Egei
--  发布时间:2012/4/20 17:04:00
--  
引号与方括号的差别
基本分析
在基本的语法规则中,我们已经提到,计算公式中的列名称应该用方括号括起来,例如在订单管理中,金额的计算公式为:

[数量] * [单价]

但是有的时候列名称却不是用方括号,而是用引号括起来,再看看下面的公式:

Sumfor("订单表",  "数量",  "产品",  "=",  "PD01")
这个公式的意思是在订单表中(第一个参数)对数量(第二个参数)求和,条件是产品(第三个参数)等于(第四个参数)PD01(第五个参数),简单地说,就是统计PD01产品总的销售数量。显然其中第二个参数“数量”、第三个参数“产品”都是一个列名称,但是他们没有用方括号括起来,而是用引号括起来。

那么什么时候用方括号,什么时候用引号呢。很简单,方括号括起来的列名称是一个变量,表示当前行该列的值;而用引号括起来的列名称表示该列整体,并没有一个具体的值,该列中符合条件的每一个值都会参与运算(或比较)。所以:

[数量] * [单价]
表示当前行的数量乘以单价,它们都有具体的值,如果当前行数量是5,单价为1.5,那么该公式的值就等于7.5

Sumfor("订单表",  "数量",  "产品",  "=",  "PD01")
这个公式统计订单表中PD01产品总的销售数量,其中第二个参数“数量”并没有一个具体的值,它表示订单表中数量列这个整体,该列中符合条件(条件由后面的参数决定)的值全部要参与运算,同样第三个参数“产品”也没有一个具体的值,它表示订单表中产品列这个整体,对该列的值逐行进行比较,如果等于PD01,那么该行数量列的值就参与计算。

更具体的例子
下面是一个统计表,包括产品和数量两列,我要在这个表中统计订单表中不同产品的订购数量:

为实现这个目的,数量列的刷新公式为
Sumfor("订单表", "数量", "产品", "=", [产品])

前四个参数我们前面已经详细说明过,现在看看第五个参数[产品],这个参数为什么又要用方括号呢?我们知道用方括号括起来的列名称是一个变量,表示当前行该列的值,在计算整个表达式之前,会先将这个变量转换为对应的值。例如在上图中,由于第三行产品列的内容为“PD03”,所以参数[产品]等于“PD03”,于是对于第三行来说,原公式等效于:
Sumfor("订单表", "数量", "产品", "=", "PD03")
这个公式的含义就是统计订单表中产品PD03总的销量。


--  作者:lyang70
--  发布时间:2012/4/23 9:48:00
--  
具体运用得结合各个函数的参数定义来使用,相信楼主在学习易表的过程中,会逐渐地了解并掌握其要领。



--  作者:wjq1072
--  发布时间:2012/4/23 10:04:00
--  
"表名称"、"列名称"
引号表示的一般是字符串;
[表名称]、[列名称]
中括号表示的一般是变量、表达式
Sumfor("订单表",  "数量",  "产品",  "=",  "PD01")
计算订单表中数量列的和,条件是产品列中的产品等于PD01;
Sumfor("订单表", "数量", "产品", "=", [产品])
计算订单表中数量列的和,条件是对产品列中的各种产品分别计算;