<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>CRM</title>
        <link>http://geekswithblogs.net/shauryaanand/category/6895.aspx</link>
        <description>CRM</description>
        <language>en-US</language>
        <copyright>Shaurya Anand</copyright>
        <managingEditor>shauryaanand@hotmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <creativeCommons:license>http://creativecommons.org/licenses/by-nc/3.0/</creativeCommons:license>
        <item>
            <title>Converting DateTime to CrmDateTime</title>
            <link>http://geekswithblogs.net/shauryaanand/archive/2007/07/27/114220.aspx</link>
            <description>&lt;p&gt;It is sometime necessary to convert &lt;strong&gt;CrmDateTime&lt;/strong&gt; type field to &lt;strong&gt;DateTime&lt;/strong&gt; type field and vice versa so that the date and time operations are done swiftly. I happen to have felt this necessity today and wrote this function that converts &lt;strong&gt;DateTime&lt;/strong&gt; To &lt;strong&gt;CrmDateTime&lt;/strong&gt;:&lt;/p&gt;
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;public&lt;/span&gt; CrmDateTime ConvertToCRMDateTime(DateTime dateTime)&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;{&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;    CrmDateTime crmDateTime = &lt;span class="kwrd"&gt;new&lt;/span&gt; CrmDateTime();&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;    crmDateTime.date = dateTime.ToShortDateString();&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;    crmDateTime.time = dateTime.ToShortTimeString();&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;    TimeSpan offset = TimeZone.CurrentTimeZone.GetUtcOffset(dateTime);&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;    &lt;span class="kwrd"&gt;string&lt;/span&gt; sOffset = &lt;span class="kwrd"&gt;string&lt;/span&gt;.Empty;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;    &lt;span class="kwrd"&gt;if&lt;/span&gt; (offset.Hours &amp;lt; 0)&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;    {&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;        sOffset = &lt;span class="str"&gt;"-"&lt;/span&gt; + (offset.Hours * -1).ToString().PadLeft(2, &lt;span class="str"&gt;'0'&lt;/span&gt;);&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;    }&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;    &lt;span class="kwrd"&gt;else&lt;/span&gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;    {&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;        sOffset = &lt;span class="str"&gt;"+"&lt;/span&gt; + offset.Hours.ToString().PadLeft(2, &lt;span class="str"&gt;'0'&lt;/span&gt;);&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;    }&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;    sOffset += offset.Minutes.ToString().PadLeft(2, &lt;span class="str"&gt;'0'&lt;/span&gt;);&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;    crmDateTime.Value = dateTime.ToString(&lt;span class="kwrd"&gt;string&lt;/span&gt;.Format(&lt;span class="str"&gt;"yyyy-MM-ddTHH:mm:ss{0}"&lt;/span&gt;, sOffset));&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;  18:  &lt;/span&gt;    &lt;span class="kwrd"&gt;return&lt;/span&gt; crmDateTime;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  19:  &lt;/span&gt;}        &lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;To get &lt;strong&gt;DateTime&lt;/strong&gt; from &lt;strong&gt;CrmDateTime&lt;/strong&gt;, one can use the &lt;strong&gt;Convert.ToDateTime&lt;/strong&gt; method:&lt;/p&gt;
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;DateTime tempNextDeliveryDate = CalculateNextDeliveryDate(Convert.ToDateTime(acc.ace_datumletztelieferung.date), acc.ace_lieferzyklus.Value);&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;
&lt;/p&gt;&lt;style type="text/css"&gt;&lt;![CDATA[csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }
]]&gt;&lt;/style&gt;

&lt;p&gt;To learn about how CrmDateTime stores the date &amp;amp; time refer: &lt;a href="http://msdn2.microsoft.com/en-us/library/aa613549.aspx" target="_blank"&gt;http://msdn2.microsoft.com/en-us/library/aa613549.aspx&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/shauryaanand/aggbug/114220.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Shaurya Anand</dc:creator>
            <guid>http://geekswithblogs.net/shauryaanand/archive/2007/07/27/114220.aspx</guid>
            <pubDate>Fri, 27 Jul 2007 15:30:04 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/shauryaanand/comments/114220.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/shauryaanand/archive/2007/07/27/114220.aspx#feedback</comments>
            <slash:comments>6</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/shauryaanand/comments/commentRss/114220.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/shauryaanand/services/trackbacks/114220.aspx</trackback:ping>
        </item>
    </channel>
</rss>
