查看: 145673|回复: 380

[精华] 用友U9,号称世界级的产品让我失望

[复制链接]
论坛徽章:
0
发表于 2009-6-26 11:37 | 显示全部楼层 |阅读模式
使用ERP多年,最近有兴获得学习U9的机会.总体来说这款产品从理念上让人为之一震,感觉真有大产品的架构.本人比较喜欢从技术角度分析问题.拿到产品后发现SOA到底体现在什么地方,如何和第三方产品集成,特别是跨平台的集成.为搞清楚这一问题,深入到数据库中分析,另我吃惊、失望。整个U9产品的核心计算几乎全部通过存储过程实现,包括MRP计算、ATP计算、成本计算甚至密码的加密算法也在存储过程实现。整个系统用了7百多个存储过程,1百多个类似于存储过程的标量函数。也许才学疏浅,这种方法怎么实现SOA。同时系统的性能如何保障、安全性如何保障,以下是部分存储过程或函数的名称。希望和大家交流,大量使用存储过程,对一个大型软件来说是否合适。
FN_ABC_ABCCcompile_GetQty                通过转换率计算数量
fn_BOM_CalcCumYield                工序累计产出率计算
fn_BOM_GetConvertRatio                获得不同单位的转换率
fn_BOM_GetRoundValue                计算数量进行四舍五入
fn_BOM_GetSupplier                获取供应商
fn_CA_GetMoneyRoundValue                获取金额绝对值
fn_CRP_CalcBOMCompQty                BOM子件用量计算
fn_CRP_CalcResQty                计算资源用量
fn_CRP_CalcWorkDayByOffsetHours        根据偏移量计算工作日结束时间
fn_CRP_CalItemLeadTime                计算提前期
fn_CRP_GetConvertRatio                获得不同单位转换率
fn_CRP_GetDayCount                计算两个日期之间的工作天数
fn_CRP_GetIntervalWorkDays                取两个日期之间的工作日天数
fn_CRP_GetLeadTime                获得计算后的提前期
fn_CRP_GetRoundValue                获取绝对值
fn_CRP_GetUOMRatio               
fn_CRP_GetWorkDate                获得工作日历日期
fn_CRP_GetWorkDate_Hour                获得工作日历小时
fn_CRP_GetWorkDateByOrigCalendar        获得工作日历日期
fn_CRP_GetWorkDay                计算工作天数
fn_CRP_GetWorkDays                计算工作天数
aspnet_Membership_GetPassword
aspnet_Membership_GetPasswordWithFormat
aspnet_Membership_GetUserByEmail
aspnet_Membership_GetUserByName
aspnet_Membership_GetUserByUserId
aspnet_Membership_ResetPassword
认证徽章
论坛徽章:
142
ITPUB14周年纪念章
日期:2015-10-26 17:23:44白羊座
日期:2015-11-30 09:06:43摩羯座
日期:2016-01-19 22:58:47双鱼座
日期:2016-06-18 17:23:05奥运会纪念徽章:棒球
日期:2016-09-02 08:01:38技术图书徽章
日期:2017-10-27 15:30:45
发表于 2009-6-26 11:47 | 显示全部楼层
请教楼主:SOA不是指软件之间的协同么?同一个软件也存在这个问题么?

使用道具 举报

回复
论坛徽章:
53
ITPUB北京九华山庄2008年会纪念徽章
日期:2008-01-21 16:50:24双黄蛋
日期:2012-02-27 13:52:192012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:58复活蛋
日期:2012-02-11 13:15:09茶鸡蛋
日期:2012-01-12 18:14:55蜘蛛蛋
日期:2012-03-18 22:00:55
发表于 2009-6-26 12:11 | 显示全部楼层
大家继续,LZ再接再励,以便我等没有机会学习U9的小虾多了解下!

使用道具 举报

回复
论坛徽章:
4
2008新春纪念徽章
日期:2008-02-13 12:43:03生肖徽章2007版:虎
日期:2008-04-16 21:19:102012新春纪念徽章
日期:2012-01-04 11:51:22鲜花蛋
日期:2012-06-28 10:17:59
发表于 2009-6-26 13:01 | 显示全部楼层
纯粹的SOA不提倡用存储过程/函数,把数据库只视为一个存储数据的地点,所有的业务逻辑都不在数据库中实现,在应用服务器中实现业务逻辑.从这个角度讲U9肯定不是严格的SOA构架.但是,实际使用中,纯粹的SOA构架效率存在问题,需要频繁的读写数据,对硬件要求也高(我们的一个ERP,采用类似构架,用了4台小型机做应用服务器,oracle数据库unix操作系统).要解决这个问题,需要打破这个模式,折中的办法是限制存储过程的使用,别烂用.这又需要仔细的系统设计,用友,显然不具备这种精雕细作出精品的精神

使用道具 举报

