2、CRM2011编程实战——设置窗体某一项的值为服务器时间

需求:设置窗体中某个控件的值为服务器时间。

解决方案:通过一个一般处理程序获取服务器时间,然后通过ajax形式获取到此服务器时间并赋值给界面控件。

1、新建一个一般处理程序GetSererTimeHandler.ashx,

代码如下:

<%@ WebHandler Language="C#" Class="GetSererTimeHandler" %>

using System;
using System.Web;

namespace IsWaterWeb
{
    public class GetSererTimeHandler : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            string action = context.Request["action"];
            if (action == "GetTime")
            {
                string date = DateTime.Now.ToString();
                context.Response.Write(date);
            }
        }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }

    }
}

Js调用代码如下:

// get server time
function getServerTime() {
    if (Xrm.Page.ui.getFormType() == 1) {
        $.post("/isv/Handlers/GetSererTimeHandler.ashx", { "action": "GetTime" }, changeShowTime);
    }
}
//new Date("2009/02/03 11:12:13")
var changeShowTime = function (data) {
    Xrm.Page.getControl("hxcs_fdatetimeofrequesthelp").getAttribute().setValue(new Date(data)); //将服务器时间赋值给窗体控件显示
};

注意:由于这里使用到了jquery代码,所以在资源文件中,要先引入jquery.js库。如下:

备注:如果你是在应用程序中新建的一般处理程序,那么你build应用程序后,将bin中的dll以及GetSererTimeHandler.ashx文件一同拷贝到CRM服务器上面去。我这里的应用程序名称是IsWaterWeb,对应生成的dll是IsWaterWeb.dll,将dll一同拷贝到CRM服务器上面的指定文件夹下,如:C:\Program Files\Microsoft Dynamics CRM\CRMWeb\ISV\bin。如果没有bin目录,就新建一个。一般处理程序就拷贝到如下目录:

如果是在web网站中新建的一般处理程序,那么你可以直接把GetSererTimeHandler.ashx,和GetSererTimeHandler.ashx.cs一起拷贝到如上目录。

2、CRM2011编程实战——设置窗体某一项的值为服务器时间

时间: 2024-08-28 02:08:24

2、CRM2011编程实战——设置窗体某一项的值为服务器时间的相关文章

4、CRM2011编程实战——将窗体中指定控件的值做处理后更新到另一个字段中

需求:将接报时间加上到期提醒时间后得到的值,更新到字段"到期截止时间" Js调用: //设置到期截止时间 function setDeadLine(){ var recordId = Xrm.Page.data.entity.getId(); var entityName = Xrm.Page.data.entity.getEntityName(); var reportedTime = Xrm.Page.getControl("hxcs_fdatetimeofrequest

1、CRM2011编程实战——清空指定页签下面的所有选项,并对页签下面的指定控件进行操作

需求:当页面加载时,"呼叫编号"保持不变,"任务号"自动更新,"接报时间"和"发生日期"自动设置为当天日期和时间,其它选项全部恢复为初始状态. 字段说明: 控件名称 值 控件名称 值 控件名称 值 反馈单登录 tab_4 任务号 hxcs_ftaskcode 接报时间 hxcs_fdatetimeofcasehappended 发生日期 hxcs_fdatetimeofcasehappended 呼叫编号 hxcs_fcall

3、CRM2011编程实战——选项集(下拉框)联动效果的实现

需求:根据选择不同的"反映类别",帅选出不同的"反映内容". 字段说明:反映类别:hxcs_feedbacktype,反映内容:hxcs_feedbacktype 解决方案:要设置两个选项集的关联,我们可以为两个选项集设置value的时候,做一些特殊的处理.举例:假设类别的Value:1001,1002,那么对应的内容可以设置为:类别value+00001,即100100001,以此类推.如下图: Js代码如下: function onFeedBackTypeCha

5、CRM2011编程实战——在CRM中添加修改密码功能

需求:登录CRM2011的用户,让其可以自己修改密码. 解决方案:新建一个自定义页面,为其提供修改域账号功能.第一步:获取当前域账号,第二步:修改当前域账号密码. 新建aspx页面ResetUserPassword.aspx,前台代码如下: <%@Page Language="C#" AutoEventWireup="true" CodeBehind="ResetUserPassword.aspx.cs" Inherits="Hu

获取和设置select的选中项的值

<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>获取select的选中项的值</title> </head> <body> <select id="select0"> <option value="0">请选择选项&l

JAVA入门到精通-第32讲-swing编程实战

 JBorderLayout,左边是JList,拆分窗格: 图片是放在JLabel上的,图片的地址写好就行:  在相关项目下面建立一个文件夹Folder,放置图片:或者复制粘贴:   拆分:水平拆分?垂直拆分?    拆分之后把jList和jl1这两个组件放进去: 可以伸缩:  在窗口左上角出现自己的图标? Border布局: 多行文本框带滚动条,聊天窗口可滚动:   加入QQ左上角图标:      转成图片,getImage; Border布局很有用, CENTER会被自动挤满:  QQ号码.

MapReduce编程实战之“高级特性”

本篇介绍MapReduce的一些高级特性,如计数器.数据集的排序和连接.计数器是一种收集作业统计信息的有效手段,排序是MapReduce的核心技术,MapReduce也能够执行大型数据集间的""连接(join)操作. 计数器 计数器是一种收集作业统计信息的有效手段,用于质量控制或应用级统计.计数器还可用于辅助诊断系统故障.对于大型分布式系统来说,获取计数器比分析日志文件容易的多. 示例一:气温缺失及不规则数据计数器 import java.io.IOException; import

[笔记][Java7并发编程实战手册]4.3 创建固定的线程执行器newFixedThreadPool线程池

[笔记][Java7并发编程实战手册]系列目录 简介 newFixedThreadPool(int nThreads, ThreadFactory threadFactory) 创建一个可重用固定线程数的线程池,以共享的无界队列方式来运行这些线程,在需要时使用提供的 ThreadFactory 创建新线程. newCachedThreadPool()创建的线程池的特性是:自动回收不使用的线程(终止并从缓存中移除那些已有 60 秒钟未被使用的线程),(在无可用线程的情况下)自动的为新来的task创

[笔记][Java7并发编程实战手册]2.5使用Lock实现同步二

[笔记][Java7并发编程实战手册]系列目录 概要 接上一篇文章,练习修改锁的公平性,和在所中使用条件. 修改锁的公平性ReentrantLock /** *构造一个锁对象,默认为非公平锁 */ public ReentrantLock(boolean fair) { sync = fair ? new FairSync() : new NonfairSync(); } 根据ReentrantLock的构造可以看出来,默认会构造非公平锁: 公平锁与非公平锁有什么区别 公平锁 :有多个线程并发访