如果你要从头开始架构和开发一套全新的ERP系统以下问题你会如何选择?为什么?
请大家多提意见谢谢。
程序运行环境:客户端winxp win7等主流windows
后台数据库:sqlserver
1.Delphi的版本选择问题,你会选择哪个版本呢?Delphi7 delphi2007 delphi2010
2.程序的架构选择是:主程序 + dll, 主程序 + bpl 还是 主程序 + exe
3.资料存取:bde, ado。还是 dbexpress?
4.如果想让程序同时支持 sqlserver 和 oracle 怎么做呢?要写两个版本吗?
5.求delphi 编码规范和用户界面设计规范。

解决方案 »

  1.   

    从头开始 不用d7也可以
    只是如果需要很多第三方控件,也要看看它们是否支持架构建议是:exe+dll<---------http------->webserver<==>database
    客户端与数据库类型无关
    webserver之后的app server才操作实际的数据库,换数据库类型,变的只是它们
      

  2.   

    如果想让程序同时支持 sqlserver 和 oracle 怎么做呢?要写两个版本吗?用UniDac
      

  3.   

    无论你用什么,如果要支持多个数据库,你的SQL语句要重新封装。
      

  4.   


    1.Delphi的版本选择问题,你会选择哪个版本呢?Delphi7 delphi2007 delphi2010   会选择2010
    2.程序的架构选择是:主程序 + dll, 主程序 + bpl 还是 主程序 + exe    主+dll
    3.资料存取:bde, ado。还是 dbexpress? ado 最好三层
    4.如果想让程序同时支持 sqlserver 和 oracle 怎么做呢?要写两个版本吗? 这个不懂
    5.求delphi 编码规范和用户界面设计规范。 这个都是别人在写
      

  5.   


    1.Delphi的版本选择问题----》:建议选用 delphi2010
    2.程序的架构选择建议是:主程序 + dll
    3.资料存取建议用ado
    4.如果想让程序同时支持 sqlserver 和 oracle 封装一个数据访问类,通过配置文件设置选择支持不同的数据库,并做好版本控制,中小企业适用sqlserver ,大型企业用oracle 
      

  6.   

    ERP 是用B\S 还是 C\S 好呢?
      

  7.   

    b/s + c/s ==> client/webserver
      

  8.   

    谢谢大家都回复。
    我们是想开发cs的。
    我们之前一直用delphi7 + bde + orcacle
    现在我们想开发一个新的版本支持sqlserver。
      

  9.   

    这个不好说,在Win平台,ADO已经很成熟。。但涉及历史代码,自己权衡取舍
      

  10.   

    其实,现在用delphi环境进行开发软件的越来越少了。但是一套软件的好坏并不在于用哪一种版本或哪一种语言来开发,而是你写出来的软件是否能适用于买方公司的需求。
      

  11.   


    前提是: 写出来的软件是否能适用于买方公司的需求
    当然是新版本的开发工具、高版本DBMS更好了
      

  12.   

    .Delphi的版本选择问题,你会选择哪个版本呢?Delphi7 delphi2007 delphi2010
    2.程序的架构选择是:主程序 + dll, 主程序 + bpl 还是 主程序 + exe
    3.资料存取:bde, ado。还是 dbexpress?
    4.如果想让程序同时支持 sqlserver 和 oracle 怎么做呢?要写两个版本吗?
    5.求delphi 编码规范和用户界面设计规范。
      

  13.   

    1.Delphi的版本选择问题,你会选择哪个版本呢? ————————> delphiXE
    2.程序的架构选择是:--------->主程序 + dll     
    3.资料存取:bde, ado。还是 dbexpress? ----------->unidac!用直连模式,客户端不用装驱动,发布的时候省心~
    4.如果想让程序同时支持 sqlserver 和 oracle 怎么做呢?要写两个版本吗?   ---------->用unidac,支持10+种数据库
    5.求delphi 编码规范和用户界面设计规范。 --------------->编码规范自己谷歌一下(^^),用户界面的话具体问题具体分析咯,可以借鉴大公司做的东西~
      

  14.   

    1.Delphi的版本选择问题,你会选择哪个版本呢?Delphi7 delphi2007 delphi2010
    Delphi XE
    2.程序的架构选择是:主程序 + dll, 主程序 + bpl 还是 主程序 + exe
    主程序+bpl,用dll会把dll搞的很庞大,因为dll没有包依赖。
    3.资料存取:bde, ado。还是 dbexpress?
    unidac
    4.如果想让程序同时支持 sqlserver 和 oracle 怎么做呢?要写两个版本吗?
    unidac,不建议同时支持两种数据库。你一定要的话靠考虑投资付出,因为数据库差别很大,为了达到高效,很多sql你必须面对不同的db做重写和测试。别说用所谓的hibernate之类的持久化或自己解析sql,不实际。
    5.求delphi 编码规范和用户界面设计规范。
    编码规范应该自己决定(当然必须由有经验的设计师讨论决定适合自己的),界面及控件采用dev最新版本全系列,好处,除了动态变化style,动态设定cxgrid的可见可不见,动态设置表头栏位的可见可不见,这些人性话的功能。dev是这个世界上最好用功能最强的控件集,可以省去你将来很多的工作。
      

  15.   

    BDE不建议再使用
    多数据库支持建议尽量采用标准SQL,减少移植工作
      

  16.   

    1.Delphi的版本选择问题,你会选择哪个版本呢?Delphi7 delphi2007 delphi2010
      DELPHI2010, 稳定, 并且加入新的语法支持, 代表写得更容易.2.程序的架构选择是:主程序 + dll, 主程序 + bpl 还是 主程序 + exe
      主程序 + dll + exe 三者必须, 作为架构, ERP软件很多时候需要外加硬件连接, 而硬件连接, 有时间就是给EXE, 而不是给DLL的.3.资料存取:bde, ado。还是 dbexpress?
      三层采用dbexpress, 二层采用 ADO.  4.如果想让程序同时支持 sqlserver 和 oracle 怎么做呢?要写两个版本吗?
      程序同时支持SQLServer和Oracle的话, 尽量小用select语句, 多用存储过程作标准接口, 除非select语句是标准语句, 与其写两个版本, 倒不如多采用存储过程.(好像ORACLE存储过程不能返回数据集)5.求delphi 编码规范和用户界面设计规范。
      编码规范建议采用MFC+DELPHI的形式, 界面都是根据需求做的, 视ERP类型而定.
      

  17.   

     1. 经验告诉大家,越先进的工具越能提高效率。大部分的不稳定是可以避免的。
     2. 主程序加 DLL 是最大路的,没特别原因,别用 bpl.
     3. bde 发布会给自己带来麻烦,ado 还是比较稳定的.
     4. 写存贮过程可以兼容大部分数据库。
     5. 略
      

  18.   

    1.Delphi的版本选择问题,你会选择哪个版本呢?Delphi7 delphi2007 delphi2010
    对于开发工具别那么执着,要选最熟悉的,上手快的,控件支持最好的如果你的项目不是练手的。2.程序的架构选择是:主程序 + dll, 主程序 + bpl 还是 主程序 + exe 
    选择构架的前提是程序的可扩展性和易维护性,不是为了DLL而DLL。如果一定要这么做,那么DLL的方式应该是windows下面开发比较通用的,大部分人都这么用。3.资料存取:bde, ado。还是 dbexpress?
    微软的系统肯定对ado支持最好,能更好的安装部署。4.如果想让程序同时支持 sqlserver 和 oracle 怎么做呢?要写两个版本吗?
    你看看分层相关的东西,把数据库访问层搞成接口,用不同的方式实现接口
      

  19.   

        作ERP的话,我不建议重头开发,我从96年开始做MRPII的。作ERP目前国内市场并不好,即使是Oracle、SAP成功者也不多,一般大企业使用国外产品居多,也有一部分使用国内的用友、金蝶之类。如果要做的话,我估计左后用起来的也就进销存、财务等模块,现成产品很多。ERP中计划模块目前大多基于MRPII算法,其对变化适应能力较差,中小离散型制造企业设计BOM、制造BOM、物料编码、提前期数据不准,数据准备不充分,基本可以说计划部分用不上;也有使用APS的,核心算法是整数混合规划,SAP和Oracle即如此。
        另外,ERP项目要求项目经理对制造业有较深的领域知识,编程倒在其次。
        
        回到你问的问题,ERP核心计划模块Delphi不合适,与CAD/CAM/PDM接口部分也不太合适,报表建议使用第三方报表引擎。数据接口BDE肯定PASS,也可考虑第三方控件。
      

  20.   

    谢谢大家都建议,对我们都很有帮助。
    最后我们决定Delphi版本采用Delphi7原因是:
    1.我们都比较熟悉Delphi这个版本,可以满足我们目前的开发要求。
    2.我们之前自己定义的控件都是基于Delphi7的,移植到新的版本需要一定的时间。(可见新技术(开发工具的新版本)的使用是有阻力的)程序结构采用主Exe + bpl存取数据使用ADO目前只支持 SQLServer数据库。ps:在最初我们设想的很多,但是实现的时候我们只能采用一种。
    这个和我们平时知识积累有关系,比如新版本工具的熟悉,控制的移植,多数据库支持,不同程序结构的实践等。