回复
论坛徽章:
13
ERP板块每日发贴之星
日期:2009-05-08 01:01:042012新春纪念徽章
日期:2012-01-04 11:54:26ITPUB十周年纪念徽章
日期:2011-11-01 16:24:042011新春纪念徽章
日期:2011-02-18 11:43:322011新春纪念徽章
日期:2011-01-04 10:35:48ERP板块每日发贴之星
日期:2010-11-01 01:01:01ERP板块每日发贴之星
日期:2010-10-31 01:01:01ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51ERP板块每日发贴之星
日期:2010-05-02 01:01:02祖国60周年纪念徽章
日期:2009-10-09 08:28:00
发表于 2009-6-26 13:03 | 显示全部楼层
纯粹的SOA不提倡用存储过程/函数,把数据库只视为一个存储数据的地点,所有的业务逻辑都不在数据库中实现,在应用服务器中实现业务逻辑
-->这种框架有优点,也有缺点: 开发成本高,程序执行效率低.


写完后,才发现楼上也讲到这一点.

[ 本帖最后由 aknightchen 于 2009-6-26 13:05 编辑 ]

使用道具 举报

回复
论坛徽章:
4
2008新春纪念徽章
日期:2008-02-13 12:43:03生肖徽章2007版:虎
日期:2008-04-16 21:19:102012新春纪念徽章
日期:2012-01-04 11:51:22鲜花蛋
日期:2012-06-28 10:17:59
发表于 2009-6-26 13:07 | 显示全部楼层
存储过程不是好东西,但程序员都爱用,呵呵

使用道具 举报

回复
论坛徽章:
4
2008新春纪念徽章
日期:2008-02-13 12:43:03生肖徽章2007版:虎
日期:2008-04-16 21:19:102012新春纪念徽章
日期:2012-01-04 11:51:22鲜花蛋
日期:2012-06-28 10:17:59
发表于 2009-6-26 13:11 | 显示全部楼层
开发成本还好了,没听说过有模板这个东西吗?有积累的软件开发机构都有模板,固定的套路,设计做好了,规范执行严格,软件工程成熟,真是高中生也可做程序员

使用道具 举报

回复
论坛徽章:
53
ITPUB北京九华山庄2008年会纪念徽章
日期:2008-01-21 16:50:24双黄蛋
日期:2012-02-27 13:52:192012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-02-13 15:10:58复活蛋
日期:2012-02-11 13:15:09茶鸡蛋
日期:2012-01-12 18:14:55蜘蛛蛋
日期:2012-03-18 22:00:55
发表于 2009-6-26 13:21 | 显示全部楼层
晕了,我在我研究学习的那个ERP中,怎么就没有存储过程这个概念,甚至连关系和视图也没。打开数据库表,除掉一张张单独的表单外,什么都没有。

使用道具 举报

回复
论坛徽章:
13
ERP板块每日发贴之星
日期:2009-05-08 01:01:042012新春纪念徽章
日期:2012-01-04 11:54:26ITPUB十周年纪念徽章
日期:2011-11-01 16:24:042011新春纪念徽章
日期:2011-02-18 11:43:322011新春纪念徽章
日期:2011-01-04 10:35:48ERP板块每日发贴之星
日期:2010-11-01 01:01:01ERP板块每日发贴之星
日期:2010-10-31 01:01:01ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51ERP板块每日发贴之星
日期:2010-05-02 01:01:02祖国60周年纪念徽章
日期:2009-10-09 08:28:00
发表于 2009-6-26 13:38 | 显示全部楼层
原帖由 alone1998 于 2009-6-26 13:07 发表
存储过程不是好东西,但程序员都爱用,呵呵


如果你打算支持多种数据库,那就要用"应用服务器"这个东西,(在这里,可以用标准SQL来写)

如果只打算支持一个数据库,那还是建议用存储过程, 可以成倍地提高的数据运算效率和准确值.
(这里说一下准确值问题: 由于开发工具与数据库对浮点运算解决方法不同,在大运算中,常会出现二者计算结果不符的现象,
这里你就要以一个为标准)

alone1998说得没错.*_*

使用道具 举报

回复
论坛徽章:
13
ERP板块每日发贴之星
日期:2009-05-08 01:01:042012新春纪念徽章
日期:2012-01-04 11:54:26ITPUB十周年纪念徽章
日期:2011-11-01 16:24:042011新春纪念徽章
日期:2011-02-18 11:43:322011新春纪念徽章
日期:2011-01-04 10:35:48ERP板块每日发贴之星
日期:2010-11-01 01:01:01ERP板块每日发贴之星
日期:2010-10-31 01:01:01ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51ERP板块每日发贴之星
日期:2010-05-02 01:01:02祖国60周年纪念徽章
日期:2009-10-09 08:28:00
发表于 2009-6-26 13:39 | 显示全部楼层
原帖由 OKRA-ERP 于 2009-6-26 13:21 发表
晕了,我在我研究学习的那个ERP中,怎么就没有存储过程这个概念,甚至连关系和视图也没。打开数据库表,除掉一张张单独的表单外,什么都没有。


这说明你这款软件支持多种数据库哟.
(不知是福还是祸)

使用道具 举报

回复

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

本版积分规则 发表回复

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