【HANA系列】SAP UI5上传图片 用XSJS存储在HANA中的方法

公众号:SAP Technical

本文作者:matinal

原文出处:http://www.cnblogs.com/SAPmatinal/

原文链接:【HANA系列】SAP UI5上传图片 用XSJS存储在HANA中的方法

前言部分

大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。

正文部分

玩就玩一个高级的,此篇文章包含了SAP UI5,SAP HANA,SAP XS HANA串联起来

业务需求:SAP UI5传输图片,最后存储到HANA中。

下面体验一下梦幻般的做法,O(∩_∩)O哈哈~

1、首先在HANA中创建一个表,用于存储

schema名:zmatinal。表名:zimage。表里两个字段分别是:name,content。

?
CREATE COLUMN TABLE "ZMATINAL"."ZIMAGE"(
    "NAME" NVARCHAR(100),
    "CONTENT" BLOB MEMORY THRESHOLD 1000,
    PRIMARY KEY (
        "NAME"
    )
) UNLOAD PRIORITY 5 AUTO MERGE;

?

2、用SAP UI5上传图片

其中xml配置

?
        <u:FileUploader
            id="fileUploader"
            name="myFileUpload"
            uploadUrl="upload/"
            width="400px"
            tooltip="Upload your file to the local server"
            uploadComplete="handleUploadComplete"/>
        <Button
            text="Upload File"
            press="handleUploadPress"/>

?

其中controller配置

?
        handleUploadPress: function(oEvent) {
            var oFileUploader = this.getView().byId("fileUploader");
            oFileUploader.upload();
        }

?

3、在XSJS中,只需将该请求读入ArrayBuffer并作为BLOB存储

?
    var schema_name = "ZMATINAL";
    var filename = $.request.parameters.get(‘filename‘);    

    try {
        var conn = $.db.getConnection();

        var pstmt = conn.prepareStatement("INSERT INTO \"ZMATINAL\".\"ZIMAGE\" (NAME, CONTENT) VALUES (?, ?)");

        if($.request.entities.length>0) {

            //  Read in the posted image or binary data as an Array Buffer - you can use this to save as a BLOB
            var file_body = $.request.entities[0].body.asArrayBuffer();

            pstmt.setString(1,filename);  //设置文件名
            pstmt.setBlob(2,file_body);   //图片数据的数组缓冲区
            pstmt.execute();

        }
        else
        {
            $.response.setBody("没有请求条目");
        }
        pstmt.close();
        conn.commit();
        conn.close();
        $.response.contentType = "text/html";
        $.response.setBody("[200]:上传文件" + filename + "成功!");
    }
    catch(err)
    {
        if (pstmt !== null)
        {
            pstmt.close();
        }
        if (conn !== null)
        {
            conn.close();
        }
        $.response.contentType = "text/html";
        $.response.setBody("文件无法保存在数据库中,出现错误:" + err.message);
    }    

?

原文地址:https://www.cnblogs.com/SAPmatinal/p/11183820.html

时间: 2024-08-14 16:59:28

【HANA系列】SAP UI5上传图片 用XSJS存储在HANA中的方法的相关文章

[转载]大道至简!!!从SAP HANA作为SAP加速器的方式,看ERP on HANA的春天

I AM A ABAPER! 科技的进步,一定会使一些东西变得越来越精简! 大道至简!!! 文章很好!!!!!!!!!!! -------------------------------------------------------------------------------------------------------------------------- 转自:http://blog.sina.com.cn/s/blog_9154db5301019udr.html%20 说到HANA

【HANA系列】SAP HANA的ini文件存储路径

公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA的ini文件存储路径 前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 原文地址:https://www.cnblogs.com/SAPmatinal/p/11183846.html

【HANA系列】SAP HANA数据处理的理解与分析一

公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA数据处理的理解与分析一 前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 SAP HANA处理大量数据速度快的机制理解 1:HANA使用列存储的数据管理优化数据存取 从列去读取数据库表,其他忽略 2:对于内存和CPU之间的访问速度差异,增加内核,压缩数据 3:使用列存储技术高效利用CPU

【HANA系列】SAP 【第二篇】EXCEL连接SAP HANA的方法(ODBC)

公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP [第二篇]EXCEL连接SAP HANA的方法(ODBC) 前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 前言介绍[office2010]: SAP HANA的最主要功能就是建模,建模后给BW或BO来展现结果. SAP HANA中的报表可以在SAP的BusinessObjects应用程序套件

OPEN(SAP) UI5 学习入门系列之一:扫盲与热身(上)

什么是SAP Fiori? 了解SAP UI5必须要从SAP Fiori开始,两者概念经常被混淆,而两者也确实有着非常紧密的关系. 用过SAP的同学们都对SAP的传统的界面(SAP GUI)表示"呵呵",其实传统的SAP GUI的界面功能还是很强大的,但是对于一个新用户来说,学会使用这套界面就需要花上一两 周的时间,所以SAP入门的第一步就是学会使用SAP GUI.此外,传统的SAP GUI只能在Windows和Mac上使用,对于移动端用户没有直接的解决方案,WEBGUI的体验也非常不

OPEN(SAP) UI5 学习入门系列之二: 最佳实践练习之一

这篇博文难产了很久,原来是打算一周更新一篇的,上周原计划写MVC,但是写了一半,发现带入了太多的细节,不太符合这个入门系列的主题. 当我们学习一个新的技能的时候,如果一开始就面对大量的细节,很容易陷入其中而只见树木不见森林,所以最后我想我们还是先按照开发文档的节奏,一起来做UI5的最佳实践练习.在练习中对常用的一些控件以及API有一个直观的感受,如果需要细节的信息再去查文档. 这个最佳实践练习的子系列又会分为若干篇,但是不会完全按照Tutorial里面的章节来分,因为我希望每一篇都是都是一个完整

【HANA系列】SAP HANA XS使用Odata标志

公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA XS使用Odata标志 前言部分 在使用SAP HANA XS的Odata的时候,会碰到各种情况,下面就让我来总结一下,Odata的各种各样标记的原因. HTML调用view报错500 也就是:HTML调用view报错500(Internal server error) 报错如下图: 此时,说明调用view没有成

【HANA系列】SAP HANA快捷键大全

公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA快捷键大全 前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 1. To open a new session - ctrl & +2. System Administration information ctrl + shift + F83. Manual entry of Trans

【HANA系列】SAP HANA DB 和SAP HANA studio version查看

公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA DB 和SAP HANA studio version查看 前言部分 大家可以关注我的公众号,公众号里的排版更好,阅读更舒适. 正文部分 To know the HANA Studio version: Help->About SAP HANA Studio. To know the HANA DB versio