反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

填报数据接口提交

  • 文档创建者:mqh
  • 历史版本:5
  • 最近更新:Leo.Tsai 于 2022-08-22
  • 1. 概述

    1.1 版本

    报表服务器版本JAR 包版本插件版本
    10.02018-07-31V1.0

    1.2 应用场景

    用户在做填报报表时,希望点击提交按钮时填报模板调用客户系统接口发送数据、触发客户系统流程等操作

    注:不支持移动端使用。

    1.3 功能介绍

    插件功能,在报表填报属性中扩展自定义提交类型,实现提交数据给 HTTP 接口功能

    主要功能:

    • 提供接口参数配置页面,可配置 提交方式、单元格状态、接口url 参数值配置

    • 支持单行填报 HTTP GET 方式提交接口,可设置ur参数值功能。

    • 支持单行填报 HTTP POST 方式提交接口,参数处理包括 表单 form-data形式、x-www-form-urlencodeed形式、json形式。

    • 支持多行填报 HTTP POST 方式提交接口,参数处理为json形式。

    • 支持单行、多行填报 WebService 方式提交接口。

    • 自定义Body参数、Header参数属性数据支持单元格、函数公式、公式等

    • 调用接口返回结果保存到系统消息,JSON格式结果可设定条件抛出指定错误信息到前端。

    2. 插件介绍

    2.1 插件安装

    点击下载插件:填报数据接口提交插件

    设计器插件安装方法参照 设计器插件管理

    服务器安装插件方法参照 服务器插件管理

    2.2 操作方法

    安装插件完成后,即可填报数据接口提交功能。

    2.2.1 提交参数配置

    报表模板设置,可参考 填报自定义提交

    打开报表设置后,点击「模板>报表填报属性」,新增一个自定义提交,如下图所示:

    配置参数说明:

    l  选择提交类型:下拉框选择“接口数据提交”步骤4。

    l  提交方式:下拉框有六种方式,分别为 单行填报GET提交(Get)、单行填报POST提交(Post)、单行填报POST提交JSON(PostJson)、多行填报POST提交(PostTotal)、单行填报WebService提交(Soap)、多行填报WebService提交(SoapTotal)。步骤5。

    l  单元格状态:选择筛选单元格值状态触发条件,步骤6。单元格状态详细描述如下: 

    1)变更:单元格的值在报表初始化后被修改过(包含修改和修改删除和修改插入三种状态;

    2)新增:单元格是在报表初始化后新增的(包括插入和修改插入两种状态);

    3)删除:单元格所在的记录被执行了删除操作(包含删除和修改删除两种状态);

    4)默认:单元格在报表初始化后没有变化。

    l  链接:接口的url地址。步骤7。

    l  Body参数:用于为填报提交给接口的参数值。步骤8。单行填报GET中用于产生url参数。POST提交中用于产生表单参数或者JSON。WebService提交中用于产生xml。

    l  Header参数:设置接口请求的header参数值。例如:Content-Type值或者其他所需header值。

    l  Body内容:设置接口请求的消息体的模板,以满足参数之外的请求内容格式要求。

    l  返回结果:设置JSON格式结果的报错条件,符合条件时,前端窗口提示指定错误信息。

    1)错误标识:结果中错误标识,例如code或errorCode等;

    2)成功状态值:错误标识码代表成功的值,例如code=0代表无错误、成功执行;即标识码不等于0时,会抛出错误信息。

    3)错误信息标识:用于在结果中提取错误信息。

    2.2.2 填报提交GET

    报表模板GetSubmitJob.cpt配置示例:提交方式选择Get

    2.2.3 填报提交POST

    表单form-data形式

    报表模板 PostSubmitJob.cpt 配置示例:提交方式选择 Post

    x-www-form-urlencodeed形式

    报表模板 PostSubmitJob-x-www-urlencode.cpt 配置示例:提交方式选择 Post

    Header增加Content-Type参数值。

    2.2.4 填报提交POST-JSON

    报表模板 PostSubmitJob-json.cpt 配置示例提交方式选择 PostJson

    Header增加Content-Type参数值为application/json。如Content-Type=application/json,则将Body参数转为JSON对象格式提交。

    Body内容框为空,不填写值。

    报表模板 PostSubmitJob-json-定制格式.cpt 配置示例:提交方式选择 PostJson

    Header增加Content-Type参数值为application/json。如Content-Type=application/json,则将Body参数转为JSON对象格式提交。

    Body内容框填写自定义json格式,可嵌入Body参数变量。

    2.2.5 多行填报提交POST

    报表模板 PostTotalSubmitJob.cpt 配置示例提交方式选择 PostTotal

    Header增加Content-Type参数值为application/json。如Content-Type=application/json,则将多行Body参数转为JSON数组格式提交。

    Body内容框为空,不填写值。

    报表模板 PostTotalSubmitJob-定制格式.cpt 配置示例提交方式选择 PostTotal

    Header增加Content-Type参数值为application/json。如Content-Type=application/json,则将多行Body参数转为JSON数组格式提交。

    Body内容框填写自定义json格式,可嵌入JSON数组,固定为${paramData}。JSON数组即为多行Body参数计算得到。

    2.2.6 填报提交SOAP

    报表模板 SoapSubmitJob.cpt 配置示例:

    提交方式:选择 Soap,设置单元格状态和接口连接url。

    Body参数:按照接口实际要求维护对应参数值。

    Header参数:增加Content-Type参数值为 text/xml;charset=UTF-8。WebService操作名称Operation作为Header参数 SOAPAction 的值。如图:

    查看webservice的Operation名称,可使用软件SoapUI分析 WSDL地址得到。示例如图:

    Body内容:WebService所需要的xml,其中嵌入Body参数,形式为 {参数名} 。

    2.2.7 多行填报提交SOAP

    报表模板 SoapSubmitJob-total.cpt 配置示例:

    提交方式:选择 SoapTotal,设置单元格状态和接口连接url。

    Body参数:按照接口实际要求维护对应参数值。

    Body内容:WebService所需要的xml,由两个分隔符 ##LOOP## 包括多行循环xml节点。循环xml节点其中嵌入Body参数变量,形式为 ${参数名}

    格式化XML如下:

    <?xml version="1.0" encoding="utf-8"?>
    <soapenv:Envelope
        xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
        xmlns:web="webservices.services.weaver.com.cn"
        xmlns:ent="http://entity.srm.ch.com">
        <soapenv:Header/>
        <soapenv:Body>
            <web:createWorkflow>
                <web:in0-array>
                
    ##LOOP##
                    <web:in0>
                        <ent:documentCode>${documentCode}</ent:documentCode>
                        <ent:VENDOR_CODE>${VENDOR_CODE}</ent:VENDOR_CODE>
                        <ent:VENDOR_NAME>${VENDOR_NAME}</ent:VENDOR_NAME>
                        <ent:FROM_STAGE>${FROM_STAGE}</ent:FROM_STAGE>
                        <ent:TO_STAGE>${TO_STAGE}</ent:TO_STAGE>
                        <ent:CREATE_DATE>${CREATE_DATE}</ent:CREATE_DATE>
                        <ent:CREATE_BY>${CREATE_BY}</ent:CREATE_BY>
                        <ent:REMARK>${REMARK}</ent:REMARK>
                    </web:in0>
                 ##LOOP##
                </web:in0-array>
            </web:createWorkflow>
        </soapenv:Body>
    </soapenv:Envelope>

    2.2.8 返回结果报错条件设置

    在报表填报属性中,设置条件参数值,如图:

    返回结果内容:

    {
    "code": 1,
    "message": "运行错误异常",
    "status": "error"
    }

    符合条件的结果值,会显示到前端消息框中。

    报错示例模板,可参考GetErrorSubmitJob.cpt

    3. 模板下载

    点击下载模板:

    submitjob示例模板.zip

    附件列表


    主题: 填报应用
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526