现在通过QQ和客户联系、洽谈业务及沟通感情的场合越来越多,在微软CRM表单上整合QQ可以方便的显
示客户QQ在线状态,点击图标即可和客户进行QQ聊天。

客户在线状态:

客户离线状态:


输入QQ号码后即时显示在线状态,点击QQ图标后,如果你的QQ程序已经登陆,立即显示QQ对话框,如果
你的QQ程序没有登陆,就会显示QQ登录窗口,登录后就显示对话框,就可以和客户聊天了。如果在
MSCRM中新建一个QQ聊天实体,就可以保存客户的每次聊天内容了。
开发源代码:
1、进入MSCRM4.0“自定义”,进入联系人实体建立两个属性 ,你可以输入自己的名称,不过在代码处要
做相应修改。
显示名称    名称
QQ号码      qq
QQ交谈     qqimage
注意:名称的前缀可能是你默认设置的,在下面的代码处要修改相应的前缀名称。

2、添加这两个属性到你的联系人表单。


3、点击“表单属性”,然后添加“onload”代码:

 if (crmForm.all.new_qq.DataValue != null)
{
var qq=crmForm.all.new_qq.DataValue ;
var field = crmForm.all.new_qqimage_d; var html = "<table border='0' cellspacing='0' cellpadding='0'><tr><img width='77' height='17' style='cursor:hand' src='http://wpa.qq.com/pa?p=1:"+crmForm.all.new_qq.DataValue+":16' alt="+qq+" onclick='Button_OnClick()' /></tr></table>"; field.innerHTML = html;
}
else
{
  var field = crmForm.all.new_qqimage_d; var html = "<table border='0' cellspacing='0' cellpadding='0'><tr><img width='77' height='17' style='cursor:hand' src='http://wpa.qq.com/pa?p=1:00000:16' alt='填写QQ号码' onclick='Button_OnClick()' /></tr></table>";
field.innerHTML = html;
} Button_OnClick = function()
{
  if(crmForm.all.new_qq.DataValue != null)
  {
    var qq=crmForm.all.new_qq.DataValue ;
    var url="tencent://message/?uin="+qq+"&amp;Site=N&amp;Menu=yes";
    var newWin=window.open(url,'','resizable=no,height=3,width=3,toolbar=no,menubar=no,scrollbars=no,location=no,left=10000,top=10000');
    setTimeout(function(){self.focus(); },0);
}
}

4、点击“QQ号码”字段添加“OnChange”代码:
注意:代码里面的字段名称和前缀和你的不一样,你需要做相应修改。

 if (crmForm.all.new_qq.DataValue != null)
{
var qq=crmForm.all.new_qq.DataValue;
var field = crmForm.all.new_qqimage_d; var html = "<table border='0' cellspacing='0' cellpadding='0'><tr><img width='77' height='17' style='cursor:hand' src='http://wpa.qq.com/pa?p=1:"+crmForm.all.new_qq.DataValue+":16' alt="+qq+" onclick='Button_OnClick()' /></tr></table>";
field.innerHTML = html;
}
else
{
var field = crmForm.all.new_qqimage_d; var html = "<table border='0' cellspacing='0' cellpadding='0'><tr><img width='77' height='17' style='cursor:hand' src='http://wpa.qq.com/pa?p=1:00000:16' alt='填写QQ号码' onclick='Button_OnClick()' /></tr></table>";
field.innerHTML = html;
}

5、保存和发布“联系人”实体,你就能看到MSCRM和QQ实时整合的状态了。

ps:如果用了上述方法发现QQ图标显示为未启用,如图

这种情况是因为输入的QQ没有启用QQ商家,启用后才能获取在线状态,不过这种情况并不影响打开聊天对话框进行沟通,付QQ商家注册地址

http://shang.qq.com/widget/consult.php,可以一键免费注册,就可以看到在线离线状态了。

