using System;

    using Microsoft.Xrm.Sdk;

    using Microsoft.Crm.Sdk.Messages;

    using Microsoft.Xrm.Sdk.Query;

/// <summary>

    /// 约会

    /// </summary>

    public class AppointmentHelper

    {

        public static readonly string entityName = "appointment";

        public Guid appointmentId = Guid.Empty;

        public IOrganizationService service;

/// <summary>

        /// 创建约会

        /// </summary>

        public void Create()

        {

            WhoAmIRequest userRequest = new WhoAmIRequest();

            WhoAmIResponse userResponse = (WhoAmIResponse)service.Execute(userRequest);

            Entity activitypartyEn = new Entity(){ LogicalName = "activityparty" };

            activitypartyEn["partyId"] = new EntityReference(){ LogicalName = "systemuser",Id = userResponse.UserId };

Entity en = new Entity() { LogicalName = entityName };

            en["subject"] = "约会測试";

            en["scheduledstart"] = DateTime.Now.AddHours(1);

            en["scheduledend"] = DateTime.Now.AddHours(2);

            en["location"] = "办公室";

            en["requiredattendees"] = new Entity[] { activitypartyEn };

            en["organizer"] = new Entity[] { activitypartyEn };

            appointmentId = service.Create(en);

        }

/// <summary>

        /// 向现有约会中加入定期信息,以使其成为定期主约会

        /// </summary>

        /// <param name="target">目标信息</param>

        public void AddRecurrence(Entity target)

        {

            AddRecurrenceRequest request = new AddRecurrenceRequest();

            request.AppointmentId = appointmentId;

            request.Target = target;

            AddRecurrenceResponse response = (AddRecurrenceResponse)service.Execute(request);

            Guid id = response.id;

        }

/// <summary>

        /// 将约会分派给其它用户或团队

        /// </summary>

        /// <param name="assignee">用户或团队引用</param>

        public void Assign(EntityReference assignee)

        {

            AssignRequest request = new AssignRequest();

            request.Target = new EntityReference() { LogicalName = entityName,Id = appointmentId };

            request.Assignee = assignee;

            AssignResponse response = (AssignResponse)service.Execute(request);

        }

/// <summary>

        /// 安排或预定约会

        /// </summary>

        public void Book()

        {

            BookRequest request = new BookRequest();

            request.Target = new Entity() { LogicalName = entityName,Id = appointmentId };

            BookResponse response = (BookResponse)service.Execute(request);

            ValidationResult validationResult = response.ValidationResult;

        }

/// <summary>

        /// 又一次安排约会

        /// </summary>

        public void Reschedule()

        {

            RescheduleRequest request = new RescheduleRequest();

            request.Target = new Entity() { LogicalName = entityName, Id = appointmentId };

            RescheduleResponse response = (RescheduleResponse)service.Execute(request);

            ValidationResult validationResult = response.ValidationResult;

        }

/// <summary>

        /// 删除约会

        /// </summary>

        public void Delete()

        {

            service.Delete(entityName, appointmentId);

        }

    }

crm操作约会实体的更多相关文章

  1. crm操作报价单实体

    using System;     using Microsoft.Xrm.Sdk;     using Microsoft.Crm.Sdk.Messages;     using Microsoft ...

  2. crm操作货币实体

    using System;     using Microsoft.Xrm.Sdk;     using Microsoft.Crm.Sdk.Messages; /// <summary> ...

  3. crm操作产品实体

    using System;     using Microsoft.Xrm.Sdk;     using Microsoft.Crm.Sdk.Messages; /// <summary> ...

  4. crm操作发票实体

    using System;     using Microsoft.Xrm.Sdk;     using Microsoft.Xrm.Sdk.Query;     using Microsoft.Cr ...

  5. Microsoft Dynamics CRM 2011 新建实体 需要注意的细节

    新建一个实体,需要红色框内的是否勾选的意义,可以进一步加深对CRM的理解.如图: 下面对部分的进行了自我的理解,不对的地方,还请大家指出来.互相学习. 1.CRM2011中,在活动方面加强的新特性包括 ...

  6. Hibernate_day02--课程安排_主键生成策略_对实体类crud操作_实体类对象状态

    Hibernate_day02 上节内容 今天内容 实体类编写规则 Hibernate主键生成策略 实体类操作 对实体类crud操作 添加操作 根据id查询 修改操作 删除操作 实体类对象状态(概念) ...

  7. crm操作知识库文章实体

    using System;     using Microsoft.Xrm.Sdk;     using Microsoft.Crm.Sdk.Messages;     using Microsoft ...

  8. crm操作销售订单实体

    using System;     using Microsoft.Xrm.Sdk;     using Microsoft.Xrm.Sdk.Query;     using Microsoft.Cr ...

  9. crm操作权限

    using System;     using Microsoft.Xrm.Sdk;     using Microsoft.Xrm.Sdk.Query;     using System.Colle ...

随机推荐

  1. 设计模式之建造者模式——Builder

    一.概述 Builder模式,中文名为建造者模式,又名生成器模式.构建者模式等,是创建型设计模式之一.用于将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. 1.适用性: 对象 ...

  2. appium+python自动化-adb shell按键操作(input keyevent)

    前言 接着上篇介绍input里面的按键操作keyevent事件,发送手机上常用的一些按键操作 keyevent 1.keyevent事件有一张对应的表,可以直接发送对应的数字,也可以方式字符串,如下两 ...

  3. 【编程工具】Sublime Text3的安装和常用插件推荐

    本人刚刚学习 HTML,曾经上网找过一些编写 HTML 的软件,但感觉都不太好,经过三挑四选下,最终我决定选择 Sublime Text3 这款软件来作为学习工具,上网找到了许多实用的插件,在这里给大 ...

  4. 九度oj 题目1536:树的最小高度

    题目描述: 给定一棵无向树, 我们选择不同的节点作为根节点时,可以得到不同的高度(即树根节点到叶子节点距离的最大值), 现在求这棵树可能的最低高度. 输入: 输入可能包含多个测试案例. 对于每个测试案 ...

  5. 转载:c++打印日志文件的一个模板

    转载地址:http://blog.csdn.net/huangyifei_1111/article/details/52134914 NetDataLog.h #ifndef NETDATALOG_H ...

  6. VS的一些错误解决方法记录

    1.errorC2664 "bool CMarkup::AddElem(MCD_CSTR,MCD_CSTR,int)":不能将参数1从“constchar [7]” 转换位&quo ...

  7. nmon性能分析工具(生成图表)

    1. nmon性能结果生成报告工具下载地址: https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Power% ...

  8. 能量项链(codevs 1154)

    题目描述 Description 在Mars星球上,每个Mars人都随身佩带着一串能量项链.在项链上有N颗能量珠.能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数.并且,对于相邻的两颗珠子 ...

  9. R语言入门视频笔记--2--一些简单的命令

    一.对象 1.列举当前内存中的对象 ls() 2.删除不需要的对象 rm(某对象名称) 3.查看向量长度 length(某向量名称) 4.查看向量类型 mode(某向量名称) 二.函数 1.seq函数 ...

  10. ubuntu下用webbench做网站压力测试

    安装依赖 exuberant-ctags sudo apt-get install exuberant-ctags 下载源码并安装 wget http://blog.s135.com/soft/lin ...