打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
久其通用数据管理平台常见公式

一、常见公式举例

?  使用IF…THEN…ELSE句型:

IF BBLX="0"AND XBYS="1"THEN [21]=1 ELSE[21]=10。该公式的含义为:如果报表类型(BBLX)为0,并且新报因素(XBYS)为1,那么,单元格[21]=1,否则[21]=10

?  通配符(行通配和列通配)的使用:

        i.     行通配:对单元格[m,n]进行行通配,应写成[*,n]

[*,5]=[*,1]-[*,4],该公式的含义为:第5栏的数据=1栏的数据-4栏的数据。

      ii.     列通配:对单元格[m,n]进行列通配,应写成[m]

[14]>=[15]+[16],该公式的含义为:第14行的数据>=15行的数据+第16行的数据。

     iii.     [*,3]=ROUND([*,2]/[*,1]*100,2){1~6},该公式的含义为:单元格[1,2]/单元格[1,1]100,计算出的值,保留2位小数,假设结果为A,那么,单元格[1,3]=A

      iv.     IFBBLX<>"1" AND Z7[*]>0 THEN EXIST(Z17){30,31,38~45}。该公式的含义为:如果报表类型不为1,并且Z7表的30行或31行或38行或3945行大于0,那么应填Z17表。

        v.     IF HYDM="3"AND INLIST(BBLX,"0","9") THEN Z18[*]>0{34,40}。该公式的含义为:如果行业代码(HYDM)为3,并且报表类型为0或报表类型为9,那么,Z18表的34行和40行都应大于0

      vi.     IFZ1[*,*]>0 THEN EXIST(Z10){6,7}。该公式的含义为:如果Z1表的6行或7行大于0,那么应填Z10表。

?  跨期公式:如要定义“本期累计=本期数+上期累计”,应写[1,2]=[1,1]+[1,2].-1[1,2].-1表示上期累计。

?  跨关联任务的公式:

      i.     Z31[5,1]=Z1[82,2]@1

?  浮动表的公式:

        i.     [1]=[2,'']{2~3,5~11},该公式的含义为:浮动行取合计数,第1行第2栏(或第356…11栏)=第2行第2栏(或第356…11栏)的合计数,第2行为浮动行。

?  改变单元格显示的颜色:

IF [1,4]>10 THENSYS_FUI="FontColor=$00FFFF;BackColor=10;Cells=[1,4]"。该公式的含义为:如果单元格[1,4]>10,那么该数据以黄色表示,该单元格以红色填充。

下图中,横坐标的值是BackColor,取值从115,纵坐标的值是BackStyle,取值18

二、系统公式

在对公式进行定义时,肯定要用到各种运算符和函数,因此公式生成器窗口中设置了大量的操作符与函数,规则如下:

(一)代码字段:用来表示此字段的中文含义。

BBLX(报表类型)、DWDM(单位代码)、DWMC(单位名称)、XBYS(新报因素)等。

 

(二)单元描述:对于较为复杂的含义可用符号来表示。

·        表名[单元格标识或编号];例Z1[2,1]:表示Z1表的第二行第一列;Z2[A1]表示:Z2表的A1单元格;

·        关联任务的报表指标描述方式:表名[单元标识或编号]@关联任务编号。例如:Z1[2,1]@1表示关联任务1Z1[2,1]单元格。

·        “*”表示通配符:可代表任一行任一列。

·        {}代表区间;例{1~6}表示:只在16行或列中起作用。

 

(三)关系运算符

“=”相等、“<>”不相等、“>”大于、“<”小于、“>=”大于等于、“<=”小于等于。“&”表示连加符:将两行或两列之间的行或列连加。

[1]=[2]&[5]表示:[1]=[2]+[3]+[4]+[5]

 

(四)数值运算符:“+”加、“-”减、“*”乘、“/”除、“&”连加。

 

(五)字符串关系表达式

·        L$(字段名,m):表示取该字段中编码的左边m个字符。

·        R$(字段名,m):表示取该字段中编码的右边m个字符。

·        M$(字段名,i,m):表示取该字段中编码的从第i位开始的m个字符。

·        $字段名:表示取该字段的枚举含义。

例如:字段DWMC表示单位名称,字段XBYS表示新报因素,那么M$(DWMC,5,4)表示取单位名称代码中第五位开始的4个字符;XBYS$="新成立"表示取新报因素字段的含义等于新成立

 

(六)逻辑表达式

用逻辑运算符AND(与)、OR(或)、NOT(反)连接的表达式,组成一个逻辑表达式,操作如下:

·        AND:表示同时成立,用AND连接所形成的逻辑表达式,只有当AND两端的表达式都成立,该AND逻辑表达式才能成立

·        OR:表示二者取一,即只要OR两端的表达式中有一个成立,该OR逻辑表达式就成立。