微软CRM4.0 页面表单和腾讯QQ在线整合的更多相关文章

  1. 把JSON数据载入到页面表单的两种思路(对easyui自带方法进行改进)

    #把JSON数据载入到页面表单的两种思路(对easyui自带方法进行改进) ##背景 项目中经常需要把JSON数据填充到页面表单,一开始我使用easyui自带的form load方法,觉得效率很低,经 ...

  2. SpringMVC接收页面表单参数-java-电脑编程网

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  3. 使用JQuery.Validate插件来校验页面表单有效性

    使用JQuery.Validate插件来校验页面表单有效性​1. [代码] 常见的注册表单元素 <form action="#" method="post" ...

  4. html 页面表单如果是disabled,则不能提交到服务器端,request.getParameter得到的将为null

    html 页面表单如果是disabled,则不能提交到服务器端,request.getParameter得到的将为null 解决方法:使用hidden 利用javascript赋值,传递到后台

  5. 记录ASP.NET页面表单初始状态(主要是为了前台可以根据这个判断页面是否变动了)

    把页面表单状态记录到HiddenField中. 这里只提供后台代码, 前台逻辑根据需求自由定义. 存放值的ViewState: protected Dictionary<string, stri ...

  6. JavaScript学习——使用JS完成注册页面表单校验

    1.步骤分析 第一步:确定事件(onsubmit)并为其绑定一个函数 第二步:书写这个函数(获取用户输入的数据<获取数据时需要在指定位置定义一个 id>) 第三步:对用户输入的数据进行判断 ...

  7. PDF 补丁丁 0.5.0.2731 发布(增加去除页面表单和链接水印功能)

    新的版本增加了简单的删除表单和链接批注的功能,使用该功能可去掉某些软件打上的水印. 在 PDF 文档选项中选中“清除页面所有表单”和“清除页面所有链接批注”项后,程序将会删除页面的表单和链接批注. 效 ...

  8. HTML 之 Web页面表单form中只有一个input的text元素,按回车默认提交

    WEB开发中,如果页面的 form 中只有一个input元素,在该input元素的输入框中按回车(注:此时并没有写对应的onkeydown等事件处理),则浏览器会默认提交表单,请看如下代码: < ...

  9. SpringMVC接收页面表单参数

    一个普通的表单. 表单的代码如下: <%@ page language="java" contentType="text/html; charset=UTF-8&q ...

随机推荐

  1. gitblit 搭建本地git服务器

    本文主要描述gitblit搭建本地服务器

  2. Git 基础教程 之 搭建Git服务器

    截图自: 廖雪峰老师官方网站 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0 ...

  3. hdu 2782 dfs(限定)

    The Worm Turns Time Limit: 8000/4000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  4. (转)window.location.hash 属性使用说明

    location是javascript里边管理地址栏的内置对象,比如location.href就管理页面的url,用location.href=url就可以直接将页面重定向url.而location. ...

  5. Android图片异步载入框架Android-Universal-Image-Loader

    Android-Universal-Image-Loader是一个图片异步载入,缓存和显示的框架.这个框架已经被非常多开发人员所使用,是最经常使用的几个Android开源项目之中的一个,主流的应用,随 ...

  6. [RxJS 6] The Catch and Rethrow RxJs Error Handling Strategy and the finalize Operator

    Sometime we want to set a default or fallback value when network request failed. http$ .pipe( map(re ...

  7. poj 3468 A Simple Problem with Integers(线段树+区间更新+区间求和)

    题目链接:id=3468http://">http://poj.org/problem? id=3468 A Simple Problem with Integers Time Lim ...

  8. android app记录执行日志 捕获奔溃异常 ,存储日志到文件

    app在执行过程中.为了后期的维护升级,记录日志是一个很好的方法. 为了读取到app执行时的日志,一般的作法是单独开一个线程,在app执行的启动线程.然后app退出时停掉线程. 然而我们更好的方法是开 ...

  9. Java 获取随机日期

    /** * 获取随机日期 * @param beginDate 起始日期 * @param endDate 结束日期 * @return */ public static Date randomDat ...

  10. oc44--多对象内存管理

    // Room.h #import <Foundation/Foundation.h> @interface Room : NSObject @property int no;// 房间号 ...