[通用]定时任务推送消息至APP

  • 文档创建者:文档助手1
  • 编辑次数:25次
  • 最近更新:Wendy123456 于 2020-03-06
  • 1. 概述

    1.1 版本

     报表服务器版本移动端版本
     10.0App10.0

    1.2 应用场景

    下面情况下,用户希望将定时任务结果推送至 App 中:

    • 销售行业中,一个厂家会有很多分销商,分销商需要从厂家那里进行采购,汇款等一系列操作;厂家也会定期给分销商发送信息,告知他们货物的剩余情况,汇款情况等。

    • 公司发工资后,给员工发送一份关于该员工的工资消息。

    1.3 功能简介

    用户设置定时任务时,在「文件处理」步骤中勾选客户端通知,将定时任务结果推送到「默认用户组」的 App 中。

    注1:定时任务详细设置步骤请点击 定时任务设置步骤 

    注2:移动端消息推送教学视频地址请查看 FineMobile 消息推送应用详解(视频+PPT 资料)

    2. 服务器外网用户

    注:报表服务器可以访问外网的为外网环境。

    2.1 模板准备

    使用模板:%FR_HOME%\webapps\webroot\ReportServer\reportlets\doc\SpecialSubject\定时任务权限控制.cpt

    2.2 添加任务

    添加定时任务步骤请参考:添加任务

    2.3 基本设置

    任务名称为工资表,默认用户组为平台用户eocoAnna,点击确定。如下图所示:

    1583140115211303.png

    2.4 调度对象

    点击下一步,选择模板定时任务内容权限控制 .cpt,勾选除通用结果外,根据默认用户组内的用户单独生成结果,文件名称为测试,如下图所示:

    注:推送对象需要有模板的查看权限。

    1583140689974783.png

    2.5 调度周期

    点击下一步,执行频率选择表达式设置,设定为每月最后一个工作日19点50分,如下图所示:

    注:可用表达式自行设定频率时间,表达式设定请参考: 表达式设定

    1583142866309448.png

    2.6 文件处理

    点击下一步,勾选客户端通知,推送终端勾选 App 通知,主题为每月工资表,内容为${fine_username}的${month(now())}月工资,含义为用户某个月的工资,如下图所示:

    注1:主题和内容支持公式。

    注2:App 不支持图文、文件消息类型,图文、文件消息都转为链接消息。微信和钉钉中支持图文和文件消息,详细点击 微信钉钉推送支持其他消息类型

    6.png

    2.7 效果查看

    使用 Anna 的账号登录 App,每月月底即可看到对应的工资表,如下图所示:

    1583151833963448.jpg

    自 App10.2 及之后版本,结果报表的历史消息不再通过参数进行选择,而是全部在消息列表中,如下图所示:

    222

    3. 服务器内网用户

    注:报表服务器不可以访问外网的为内网环境。

    用户服务器需要能够访问推送服务器才能够正常使用推送功能,但内网环境下无法访问推送服务器。

    JAR 包为 2019-08-15 及之后的 FineReport 设计器可以通过数据库字段值设置代理服务器地址,保证内网服务器可以连上推送服务器。

    3.1 定时任务设置

    内网环境下将定时任务结果推送至 App 中的步骤与外网环境步骤相同,请参考本文第二章节。

    3.2 代理服务器配置

    注:代理服务器配置详细步骤请参考: 正向代理说明

    打开配置文件%Nginx_HOME%\conf\nginx.conf,如下所示:

    1583217869715440.png

    将红框中的代码修改为如下所示的代码:

    注:该段代码为示例代码,请用户根据实际情况修改代码中的「listen 端口」和「代理服务器的 IP 地址」。

    server {listen port;      # listen 端口,代理服务器的端口,可以自定义
    server_name ip;      # sever_name, 代理服务器的 IP 地址
    location /
    { proxy_pass http://central.fanruan.com; }
    }

    3.3 增加字段值

    JAR 包为 2019-08-15 及之后的 FineReport 设计器,在 FINE_CONF_ENTITY 表中增加MobileConfig.appMsgProxy字段,值为 "http://ip:port/mobile/push/message/send",该值为代理服务器地址,并重启服务器。

    注1:FineDB 数据库连接请参考 报表内置 HSQL 数据库 FineDB

    注2:修改 FineDB 数据库中表字段方法请参考 修改 FineDB 数据库

    附件列表


    主题: 数据决策系统
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!