<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:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Commerce Server</title>
        <link>http://blogs.interakting.co.uk/steve/category/62.aspx</link>
        <description>Microsoft Commerce Server (all recent versions)</description>
        <language>en-GB</language>
        <copyright>Stephen Horsfield</copyright>
        <managingEditor>stephen.horsfield@interakting.co.uk</managingEditor>
        <generator>Subtext Version 1.9.5.177</generator>
        <item>
            <title>Windows: Disabling Data Execution Prevention</title>
            <link>http://blogs.interakting.co.uk/steve/archive/2008/01/08/Microsoft-Windows-Disabling-Data-Execution-Prevention.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Overview&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Sometimes, old code doesn't seem to work with the new Data Execution Prevention feature in Microsoft Windows.  It's easy to turn it off for non-system applications and services, but how do you do it for system components, and why would you?&lt;/p&gt;
&lt;p&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Warning: Data Execution Prevention is a security feature.  Disabling DEP reduces the security of your system.&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Context&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;On our Microsoft &lt;a title="Microsoft Commerce Server" target="_blank" href="http://www.microsoft.com/commerceserver/default.mspx"&gt;Commerce Server&lt;/a&gt; 2002 system, running on &lt;a title="Microsoft Windows Server 2003" target="_blank" href="http://www.microsoft.com/windowsserver2003/default.mspx"&gt;Windows Server 2003&lt;/a&gt;, we were getting "COM Surrogate" errors, which relate to DEP errors with the &lt;em&gt;dllhost.exe&lt;/em&gt; system program.  Adding it to the exception list didn't solve our problem.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Thankfully, Microsoft has written an article on how to turn off DEP for an entire server.  For this case, you need to add the following option:&lt;/p&gt;
&lt;code&gt;/noexecute=AlwaysOff&lt;/code&gt;
&lt;p&gt;to your &lt;em&gt;boot.ini&lt;/em&gt; file.&lt;/p&gt;
&lt;p&gt;See &lt;a title="http://support.microsoft.com/kb/875352" target="_blank" href="http://support.microsoft.com/kb/875352"&gt;A detailed description of the Data Execution Prevention (DEP) feature in Windows XP Service Pack 2, Windows XP Tablet PC Edition 2005, and Windows Server 2003 (Microsoft Support)&lt;/a&gt; for further information.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Versions&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Microsoft &lt;a title="Microsoft Windows Server 2003" target="_blank" href="http://www.microsoft.com/windowsserver2003/default.mspx"&gt;Windows Server 2003&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;Microsoft &lt;a title="Microsoft Commerce Server" target="_blank" href="http://www.microsoft.com/commerceserver/default.mspx"&gt;Commerce Server&lt;/a&gt; 2002 &lt;/li&gt;
    &lt;li&gt;Also applicable to Microsoft Windows XP &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Metadata&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Categories: IT Management, Security, Windows Server, Commerce Server &lt;/li&gt;
    &lt;li&gt;Additional keywords: how to turn off DEP, disable DEP &lt;/li&gt;
