星期二, 十一月 28, 2006

用 JavaScript 来在 CRM 用户的 GUID

最近很忙,在做 CRM 的集成。 上次教了大家怎样用 JavaScript 来隐藏属性。有人问了我很多次怎样用 JavaScript 来拿取 CRM 用户的 GUID, 然后根据用户的 GUID 来隐藏属性。好像隐藏一些只能经理才看到的东西。

拿取 CRM 用户的 GUID 不是太难, 在每一个 CRM 的 .net 网页,都有一个大家都不知道的 js 文件。那个文件就是 “/_controls/RemoteCommands/RemoteCommand.js”, 里面有一个function, RemoteCommand(sObject, sCommand, sUrlBase), 大家可以使用它来连接 CRM Web的引用。

如果你想拿用户的GUID,你需要把以下的 JavaScript 放到表格的 onLoad 里去,就可以知道那CRM用户的ID了。

var usercommand = new RemoteCommand("SystemUser", "WhoAmI", "/MSCRMServices/");
var userResult = usercommand.Execute();
alert(userResult.ReturnValue.UserId);

如有问题,请到论坛上问。

星期五, 十一月 24, 2006

IE Toolbar - 感恩节给大家的礼物

我们这里放假,放感恩节。在这感恩节, 我给大家送一个礼物, 如果想知道怎样在CRM 来做JavaScript, 大家首先要下载 IE Developer Toolbar。 因为CRM是取用了 DHTML/DOM, 我们很多的时候, 要知道一个属性的Id ,才能使用 JavaScript 来藏掉或加上。这个Toolbar 将会告诉我们那些属性的Id, 以后我教大家 JavaScript 的时候,我会时常提到 IE Toolbar 的。

大家可以到以下的连接下载,只有英文版本。
http://www.microsoft.com/downloads/details.aspx?familyid=e59c3964-672d-4511-bb3e-2d5e1db91038&displaylang=en

 

大家感恩节快乐。

Temporary Post Used For Style Detection (e5cf62ec-84fa-4c1c-85d7-e32ad32677d5)

This is a temporary post that was not deleted. Please delete this manually. (bf7a50c6-8f2f-4baf-a620-73b68e2f9067)

星期五, 十一月 10, 2006

CRM 3.0 Service Pack 1

微软在11月低或12月初将推出 CRM 3.0 的 SP1, 请大家留意。出了补丁后, 我会告诉大家。

星期四, 十一月 09, 2006

CRM Email Router 的功能

CRM Email Router 是一个用来监测收取邮件的程序。 如果看到收取的邮件有 CRM的 ID, 就自动把 Email 放到 CRM 里去。 如过没有安装 Email Router, 大家就要自己把有关的Email放到CRM里去了。 CRM Email Router 一定要安装在 Exchange 上, 如果你的邮箱是租用的, 你就不能用这个程序了。

在你安装 CRM Router 之前,你需要创造一个电子邮箱。 基本上 CRM Router 把 规则 放到 每一个CRM 用户的邮箱,那个规则就把所有用户的邮件 Copy 到你之前创造的邮箱上去。 CRM Email Router 的程序就监测那个邮箱, 把对CRM无关的电邮省掉, 如果有 CRM ID 的电邮就自动把它放到 CRM里去。 就是这么的简单。

所以如果的邮箱是租用的, 你就不能用这个程序了。 :)

用 JavaScript 来隐藏字段

如果你想在 CRM 的表单上隐藏一些的字段, 大家可以用 JavaScript 来做。 为什么要隐藏呢?好像经理们可以看一些的字段是不想让普通 CRM 用户看到的等等。

给大家一个例子, 我就把客户的电子邮件字段用 JavaScript 来隐藏掉。

1 到 设置 -> 自定义 -> 自定义的实体 -> 客户
2 到 客户 的 表单 -> 表单属性

3 把 OnLoad 打开
4 然后把 以下的 JavaScript 放到 TextBox 那里去。

crmForm.all.emailaddress1.style.visibility= "hidden";

5 按 OK, 然后 发布。

   

你就可以看到 Email 的字段已经隐藏掉了。大家可以用以上的 JavaScript 到其他的字段。 crmForm.all.[字段名].style.visibility="hidden";

如果有什么问题, 请在论坛问吧。 我的中文不是太好, 请大家见谅。 :)

星期五, 十一月 03, 2006

更改原有的纪录

这几天都很忙,在帮一个客户做 CRM BizTalk 的 Integration, 所以没有什么时间来写我的 Blog。 今天就教大家一些简单的东西。 上一次我们学习了怎样来用 SDK 创建客户, 那么我在这儿教大家怎样更改原有的纪录。 我这一次会用“联系人”。

首先我们要证实使用CRM的用户,

CrmService service = new CrmService();
service.Credentials = System.Net.CredentialCache.DefaultCredentials;

然后你需要知道你需要更改的联系人的 GUID。 联系人的 GUID 就是 ContactID, 在数据库可以找到。

contact contact = new contact();
contact.address1_line1 = "300 北京路";

CRM里有他自己的属体, 所以我们不能把 GUID直接的放上

contact.contactid = new Guid("4D507FFE-ED25-447B-80DE-00AE3EB18B84");

我们需要创造一个新的 Key, 然后把 GUID 放上。

contact.contactid = new Key();
contact.contactid.Value = new Guid("4D507FFE-ED25-447B-80DE-00AE3EB18B84");

最后就启动update的方法来更改这个联系人。

service.Update(contact);

那就这么简单, 你现在可以试一下更改客户了。 :=)