2010-02-08 60 views
1

我们在为我们的CRM工作时使用MS Dynamics 4.0。这将处理所有联系人管理,市场营销,资源共享(w/sharepoint集成,工作流管理/协作),并且本质上由企业中的每个部门以某种方式使用。CRM还是不CRM(MS)?

我们必须从业务需求,为此我们必须在很短的时间线的新应用。我们刚刚开始推出CRM,而大部分的定制开发都是由咨询公司完成的。

我们需要一个相对简单的应用,我们需要跟踪一些数据共享特定组。其中一些信息已经存在于我们的“公司”和“客户”CRM实体中。

这个新项目将要求我们增加约26场 - 我们不希望我们的臃肿已经大公司实体 - 尤其是因为只有5%左右我们的公司会使用这些额外的字段。

我们现在基本上正在讨论一个设计 - 混合解决方案(创建我们自己的ASP.NET应用程序,看起来像CRM并通过Web服务与它通信并将所有'补充'字段存储在我们自己的数据库中,可能生活在与我们的CRM DB相同的数据库服务器,因此我们可以轻松地编写查询)。另一种选择是在CRM中完成100%。

我只是为那些做过类似的人寻找建议。你会建议做一个这样的混合解决方案吗,还是应该做100%CRM?我们的截止日期很紧,开展项目的开发人员对CRM知识有限;这就是为什么这是一场辩论。对于那些与MS Dynamics合作的人来说 - 您通常会如何处理像这样的项目,我们需要添加许多字段(甚至包含自己的父 - >子关系的子字段),这些字段仅适用于我们的一小部分主要的'公司'实体..需要注意的是:当人们按原样加载这个公司实体时(这可能需要5秒钟的时间才能呈现页面),我们已经遇到了性能问题,高级发现也是如此。

最后一件要注意的是 - 这部分应用程序是只有用于存储数据。最终,用户将打开一个VBA Excel工作簿,并推送一个“下拉数据”按钮,该按钮将从我们收藏的任何地方提取这些数据。我们只是不确定我们应该在哪里存储/管理这些数据/ UI。

非常感谢您的任何建议。

编辑:如何创建2个列表框相邻的中间有2个按钮,其中一个列表框是“我的foos”的丢失,另一个是“所有foos”,并且您添加/带走从'我的foos'列表框?经典的'我有这些foos作为我的一部分'用2个列表框和2个箭头按钮的UI控件...应该/我可以使用jQuery来做到这一点吗?并没有人碰巧知道任何jQuery控件已经做了所有这些开箱即用?这是一个常见的控制,我确信它必须在某个地方。我浏览了一些工具包和控件以及一些在这里线程和看到了一些真正真棒,甚至更复杂的控制,但没有这个特殊的..

EDIT2:做更多的研究后,它看起来像保持CRM中的所有用户界面都会更加复杂,然后只需为该部分创建一个ASP.NET应用程序并将其放入CRM中的iframe或模式弹出窗口即可。

我们仍然可以设置所有的数据在CRM领域和关系 - 有ASP.NET使用做web服务调用的CRUD。

我们似乎也将结束不必做相同的工作数量来获得CRM所需的功能 - 除了它会更hackish的,并在JavaScript完成。什么好处?保持在一个地方的用户界面?不是太大的权衡IMO的...

到目前为止,我们倾向于保持所有数据,CRM,但把UI在ASP.NET

任何意见是很大的appreicated。我说的理智吗?谢谢

回答

7

我同意,你最好用100%的CRM。

如果(并且我强调)如果您发现性能影响很大,请考虑使用相关实体来保存其他字段。

CRM不提供1对1的关系类型,因此您必须自己管理。使您的公司实体成为关系的N方,以便相关实体显示为查询。

或者,如果相关实体查找对您的用户来说太抽象,请将带有iFrame的选项卡添加到公司实体表单中。使用javascript显示/隐藏选项卡,并将iFrame的src设置为相关实体的URL。

+0

感谢您的建议,我会研究这一点。 然而,我们遇到的另一个问题是内置于CRM中的UI控件的局限性。我们需要的是一种将实体X映射到一组许多实体Y的说法,即'x具有所有这些Y作为孩子'......为此,我们需要一个列表框,两个箭头指向任一方向的按钮,以及另一个列表框(你知道什么即时通讯在几乎每个应用程序中都在谈论这些...按箭头和选定项目更改列表框,以管理映射)。 这似乎不可能做到这一点在数据类型控制构建。 – dferraro 2010-02-10 15:15:27

+0

也许我们应该尝试使用jQuery进行此操作? 再次感谢! – dferraro 2010-02-10 15:16:06

+0

我认为您需要使用CRM在用户界面中关联数据的方式。 X到Y's只是1对N的关系。通过它的声音,公司对当前的用户界面感到满意,因此可以使用它。实际上,它只会花10分钟来模拟和测试。 – 2012-08-09 08:01:22

2

我会使用CRM来存储数据。您可以将新字段粘贴到用户界面的单独窗格中,以免混乱。您甚至可以向UI添加一些Javascript来隐藏不属于需要它们的组的用户的窗格/字段。我知道这听起来有点骇人听闻,但与完全不同的应用程序相比,它的工作量要少很多,用户将获得一致的体验。将数据存放在一个地方也是报告等的福音。

我不能肯定地说,但我不认为向实体添加几列(已经有bazzilion列)会使性能进一步恶化。我会检查安装情况并检查通常的性能问题。

+0

感谢您的回复。它更多的是几列......像26的东西,其中1是一个实体,它有自己的字段包含另一个实体,它有自己的字段以及 – dferraro 2010-02-11 15:28:15

0

我知道这不符合您的情况,因为您深入MS CRM,但Neal Ford最近发布了一篇很好的文章,该文章最近发布到IBM Developer Works(http://www.ibm.com/developerworks/java/library/j-eaed10/),讨论了COTS与本土开发的软件。这是一个片段。

大公司出现的一个常见问题是决定是否构建或购买:对于当前的需求,我们应该购买COTS(商业现成软件)还是自己构建?这一决定的动机是可以理解的 - 如果公司可以找到一些已经编写完成所需内容的软件,它可以节省时间和金钱。不幸的是,许多软件供应商都明白这一愿望,并编写了可以定制的软件包,如果它不能完全满足客户的需求。他们有动力建立他们可以使用的最通用的软件,因为它可能适合更多的生态系统。但是更普遍的是,更多的定制是必需的。那时有一大队顾问出现,有时需要几年才能完成所有的定制编码。

2

创建ASP.NET应用程序以在iframe中创建复杂的UI是我经常用于MS Dynamics CRM 4.0应用程序的简单解决方案。

保留CRM中的所有数据会产生很多意义,但无论如何您都需要它。

iframe使用包含实体的GUID的Querystring调用您的ASP.NET应用程序,以便您可以使用Web服务来提取任何相关信息。

您既可以使用JavaScript修改表单上显示的字段,也可以直接更新数据库或两者以保持一致性。仅仅隐藏ASP.NET应用程序中正在更新的字段更容易,因此不会有任何混淆。

很久以前的一个例子是贷款摩根计算器,我为一个销售代表可能会有的机会的iframe而构建。它会查找所有客户的相关贷款余额并计算销售代表可以变成报价的不同选项。点击几个复选框,然后按下一个按钮,而不必重新输入大量信息。数据被写入许多CRM实体,生成电子邮件并修改自动拨号列表,以便再次致电该客户。

学会使用MS CRM作为一个重要的开发工具箱是能够做一些严肃的业务流程自动化的第一步。

如果您有任何问题,请告诉我。