·        NOT:表示取,取逻辑表达式的反相值。

 

(七)条件表达式

·        IF:如果;THEN:那么;ELSE:否则;

例:IF BBLX="0"ANDXBYS="1" THEN [21]=1 ELSE[21]=10 表示:如果报表类型等于“0”且新报因素为“1”时,单元格[21]=1,否则[21]=10

 

(八)常用函数

使用函数时,可首先将表达式选中(使其以蓝色高亮显示),再双击使用的函数即可获得函数表达式。

·        INT(表达式或数值)求该表达式所得数值数值本身的整数部分

例:[A1]=INT([D4]+[E5])表示:[A1]单元格等于[D4][E5]所得数之和的整数部分。

·        ABS(表达式或数值)求所得数的绝对值

例:ABS([D5]),如果[D5]=-7,则ABS([D5])=7

·        VAL(代码字段)将代码字段的内容转换为数值

例:VAL(XBYS):如果在此封面代码中新报因素为“1”VAL(XBYS)=1

·        IDC(长度为8的字符串)取校验位函数,国家技术监督局下发的企事业单位、社会团体的单位标识码统一为9位,其中最后一位为校验码,使用IDC函数可根据前8位数字运算得到校验码

·        POS(字符串,字符串)取第一个字符串在第二个字符串中的位置

例:POS("久其"DWMC)>0 表示查找单位名称里存在久其这两个字的单位。

·        INLIST()对于表达式中选择的条件过多时,可用此函数减少录入量

例:INLIST(HYDM,"01","02","1011"),表示挑选行业代码前两位为“01”“02”或等于“1011”的单位。

·        EXIST(表名):检查报表中是否已经填写数据

·        Round(表达式)对表达式数值取四舍五入值

例:round(5.7)=6round(-5.1)=-5

·        MOD(表达式)返回两数相除的余数

·        MAX(表达式)求满足口径的单位数据中的最大值

·        MIN(表达式)求满足口径的单位数据中的最小值

·        Str(表达式):将数值转化为字符

·        POWER(,)返回数的乘幂结果

·        DATEVALUE(--)将文本格式的日期转换为日期型

·        DATE(,,)返回特定日期值

·        YEAR()取日期值的年

·        MONTH()取日期值的月

·        DAY()取日期值的的日

·        FIRST()统计函数,取满足条件的第一个数值

·        LAST()统计函数,取满足条件的最后一个数值

·        Getmeaning(字段编码,枚举字典名称)获得枚举字段编码的含义

·        Evaluate(唯一主代码,求值表达式):取指定单位的数据

例:Evaluate(SYS_FJD, 'ZCZE') 取上级单位资产总额(ZCZE)

·        UnitExist(唯一主代码):判断指定单位是否存在

例:UnitExist(SJDM + "9") 上级单位是否存在(SJDM + "9"是上级单位的代码)

·        ChildrenCount(唯一主代码)求子节点单位数目

·        ChildLevel(唯一主代码)返回值:0 不是指定单位的下级, 1 指定单位的一级子单位,2 指定单位的二级子单位:判断当前单位为指定单位的下级级次

例:if (ChildLevel('1111111179') = 2)then 如果是集团1111111179的二级单位

·        Stat('求值表达式', '统计条件', 统计方式)其中统计方式必须选SUMCOUNTAVGMINMAXFIRSTLAST之一:统计数据

例:Stat('HS', 'ZZXS="5"', Sum)统计ZZXS="5"的单位HS指标的合计数

·        ClassStat('分类指标', '求值表达式', '统计条件',统计方式 )其中统计方式必须选SUMCOUNTAVGMINMAXFIRSTLAST之一:分类统计数据

例:ClassStat('HYDM', 'HS','ZZXS="5"', Sum) HYDM分类统计ZZXS="5"的单位HS指标的个行业内的合计数

·        TreeStat('求值表达式', '统计条件',统计方式, 唯一主代码,子节点统计级次)其中子节点统计级次,0: 所有下级,1,2...一级子节点,二级子节点:统计子节点数据

例:TreeStat('HS', 'ZZXS="5"',Sum, Sys_ZDM, 2) 统计一级、二级单位中ZZXS="5"的单位的HS指标合计数

·        ISLEAF('数据项值',目录),返回Bool类型

例:ISLEAF([XZBM],SZDQ) 表示:如果[XZBM]是最详细的编码则返回True,否则返回False

·        CharRange(数据项值,起始的值,结束的值):判断数据项的值是不是在一定的范围内

例:CharRange([DHHM],”0”,”9”)表示:电话号码的值必须在09的范围内

 


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
EXCEL数学表达式如4 (2*3)求值的2种解决方案
第二课 公式自动填充 & 变量类别 I
SPL 代码优化技巧
能看懂、能学会的基础函数公式示例解读(二)
表达式
DAX 第二篇:概述计算上下文
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服