&lt;li&gt;Technorati Tags: 
&lt;a href="http://technorati.com/tags/IT%20Management" rel="tag"&gt;IT Management&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/Windows" rel="tag"&gt;Windows&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/Windows%202003" rel="tag"&gt;Windows 2003&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/problem" rel="tag"&gt;problem&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/DEP" rel="tag"&gt;DEP&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/Data%20Execution%20Prevention" rel="tag"&gt;Data Execution Prevention&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/Commerce%20Server" rel="tag"&gt;Commerce Server&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://blogs.interakting.co.uk/steve/aggbug/147.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Stephen Horsfield</dc:creator>
            <guid>http://blogs.interakting.co.uk/steve/archive/2008/01/08/Microsoft-Windows-Disabling-Data-Execution-Prevention.aspx</guid>
            <pubDate>Tue, 08 Jan 2008 15:10:56 GMT</pubDate>
            <wfw:comment>http://blogs.interakting.co.uk/steve/comments/147.aspx</wfw:comment>
            <comments>http://blogs.interakting.co.uk/steve/archive/2008/01/08/Microsoft-Windows-Disabling-Data-Execution-Prevention.aspx#feedback</comments>
            <wfw:commentRss>http://blogs.interakting.co.uk/steve/comments/commentRss/147.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Commerce Server 2002: BizDesk Campaign Manager Fails with &amp;quot;Call to Server.CreateObject Failed While Checking Permissions&amp;quot; Error Message</title>
            <link>http://blogs.interakting.co.uk/steve/archive/2008/01/08/Commerce-Server-2002-BizDesk-Campaign-Manager-Fails-with-quotCall-to.aspx</link>
            <description>&lt;h4&gt;&lt;a title="The article" rel="enclosure" href="http://blogs.bdnet.co.uk/steve/archive/2008/01/08/Commerce-Server-2002-BizDesk-Campaign-Manager-Fails-with-Call-to.aspx"&gt;Read the article...&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Excerpt&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The above error was occurring on both staging and live environments for a Microsoft &lt;a title="Microsoft Commerce Server" target="_blank" href="http://www.microsoft.com/commerceserver/default.mspx"&gt;Commerce Server&lt;/a&gt; 2002 system.  It took us a while to track down the cause, but eventually I fixed it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;References&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;811306"&gt;Microsoft KB Article 811306&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Versions&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Microsoft &lt;a title="Microsoft Windows Server 2003" target="_blank" href="http://www.microsoft.com/windowsserver2003/default.mspx"&gt;Windows Server 2003&lt;/a&gt; &lt;/li&gt;
    &lt;li&gt;Microsoft &lt;a title="Microsoft Commerce Server" target="_blank" href="http://www.microsoft.com/commerceserver/default.mspx"&gt;Commerce Server&lt;/a&gt; 2002 &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Metadata&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Technorati Tags: &lt;a rel="tag" href="http://technorati.com/tags/IT%20Management"&gt;IT Management&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tags/Windows"&gt;Windows&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tags/Windows%202003"&gt;Windows 2003&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tags/problem"&gt;problem&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tags/Commerce%20Server"&gt;Commerce Server&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://blogs.interakting.co.uk/steve/aggbug/146.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Stephen Horsfield</dc:creator>
            <guid>http://blogs.interakting.co.uk/steve/archive/2008/01/08/Commerce-Server-2002-BizDesk-Campaign-Manager-Fails-with-quotCall-to.aspx</guid>
            <pubDate>Tue, 08 Jan 2008 12:44:33 GMT</pubDate>
            <wfw:comment>http://blogs.interakting.co.uk/steve/comments/146.aspx</wfw:comment>
            <comments>http://blogs.interakting.co.uk/steve/archive/2008/01/08/Commerce-Server-2002-BizDesk-Campaign-Manager-Fails-with-quotCall-to.aspx#feedback</comments>
            <wfw:commentRss>http://blogs.interakting.co.uk/steve/comments/commentRss/146.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Commerce Server 2002: Reporting — Query Best Practice</title>
            <link>http://blogs.interakting.co.uk/steve/archive/2008/01/07/Microsoft-Commerce-Server-2002-Reporting-Query-Best-Practice.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Overview&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;How can you make your &lt;a title="Microsoft Commerce Server" target="_blank" href="http://www.microsoft.com/commerceserver/default.mspx"&gt;Commerce Server&lt;/a&gt; reports easy to maintain, and how can you make it work with long SQL queries?  Did you even know that long SQL queries won't always work?!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The problem&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The query is stored in the Report table in &lt;a title="Microsoft SQL Server" target="_blank" href="http://www.microsoft.com/sql/default.mspx"&gt;SQL Server&lt;/a&gt; as an nvarchar(2000) field.  This means you've only got 2000 characters to work with.  In fact, the limit is smaller than this because of processing that &lt;a title="Microsoft Commerce Server" target="_blank" href="http://www.microsoft.com/commerceserver/default.mspx"&gt;Commerce Server&lt;/a&gt; is doing itself.  I noticed problems around 900 characters, which seems a bit small!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The solution&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The best solution I found was to reference a SQL view that was created for the purpose.  Using this, the SQL query just needed to select the particular fields, apply particular filters (such as date filtering) and sorting.  This meant that changes to the underlying report execution could be managed by adjusting the view rather than the SQL in the Report table.  The view can also be used by many similar reports, which in our case was for about 10 regional sites.&lt;/p&gt;
&lt;p&gt;One main caveat was the use of &lt;a title="Microsoft Commerce Server" target="_blank" href="http://www.microsoft.com/commerceserver/default.mspx"&gt;Commerce Server&lt;/a&gt; date report parameters.  The filtering on this only worked when it was in the Report Query field directly.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Versions&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Microsoft &lt;a title="Microsoft Commerce Server" target="_blank" href="http://www.microsoft.com/commerceserver/default.mspx"&gt;Commerce Server&lt;/a&gt; 2002 &lt;/li&gt;
    &lt;li&gt;Microsoft &lt;a title="Microsoft SQL Server" target="_blank" href="http://www.microsoft.com/sql/default.mspx"&gt;SQL Server&lt;/a&gt; 2000 &lt;/li&gt;
    &lt;li&gt;Microsoft &lt;a title="Microsoft Windows Server 2003" target="_blank" href="http://www.microsoft.com/windowsserver2003/default.mspx"&gt;Windows Server 2003&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Metadata&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Technorati Tags: 
&lt;a href="http://technorati.com/tags/software%20development" rel="tag"&gt;software development&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/Windows" rel="tag"&gt;Windows&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/Windows%202003" rel="tag"&gt;Windows 2003&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/Commerce%20Server" rel="tag"&gt;Commerce Server&lt;/a&gt;
&lt;a href="http://technorati.com/tags/SQL" rel="tag"&gt;SQL&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/SQL%20Server" rel="tag"&gt;SQL Server&lt;/a&gt;,
&lt;a href="http://technorati.com/tags/reporting" rel="tag"&gt;reporting&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;img src="http://blogs.interakting.co.uk/steve/aggbug/144.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Stephen Horsfield</dc:creator>
            <guid>http://blogs.interakting.co.uk/steve/archive/2008/01/07/Microsoft-Commerce-Server-2002-Reporting-Query-Best-Practice.aspx</guid>
            <pubDate>Mon, 07 Jan 2008 19:41:55 GMT</pubDate>
            <wfw:comment>http://blogs.interakting.co.uk/steve/comments/144.aspx</wfw:comment>
            <comments>http://blogs.interakting.co.uk/steve/archive/2008/01/07/Microsoft-Commerce-Server-2002-Reporting-Query-Best-Practice.aspx#feedback</comments>
            <wfw:commentRss>http://blogs.interakting.co.uk/steve/comments/commentRss/144.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>