“基本”开发模式

Windows:

Unix/Linux:

在基本模式下我们可以通过regi来进行激活我们的object。Regi是一个类git功能的,方便和HANA repository交互的一个命令行工具。

具体步骤如下:

  1. 创建一个HANA的user key:
    hdbuserstore SET <key> <hana server>:<port>  <UserName> <Password>
  2. 创建 xs的workspace
    regi create workspace <project folder> <key>
  3. Track xs project packages
    regi track <package>
  4. 提交
    regi commit
  5. 激活项目
    regi activate

其中第4,5步可以使用regi push一次完成。

整个步骤合起来举个例子:

hdbuserstore SET HANADEV 127.0.0.1:30015 SYSTEM manager

regi create workspace HanaDevelop HANADEV

cd HanaDevelop

regi track sap.hana.demo

regi commit

regi activate

“官方”开发模式

 +  + 其他插件

在老版本hana studio中是使用regi和HANA repository交互的,从rev 70以后对此进行了增强,不在使用regi了。具体信息:http://scn.sap.com/community/developer-center/hana/blog/2013/12/03/sap-hana-sps07--various-new-developer-features

所有的东西都在HANA中了,更确切的说是repository

具体步骤:

  1. 在HANA Studio中创建一个新的repository package
  2. 创建新的project
  3. 通过XS Team Provider,share新创建的项目
  4. 在project中创建新的object,commit并activate

进行到这里我们已经拥有一个不错的开发环境,但是我们如何去debug呢?别急我们需要一些特别的设置。(这是服务器端的debugger)

xsengine.ini

  • debugger – enabled:true
  • debugger – listenport:47112

到这里,大家觉得怎么样?有什么想法?这些开发模式对多团队,大规模开发能行么?和我们市面上流行的,高大上的叫法“Best Practice”好像不匹配嘛。

“多团队大规模”的开发模式

  • 用GIT来管理源码 (or P4、SVN这个无所谓哪一种)
  • 用Maven来管理project
  • 多个人在同一个HANA Instance上工作,而且还不是ABAP那种模式
  • 和持续集成系统集成起来

我们使用maven,主要就是用regi maven plugin来和HANA Repository交互。这个plugin实现regi的操作,把这些复杂命名都隐藏起来。当然也可以通过其他plugin来实现和HANA Repository的交互。

在这个开发模式下,我们最想要的就是:

  • 很多的开发人员可以在同一个HANA Instance上开发
  • 很多的测试人员多个版本可以在同一个HANA Instance进行测试

很明显,默认的开发模式不支持这样的想法。那我们如何做到这些呢?这里有个方法就是我们的最上层package变成可配置的。

例如:sap.hana.demo 变成 ${rootPackage}.hana.demo

rootPackage可以根据每个人的员工号去设置。通过maven的配置,我们很容易实现我们想要的。如果对具体做法感兴趣且听下回分解。

