一、查询用户和团队

插入的类型:OwnerIdType 可以为用户或团队:

1.团队: select top 1 ObjectTypeCode from metadataschema.entity where logicalname='team'     结果为:8

2.用户: select top 1 ObjectTypeCode from metadataschema.entity where logicalname='systemuser'    结果为:9

二、CRM的一个实体(比如为new_entity,)是用两个表组成的,分别为new_entityBase(基本表)和new_entityExtensionBase(扩充基本表),new_entity 在数据库里面是以视图形式存在的。

对new_entity实体增删改操作,需要考虑事物,要么都成功,一个失败那边都失败。

SQL 新建一条记录: 先 insert into new_entityBase           后 insert into new_entityExtensionBase

SQL 删除一条记录: 先insert into new_entityExtensionBase 后  insert into new_entityBase

SQL 修改一条记录:update new_entityExtensionBase 就可以了

三、常见SQL处理方法

1.金额取小数点后两位:CAST(金额字段名 as decimal(20,2)) as Price  也可以用C#代码处理 String.Format("{0:f}","金额值"),个人建议用sql语句处理

2.取数据字段类型为两个选项,选项集 可以用 :

(select Value from StringMap S where AttributeName='字段名' and ObjectTypeCode = (select ObjectTypeCode from MetadataSchema.Entity
where LogicalName='实体名' and LangId='语言编码(比如中文2052)' and AttributeValue=a.字段名))

3. 获取TransactionCurrencyId : select TransactionCurrencyId from transactioncurrencyBase where ISOCurrencyCode = 'CNY'

获取ExchangeRate(汇率):select ExchangeRate from transactioncurrencyBase where ISOCurrencyCode='CNY'

4. 如果CRM的基础货币会变化,修改或新增金额的时候,需要金额除汇率,比如: isnull(金额字段的值,0.00)/(select ExchangeRate from transactioncurrencyBase where ISOCurrencyCode='CNY')

5.获取时间  case when A.new_purchasedate is null then null else convert(varchar(10),DATEADD(hh, 8, 时间字段值),111) end as 时间1

说明:查询: DATEADD(HOUR,8,ph.CreatedOn) as CreateDate在基础上加8个小时

修改: DATEADD(HOUR,-8,GETUTCDATE()), 在基础上减去8个小时

C#代码格式化时间 String.Format("{0:yyyy/MM/dd HH:mm:ss}", "时间字段值"); 这里需要yyyy/MM/dd HH:mm:ss(一般是用这个,24小时制) 和yyyy/MM/dd (12小时制)hh:mm:ss 是有区别的。

Microsoft Dynamics CRM 2011 中 SQL 语句总结的更多相关文章

  1. Microsoft Dynamics CRM 2011的组织服务中的RetrieveMultiple方法(转)

    本篇文章,介绍Microsoft Dynamics CRM 2011的组织服务中的RetrieveMultiple方法. RetreiveMultiple方法,用于获取实体的多个实例,该方法的签名如下 ...

  2. Microsoft Dynamics CRM 2011 当您在 大型数据集上执行 RetrieveMultiple 查询很慢的解决方法

    症状 当您在 Microsoft Dynamics CRM 2011 年大型数据集上执行 RetrieveMultiple 查询时,您会比较慢. 原因 发生此问题是因为大型数据集缓存 Retrieve ...

  3. Microsoft Dynamics CRM 2011 安装完全教程

    作者:卞功鑫,转载请保留.http://www.cnblogs.com/BinBinGo/p/4302612.html 环境介绍 WINDOWS 2008 R2 Datacenter Microsof ...

  4. How to control PrincipalObjectAccess table growth in Microsoft Dynamics CRM 2011

    https://support.microsoft.com/en-us/kb/2664150 How to control PrincipalObjectAccess table growth in ...

  5. Microsoft Dynamics CRM 2011 相关-摘自网络

    Microsoft Dynamics CRM Server 2011硬件需求: 组件 *最低要求 *推荐配置 处理器 x64 体系结构或兼容的双核 1.5 GHz 处理器 四核 x64 体系结构 2 ...

  6. Dynamices CRM JS 类库 神器 XrmServiceToolkit - A Microsoft Dynamics CRM 2011 & CRM 2013 JavaScript Library

    XrmServiceToolkit - A Microsoft Dynamics CRM 2011 & CRM 2013 JavaScript Library http://xrmservic ...

  7. Error message “Assembly must be registered in isolation” when registering Plugins in Microsoft Dynamics CRM 2011 2013 解决办法

    Error message “Assembly must be registered in isolation” when registering Plugins in Microsoft Dynam ...

  8. 转:JavaScript Reference for Microsoft Dynamics CRM 2011 / 2013

    JavaScript Reference for Microsoft Dynamics CRM 2011 / 2013 98 Replies Here’s a quick reference guid ...

  9. Microsoft Dynamics CRM4.0 和 Microsoft Dynamics CRM 2011 JScript 方法对比

    CRM 2011 如果需要再IE里面调试,可以按F12在前面加上contentIFrame,比如 contentIFrame.document.getElementById("字段" ...

随机推荐

  1. @RequiresPermissions ,@RequiresUser , @RequiresGuest ,@RequiresRoles 解释

    转载地址:https://blog.csdn.net/AinUser/article/details/64920968?locationNum=1&fps=1 @RequiresPermiss ...

  2. Jena解析rdf、nt、ttl格式数据

    比如有一个ttl格式的文件名为cco.ttl package com.jena; import java.io.InputStream; import com.hp.hpl.jena.rdf.mode ...

  3. slice,Array.prototype.slice,Array.protyotype.slice.call

    slice 特点:基于当前数组中的一或多个项创建一个新数组.[原数组不会被修改] 返回结果:返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象. 语法: arr.slice() ...

  4. SharePoint 用户配置文件服务

    1. 获取用户配置文件服务应用程序标识 Get-SPServiceApplication 2. 获取指定的用户配置文件服务应用程序实例 $profileSA = Get-SPServiceApplic ...

  5. 写在连载之前——DIY微型操作系统篇

    这个博客开了这么久都没写过什么东西.可能是因为我想写的东西在网上都能找得到,所以自己也懒得去写了. 但是这次当我在看<30天自制操作系统>这本书的时候发现,如果不用作者原版的光盘软件,要自 ...

  6. jquery 实现内容的级联选取

  7. vue-cli 添加到生产环境问题总结

    1. 路径问题  部署到生产环境后的实际链接为:   服务器项目路径 + serviceUrl的路径  创建 GlobalConstant.js  分别配置 开发环境和生产环境的 路径  (注:此处生 ...

  8. iOS 序列化和反序列化

    摘自:http://hi.baidu.com/popln/blog/item/c3dd9302bb37e994d43f7ccb.html 开篇 1到底这个序列化有啥作用? 面向对象的程序在运行的时候会 ...

  9. 6.1 socket 长连接、短连接

    一般情况下,服务器的长连接和短连接不是服务器说了算,而是客户端说了算.因为服务器是给别人提供业务的,一旦连接建立起来之后,服务器端不会主动把连接给close掉. 客户端发送一笔业务,没有关闭连接,然后 ...

  10. 【linux】如何退出shell终端

    退出shell终端: exit + 回车即可 清除当前屏幕信息 clear 不过clear只是将之前的命令向上隐藏啦...