查看: 33609|回复: 133

[精华] 问一问SAP技术顾问:难道SAP是一个解释性系统??

[复制链接]
论坛徽章:
5
ERP板块每日发贴之星
日期:2005-07-20 01:01:38ERP板块每日发贴之星
日期:2005-07-21 01:01:39授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
跳转到指定楼层
1#
发表于 2005-6-8 12:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我提出上面疑问是基于下面的依据:
1  SAP是ABAP语言开发的,而SAP系统中集成了ABAP,或者说客户买的SAP系统,不仅仅是一个独立的已脱离开发环境的业务系统,而SAP是与它的开发环境没有分开的;
2  技术人员可以利用SAP中的ABAP平台直接修改SAP系统源代码,或另外开发补丁程序(如特别的报表和查询等),而这些直接写成的源代码好象无须编译成可执行程序就可以在SAP中调用执行;
3  在SAP中亦可以直接打开数据库表插入\修改\删除数据,甚至可以修改表结构;
4  SAP中的配置工作基本上是在做客户化的开发工作,而且我听说SAP以前的版本还没有IMG图形界面,那时的配置工作基本上是直接在后台数据库中操作,难怪现在的配置工作还称作后台设置(我第一次听到SAP后台设置第一反应就是操作后台数据库,而别人告诉我的却是直接在SAP系统中用菜单操作)


而上面这些功能我们一般只有在数据库管理系统中才能做到,一旦一个业务系统开发完成编译成独立的可执行程序独立运行后是很难做到或不允许做到的

如果我的怀疑成立的话,那SAP系统的先进性和安全性何在??难道说SAP是功能应用的巨人,技术方面的矮子??
论坛徽章:
5
20周年集字徽章-20	
日期:2024-01-28 14:23:18
2#
发表于 2005-6-8 12:21 | 只看该作者
好象这样解释比较好一些,对于编程人员,只需要掌握abap语言就可以了,而不需要关注他的程序运行在什么平台上(比如大机,AIX,HP-UX,NT)等等。解释和编译的过程是由sap kernel完成的。sap kernel相当于JVM-我是这样理解的。如果不这样,abaper是不是要分平台了?
就事论事,每次abaper改程序后想运行,系统会先要自动执行一个generate的动作,然后才运行。
至于安全性,不知lz具体指哪方面?其实有时候系统安全性技术方面不是最主要的,公司对安全的定义和流程才是最重要的。
好象有些答非所问,抱歉抱歉,希望多交流。

使用道具 举报

回复
论坛徽章:
5
ERP板块每日发贴之星
日期:2005-07-20 01:01:38ERP板块每日发贴之星
日期:2005-07-21 01:01:39授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
3#
 楼主| 发表于 2005-6-8 13:03 | 只看该作者
kokeo说得很有道理,毕竟安全性不仅仅是软件方面的事,如果有人直接进后台数据库也可以破坏数据,除了数据安全,还有物理安全和网络安全等方面的问题,这些都要靠人的自觉性和安全政策.
但我就是想搞清楚:
1    SAP系统是不是没有离开或离不开它的开发环境?
2    如果上面成立的话,SAP系统的技术先进性和安全性何在??

因为我想在国内,如果有人用PB开发一个MIS系统要连同PB一起卖给客户而且还告诉客户非这样不可的话,一定会被人耻笑和骂得狗血喷头的

使用道具 举报

回复
论坛徽章:
5
20周年集字徽章-20	
日期:2024-01-28 14:23:18
4#
发表于 2005-6-8 13:40 | 只看该作者
ABAP: Advanced Business Application Program--名字里就有advanced-先进的含义,我的理解要么abap本身就是比较先进的技术?
呵呵,实在回答不了你的问题,需要高手给个定论。
安全性方面,就我感觉,R3本身的security做得不错,很多人都讲不清楚搞不明白。应该比较安全吧。

使用道具 举报

回复
论坛徽章:
0
5#
发表于 2005-6-8 15:19 | 只看该作者
SAP的安全性,是靠签署极为严格的商业保密合同来完成的。

使用道具 举报

回复
论坛徽章:
0
6#
发表于 2005-6-8 17:24 | 只看该作者
我对SAP的操作层面不是很感冒(酸葡萄心理吧)。但我相信SAP是用C开发的吧,用ABAP语言开发的应该是指另提供一个平台以客制化应用层次的如报表什么的,当然可能由于ABAP足够完美以致蔓延到SAP的部分程序主体。如果这样的话,前提就不同了,从而LZ的推断结果就不存在。请SAP高手指教。

使用道具 举报

回复
论坛徽章:
5
ERP板块每日发贴之星
日期:2005-07-20 01:01:38ERP板块每日发贴之星
日期:2005-07-21 01:01:39授权会员
日期:2005-10-30 17:05:33会员2006贡献徽章
日期:2006-04-17 13:46:34ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
7#
 楼主| 发表于 2005-6-8 17:37 | 只看该作者
楼上说得不无道理,我也有些这方面的怀疑

使用道具 举报

回复
论坛徽章:
0
8#
发表于 2005-6-8 18:57 | 只看该作者
Yes, I think that SAP is based on C, in fact.

使用道具 举报

回复
论坛徽章:
5
20周年集字徽章-20	
日期:2024-01-28 14:23:18
9#
发表于 2005-6-8 20:41 | 只看该作者
最初由 jeannieyu 发布
[B]Yes, I think that SAP is based on C, in fact. [/B]


SAP的kernel是用C开发的,但所有模块我相信都是ABAP写出来的。ABAP源代码是开放的,但kernel源代码是不公开的。
ABAP有他自己的dictionary,这个又相对独立于数据库的dictionary。正因为有这么当中一层kernel和abap dictionary,所以sap可以号称跑在任何平台上,以及支持任意数据库。这是他牛的地方,oracle的ERP能用SQL?我没玩过oracle,不过到目前为止好象还没有听说过

使用道具 举报

回复
论坛徽章:
5
20周年集字徽章-20	
日期:2024-01-28 14:23:18
10#
发表于 2005-6-8 20:55 | 只看该作者
具体讲讲sap的disp+work这个进程吧,NT下面可以看到n个这样的进程,具体数目是可以根据不同的配置文件算出来的,所有apap程序都由这个进程解释编译并执行,这些n多的进程一启动,自然会有相对应的oracle shadow进程启动与其对应(oracle也叫server process,sap默认安装数据库是dedicate模式,所以基本上disp+work 与数据库进程是一一对应的),如果abap程序需要在数据库中抓数据,这个进程还负责把ABAP里面的open sql转换成native sql,然后由对应的server process负责抓数据。试想,如果没有abap的open sql,那abaper还不要被不同数据库软件的sql语句搞死?毕竟,MS的SQL和oracle的SQL还是有差别的嘛!SAP用他的kernel和ABAP将不同硬件平台,不同数据库屏蔽起来了,所以他号称abap是可以移植的,否则,我想NT上开发的abap应该不可以跑在unix上面的吧?
sap其实还是挺牛的,不知道从哪个版本开始,这个disp+work可以同时连两个不同的数据库。APO就是一个例子,本身有个RDBMS数据库,但同时还用到sap db的livecache-一个ODBMS数据库软件。扯远了....打住。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表