我需要开发一个CRM应用程序,但我不知道该架构应该如何布局.有人能指出我对如何开发这样一个项目的高级别或详细的概述吗?
我可能很快就会使用Siebel CRM,我正在寻找有关使用现代开发实践和企业最佳实践的建议.
具体来说,我想了解以下几个方面的建议:
我不太可能为此获得任何新的昂贵工具,但如果有一个付费工具可以提供非常好的投资回报率,请随意提及.
如果您有这些方面的其他建议,但我的一个问题没有明确解决,请随时添加.
我需要确保将CRM 2011中的案例(事件)实体相关的所有活动的状态设置为完成,然后才能将案例本身的状态设置为已解决.
我可以执行多次检索以独立获取所有可能的活动类型,然后对每种类型执行适当的SetStateRequest(...).本文似乎建议每次创建任何活动类型记录时创建一个ActivityPointer记录,并且两个记录具有相同的ID.当然,当我查看案例和活动时,每个活动类型记录都有一个具有相同ID的关联ActivityPointer记录.到现在为止还挺好.
这是否意味着我可以单独检索与我的案例相关的所有ActivityPointer记录并在其上设置状态以实现跨类型活动状态设置?我想我不明白ActivityPointer的目的是什么,如果它不允许我做通用的活动操作.这是重点吗?此外,ActivityPointer实体没有SetStateRequest消息,所以有人可以解释我如何在ActivityPointer记录上设置状态代码/状态?理想情况下,我想要一个完成状态和取消状态.
更新:此博客似乎准确显示了我想要的内容,尽管SetStateRequest上的官方文档似乎表明它不支持ActivityPointer实体.我会在明天尝试这个,但如果有人就最佳方式提出建议,我将不得不承担责任.
Update2:在进一步阅读时,我认为情况是ActivityPointer实体只能设置它的状态.因此,我应该能够将所有activitypointer记录设置为根据此设置取消的状态.我认为有意义的是,我不能一般地设置"状态原因",因为它在活动类型之间不同.我仍然对前一个链接感到有点困惑,因为它似乎表明我可以设置一个活动指针的状态和状态,但不清楚这是否属实,允许组合的值是什么以及它们意味着什么......
如何在crm 2011中创建和删除多对多实体关系中的数据?
码:
QueryExpression qry = new QueryExpression();
qry.EntityName = "entity1_entity2";
qry.ColumnSet = new ColumnSet(true);
var re = crmservice.RetrieveMultiple(qry).Entities;
crmservice.Delete("entity1_entity2", re[0].Id);
Run Code Online (Sandbox Code Playgroud)
FaultException类型: The 'Delete' method does not support entities of type 'entity1_entity2'.
我是CRM的新手,我正在谷歌搜索如何使用jScript库MS CRM(在线)隐藏和显示文本字段,并找到了使用该功能的几个选项setVisible.
我试过这些选择:
Xrm.Page.ui.tabs.get('new_fieldname').setVisible(false);Xrm.Page.data.entity.attributes.get('new_fieldname').setVisible(false);Xrm.Page.getAttribute('new_fieldname').controls.get(0).setVisible(false);但只有最后一个才真正起作用.第一个选项给我一个错误信息.
他们之间有什么不同?
如何使用crm sdk和C#从CRM 2011中的实体字段中获取选项集?我只想与您分享一个直接的方法来获取实体中的字段选项集.
CRM 2013定制器/开发人员.我是JavaScript的新手,我需要一些关于我可以在CRM 2013中的OnLoad事件中使用的查询的帮助.
在'约会'实体上,我需要根据它的相关父记录的实体类型('aboutobjectid')设置自定义字段(选项集)的值.
例;
- 如果'aboutobjectid'实体类型='帐户',则将"自定义字段"的值设置为"x",
- 如果'aboutobjectid'实体类型='联系',则将"自定义字段"的值设置为"y".
自定义字段是一个具有3个可能值(x,y,z)的选项集,因此如果可以隐藏值"z",当'aboutobjectid'实体类型='联系'时,这将是非常棒的.任何帮助将非常感激.
以下是我的Dynamics CRM实例中的确切方案.
我创建了一个自定义实体(比如Order),它有一个查找字段(例如,Item).查找字段指向具有货币字段(例如,金额)的另一个实体.我已在订单实体中创建了一个汇总字段(例如,总金额),并将其设置为计算订单所有项目的金额总和.创建后,我将控件放在实体的主窗体上.
当我尝试检查汇总字段的值(通过单击汇总字段的"刷新"图标)时,它会出现以下错误:
需要记录货币来计算货币类型的汇总字段.提供货币并重试.
我尝试过类似的帐户和机会实体,新的汇总字段在那里完美运行.
知道它为什么不适用于自定义实体?我是否需要在实体或表单级别执行任何额外操作?
我想创建一个QueryExpression来模拟这个SQL语句
select * from A
inner join B on A.b_id=B.ID
where B.Name like "% what ever %"
Run Code Online (Sandbox Code Playgroud)
这就是FetchXML的样子
<?xml version="1.0" encoding="UTF-8"?>
<fetch distinct="true" mapping="logical" output-format="xml-platform" version="1.0">
<entity name="A">
<attribute name="ID" />
<attribute name="sce_name" />
<link-entity name="B" alias="ab" to="b_id" from="A">
<filter type="and">
<condition attribute="Name" value="% what ever %" operator="like" />
</filter>
</link-entity>
</entity>
</fetch>
Run Code Online (Sandbox Code Playgroud)
我怎么能在让这个QueryExpression LinkQuery Conditions和Filters,也是我不想从开始乙因为一个可能的条件太多.
这是我到目前为止所尝试的
QueryExpression query = new QueryExpression("A");
query.ColumnSet.AllColumns = true;
var link = new LinkEntity() …Run Code Online (Sandbox Code Playgroud) SuiteCRM 7.5.1 - 特别提到在SuiteCRM中使用用户,角色和安全组.
所以,我有一个特定的设置,我已经查看并阅读了大量文档,并尽力了解SuiteCRM如何做到这一点.
如何才能正确实现以下场景?:
假设我有一棵树就像这样:
为了便于理解,我们将对这些行进行编号:1,2,3和4.然后我们让管理员作为员工投入混合.
管理员可以处理几乎所有记录,除了使用工作流,乱码或乱用一些自定义模块,除此之外,他们几乎没有限制,也不遵守下线的任何规则.
然后我们按照下线:
第1人可以看到所有人员2,3和4都是在他们的下线和他们的领土内.他们看不到任何其他人1的期间.他们看不到任何不在他们的下线或他们的领土内的2,3和4.他们也看不到管理员或分配给他们的任何东西.
人2可以在他们特定的下线和领土内看到所有人3和4,他们看不到任何人1或2的期间.他们无法在其领土或下线之外看到任何第3或第4人.他们也看不到管理员或分配给他们的任何东西.
人3可以在他们特定的下线和区域内看到所有4个,他们看不到任何人1,2或其他3个时期.他们在领土或下线之外看不到任何人4.他们也看不到管理员或分配给他们的任何东西.
人4只能看到分配给他们的记录.
在这个例子中只有4个深度,在现实世界中,实际上有12个深加管理员和我,超级管理员.
我该如何解决这个问题?
crm ×10
dynamics-crm ×6
c# ×2
.net-3.5 ×1
asp.net ×1
javascript ×1
roles ×1
siebel ×1
sugarcrm ×1
suitecrm ×1
testing ×1
web-services ×1
webresource ×1
xrm ×1