关于Smartbi配置Sql Server数据源调用HTTP请求
关于Smartbi配置Sql Server数据源调用HTTP请求
要求利用存储过程调用http接口,并返回报表!笔记1、开启Sql Server通讯配置
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation procedures', 1;
GO
RECONFIGURE;
GO
exec sp_configure 'Ole Automation Procedures';
GO
2、HTTP POST 请求函数
CREATE function [dbo].[fn_http_post](
@URL varchar(256),
@DATA varchar(2000),
@REQ_H_ACCEPT varchar(256),
@REQ_H_CONTENT_TYPE varchar(256)
)
returns varchar(5000)
as
BEGIN
DECLARE
@object int,
@returnStatus int,
@returnText varchar(5000),
@errMsg varchar(2000),
@httpStatus varchar(20);
exec @returnStatus = sp_oacreate 'MSXML2.ServerXMLHTTP.3.0',@object OUT;
if @returnStatus <> 0
BEGIN
exec SP_OAGetErrorInfo @object, @errMSg OUT, @returnText OUT;
return ('初始化对象失败,'+ @errMsg + ISNULL(@returnText,''));
END
exec @returnStatus= SP_OAMethod @object, 'Open',NULL, 'POST',@URL, 'false';
if @returnStatus <> 0
BEGIN
exec SP_OAGetErrorInfo @object, @errMsg OUT, @returnText OUT;
return ('创建连接失败,'+ @errMsg + ISNULL(@returnText,''));
END
exec @returnStatus=SP_OAMethod @object,'setRequestHeader',NULL,'Accept',@REQ_H_ACCEPT;
exec @returnStatus=SP_OAMethod @object,'setRequestHeader',NULL,'Content-Type',@REQ_H_CONTENT_TYPE;
exec @returnStatus=SP_OAMethod @object,'setRequestHeader',NULL,'Content-Length','1000000';
exec @returnStatus= SP_OAMethod @object,'send',NULL,@DATA;
if @returnStatus <> 0
BEGIN
exec SP_OAGetErrorInfo @object, @errMSg OUT, @returnText OUT;
return ('发起请求失败,'+ @errMSg + ISNULL(@returnText,''));
END
exec @returnStatus = SP_OAGetProperty @object, 'Status', @httpStatus OUT;
if @returnStatus <> 0
BEGIN
exec sp_OAGetErrorInfo @object, @errMsg OUT, @returnText OUT;
END
if @httpStatus <> 200
BEGIN
return ('访问错误,HTTP状态代码:'+ @httpStatus);
END
exec @returnStatus= SP_OAGetProperty @object,'responseText',@returnText OUT;
if @returnStatus <> 0
BEGIN
exec SP_OAGetErrorInfo @object, @errMSg OUT, @returnText OUT;
return ('获取返回信息失败,'+ @errMsg + ISNULL(@returnText,''));
END
return @returnText;
end
3、存储过程入口
CREATE PROCEDURE [dbo].[oa_zyy_getTime]
@StartTime VARCHAR(20),
@EndTime VARCHAR(20)
AS
declare
@code VARCHAR(5),
@msg VARCHAR(50)
BEGIN
select @code=dbo.fn_http_post('http://localhost:8080/select?StartTime='+
@StartTime+'&EndTime='+@EndTime,'','application/json','application/json');
if @code='1'BEGINselect * from oa_zyy_journalRpt;end
else BEGINselect @msg='获取日报失败!';end
END
4、接口Controller
package com.kq.controller;import java.util.Map;import javax.servlet.http.HttpServletResponse;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import com.kq.service.OAZYYService;/**
*@author
*@date 2020-06-05 13:52:14
*/
@RestController
@RequestMapping(method=RequestMethod.POST,produces = "application/json;charset=UTF-8")
public class OAZYYController {@Autowiredprivate OAZYYService oas;@RequestMapping(value="/select")public String select(@RequestParam Map<String, String>request,HttpServletResponse response) {System.out.println(request.get("StartTime")+request.get("EndTime"));return oas.journalRpt(request);}
}
关于Smartbi配置Sql Server数据源调用HTTP请求相关推荐
- 配置SQL Server的ODBC数据源
安装了SQL Server 2008之后,为了和学生信息管理系统的代码交互,所以要配置SQL Server的ODBC数据源.虽然只有简单的几步,但是遇到了不少问题. 第一步 ...
- 下载安装SQL Server数据库ODBC驱动和配置SQL Server ODBC数据源
下载安装MySQL数据库ODBC驱动和配置MySQL ODBC数据源 1. 下载SQL Server ODBC驱动: 下载地址:SQL Server ODBC 驱动程序官网下载 打开页面,找到如下图所 ...
- 配置SQL Server 2005 Express的身份验证方式,以及如何启用sa登录名。
摘 要:如何安装SQL Server 2005 Express.MSXML6.SQL Server Management Studio Express,以及配置SQL Server 2005 Expr ...
- 配置SQL Server的身份验证方式
下面的文章来源于网络,讲的是怎样配置SQL Server 2005登陆验证方式,但是内容同样适用于SQL Server 2008. 配置SQL Server的身份验证方式 在默认情况下,SQL Ser ...
- 安装和配置SQL Server Reporting Services (SSRS)
目录 什么是SQL Server报告服务(SSRS)? 先决条件 安装SQL Server报告服务(SSRS) 配置SQL Server报告服务 结论 在本文中,我们将在Windows机器上配置Mic ...
- 在Sql Server 中调用Jmail组件发送邮件
在Sql Server 中调用Jmail组件发送邮件 预备知识 1.OLE自动化函数 OLE自动化使应用程序能够对另一个应用程序中实现的对象进行操作,或者将对象公开以便可以对其进行操作.自动化客户端是 ...
- 配置SQL Server 2008 镜像
配置SQL Server 2008 镜像 第一步检查基础环境 由于在非域环境内,所以需要做的检查相对来说多很多,下面按照演示环境,逐个测试下面的条件: Windows 账号. 网络是否能联通,并且端口 ...
- [翻译]一步步教你配置SQL SERVER合并复制(五)配置Publisher(上)
上一篇:一步步教你配置 SQL SERVER合并复制(四)设置Distributor的安全 (译者注:本篇内容较多也是合并复制最重要的一个环节之一,因此配置Publisher将分成两个章节来翻译) ...
- [翻译]一步步教你配置SQL SERVER合并复制(四)提高Distributor的安全性
上一篇:一步步教你配置SQL SERVER合并复制(三)配置Distributor 为了让已订阅数据库的设备能够更好地去联系Distributor,你必须在数据库中添加一个域用户,让设备能够通过这个用 ...
最新文章
- Py_Initialize fails - unable to load the file system codec
- MFC 操作配置文件INI的方法
- instr like 效率_新型固井替代技术 提高井建效率
- 【component: resolve => require([‘../pages/home.vue‘], resolve)-装载】
- exif.js html图片旋转,exif.js 实现图片旋转到正常
- deian 授权用户 sudo权限
- 网吧收银系统在服务器上么,网络“高手”侵入网吧收银系统 已被拘留(图)
- 国潮风彩色手绘年俗年画春节插画素材
- 联通光猫TEWA-800E设置桥接模式
- 必收藏的实用网站(一)
- Ubuntu 使用 create_ap 开启 wifi 热点
- docker 安装clickhouse(springboot mybatisplus clickhouse 整合)
- 海上风电场对雷达性能的影响——绕射损耗
- Service Mesh实战
- 二维码解码器Zbar 的配置和基本使用
- icap协议————2014.6.4
- 光放接头形式 SC/APC; SC/PC
- 股豆网股票配资:A股集体大跌环保券商板块跌幅居前
- Unrecognized Windows Sockets error: 10106错误解决方法
- python 组合优化 回撤最小_Python最优化——构建你的资产组合投资