反馈已提交

网络繁忙

周末工作日判断

  • 文档创建者:axing
  • 历史版本:8
  • 最近更新:Roxy 于 2022-04-12
  • 1. 概述

    1.1 预期效果

    在报表设计中,希望能够通过公式判断当月的工作日和周末,如下图所示:

    Snag_fa293e9.png

    1.2 实现思路

    方案一:若您使用的设计器为 11.0.4 及之后的版本,可以使用 ISWORKDAY 函数。

    方案二:通过 if 函数来实现。

    注:暂不支持判断法定节假日。

    2. 示例

    2.1 报表设计

    设计报表样式,单元格内容如下图所示:

    1603777757591537.png

    1)A2 单元格插入公式:

    RANGE(dateinmonth(today(),1),dateinmonth(today(),-1))

    公式说明如下表所示:

    公式含义
    dateinmonth(today(), 1)返回当前月份第一天的日期
    dateinmonth(today(), -1)返回当前月份最后一天的日期
    RANGE(dateinmonth(today(), 1), dateinmonth(today(), -1))

    获取当前月份从第一天到最后一天,所有日期的序列

    注:RANGE 函数具体使用可参见:Range函数使用介绍

    2)B2单元格插入公式:

    switch(weekday(A2),0,"星期天",1,"星期一",2,"星期二",3,"星期三",4,"星期四",5,"星期五",6,"星期六")

    公式介绍如下表所示:

    公式含义

    weekday(A2)

    获取 A2 列的日期并返回星期数。返回值为介于 0 到 6 之间的某一整数,分别代表从星期日到星期六的某一天

    switch(weekday(A2),0,"星期天",1,"星期一",2,"星期二",3,"星期三",4,"星期四",5,"星期五",6,"星期六")

    如果「weekday(A2)」的返回值为0,则整个函数返回结果为「星期天」;如果「weekday(A2)」的返回值为1,则整个函数返回结果为「星期一」,以此类推

    注:switch 函数的具体介绍请参见:switch函数

    3)C2单元格插入公式:

    if(inarray(weekday(A2),[0,6])>0,"周末","工作日")

    公式说明如下表所示:

    公式含义
    weekday(A2)获取 A2 列的日期并返回星期数。返回值为介于 0 到 6 之间的某一整数,分别代表星期中的某一天(从星期日到星期六)
    inarray(weekday(A2), [0,6]) 

    返回「weekday(A2)」在数组[0,6]的位置,例如「weekday(A2)」=1,则结果为 0;「weekday(A2)」=0,则结果为1;「weekday(A2)」=6,则结果为2

    注:inarray函数具体介绍请参见:inarray

    if(inarray(weekday(A2), [0,6]) > 0, "周末", "工作日")若 A2 日期是周六或周日,则最终结果为「周末」;其他情况为「工作日」

    2.2 效果预览

    1)PC端

    保存报表,点击「分页预览」,效果同 1.1 节预期效果一致。

    2)移动端

    点击「移动端预览」,App 端及 H5 端均支持,效果如下图所示:

    7dcb9b54afe5e533e8c0a8e3d17eca3.png

    3. 模板下载

    已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\周末工作日判断.cpt

    点击下载模板:周末工作日判断.cpt

    附件列表


    主题: 报表专题
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持