SAP HANA 开发模式 - 基于SAP HANA平台的多团队产品研发的更多相关文章

  1. “多团队大规模”开发模式 - 基于SAP HANA平台的多团队产品研发

    应用SAP HANA “官方”开发模式的伙伴们在转到“多团队大规模”开发模式时会遇到各式各样的心理不适应的状况,各种纠结.比如GIT Repository和HANA Repository冲突什么的. ...

  2. SAP HANA开发中常见问题- 基于SAP HANA平台的多团队产品研发

    大家都知道SAP HANA项目打包成Delivery Unit(缩写为DU).依照"官方"的开发模式,特别是整个团队仅仅使用一个HANA Instance进行项目开发,因为HANA ...

  3. 基于SAP HANA平台的多团队产品研发

    工欲善其事必先利其器.要提高多团队的开发效率,而且还是在SAP HANA平台上,建议大家还是本着“慢就是快”的原则,不要急功近利,在没有准备好团队开发的架构时就匆忙开始功能的开发.匆忙功能开发就算了, ...

  4. 认识Web前端、Web后端、桌面app和移动app新开发模式 - 基于Node.js环境和VS Code工具

    认识Web.桌面和移动app新开发模式 - 基于Node.js环境和VS Code工具 一.开发环境的搭建(基于win10) 1.安装node.js和npm 到node.js官网下载安装包(包含npm ...

  5. AMDP + XSLX Workbench 报表开发模式

    本文介绍了我和同事通过使用AMDP + XSLX Workbench缩短报表开发周期.分离数据查询处理逻辑和前端展示工作的经验.欢迎讨论. 前言 最近接到了一套人力资源报表的开发需求,需要以EXCEL ...

  6. AMDP + XLSX Workbench 报表开发模式

    本文介绍了我和同事通过使用AMDP + XLSX Workbench缩短报表开发周期.分离数据查询处理逻辑和前端展示工作的经验.欢迎讨论. 前言 最近接到了一套人力资源报表的开发需求,需要以EXCEL ...

  7. IPD体系向敏捷开发模式转型实施成功的四个关键因素

    文/杨学明  集成产品开发(IPD).集成能力成熟度模型(CMMI).敏捷开发(Agile Development)是当前国内外企业产品研发管理的最常用的3种模式.随着创新环境的快速发展,许多企业都会 ...

  8. 测试计划驱动开发模式 TPDD:一种比 TDD 更友好的开发模式

    相信大部分开发团队都在使用TDD,并且还有很多开发团队都 对外声明 在使用 TDD 开发模式. 之所以说是“对外声明”,是因为很多开发团队虽然号称使用的是 TDD 开发模式,实际开发过程中却无法满足 ...

  9. 【HANA系列】对话SAP全球CEO孟鼎铭:未来最大的发展机遇属于中国中小企业

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]对话SAP全球CEO孟鼎铭:未来 ...

随机推荐

  1. PAT 1021-1030 题解

    早期部分代码用 Java 实现.由于 PAT 虽然支持各种语言,但只有 C/C++标程来限定时间,许多题目用 Java 读入数据就已经超时,后来转投 C/C++.浏览全部代码:请戳 本文谨代表个人思路 ...

  2. NoSQL Manager for MongoDB 破解

    删除这两个地方的东西就好了 运行 -->regedit HKEY_CURRENT_USER\Software\NoSQL Manager Group 删除该文件夹 C:\ProgramData\ ...

  3. 11991 - Easy Problem from Rujia Liu?(的基础数据结构)

    UVA 11991 - Easy Problem from Rujia Liu? 题目链接 题意:给一个长度n的序列,有m询问,每一个询问会问第k个出现的数字的下标是多少 思路:用map和vector ...

  4. twemproxy分片处理原理--剖析twemproxy代码正编

    twemproxy在redis上能处理多命令流程只有mset,mget,del的命令,例如mset的话是mset k1 v1 k2 v2 k3 k3,mget的话是mget k1 k2 k3,del的 ...

  5. WPF中实现图片文件转换成Visual对象,Viewport3D对象转换成图片

    原文:WPF中实现图片文件转换成Visual对象,Viewport3D对象转换成图片 1.图片文件转换成Visual对象 private Visual CreateVisual(string imag ...

  6. linux process management

    CREAT PROCESS fork() | clone(參数,决定父子函数的共享内容) | do_fork() | copy_process() | dup_task_struct() 创建子进程的 ...

  7. JAVA学习第三十三课(经常使用对象API) —迭代器

    数字有非常多用数组存,对象有非常多就要用集合存 可是数组是固定长度的,集合是可变长度的 集合的由来: 对象用来封装特有数据,对象多了须要存储,假设对象个数不确定,就须要使用集合容器来存储 集合的特点: ...

  8. 如何导入以前的qq聊天记录

    作者:朱金灿 来源:http://blog.csdn.net/clever101 在新版的qq2013已经可以设置聊天记录的保存路径,但是如何把以前的聊天记录都导入进来呢?今天找到了办法.首先把原来q ...

  9. python短信轰炸机版本smsbomb----------部分(post)

    用一些用手机号注冊且须要发送验证码的站点的漏洞.能够向不论什么人的手机号发送短信,当然短信内容,我们无法控制.所以主要工作还是寻找这种站点.然后利用Fiddler或者HttpWatch分析请求.使用p ...

  10. STM32 模拟I2C (STM32F051)

    /** ****************************************************************************** * @file i2c simu. ...