<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>NextEqualZero.com &#187; Functionality</title>
	<atom:link href="http://www.nextequalzero.com/category/functionality/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.nextequalzero.com</link>
	<description>A technical eye on Microsoft Dynamics NAV</description>
	<lastBuildDate>Fri, 05 Feb 2010 17:30:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Using Send-to functionality in a non V5 Dynamics NAV database</title>
		<link>http://www.nextequalzero.com/2008/03/using-send-to-functionality-in-a-non-v5-dynamics-nav-database/</link>
		<comments>http://www.nextequalzero.com/2008/03/using-send-to-functionality-in-a-non-v5-dynamics-nav-database/#comments</comments>
		<pubDate>Mon, 17 Mar 2008 20:32:54 +0000</pubDate>
		<dc:creator>Ian Crocker</dc:creator>
				<category><![CDATA[Functionality]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[XSLT]]></category>

		<guid isPermaLink="false">http://localhost:8888/nextequalzero/?p=9</guid>
		<description><![CDATA[If you&#8217;re running a database version prior to version 5, but using version 5 executables, you may be wondering if there is any way you can use the Send-to Microsoft Word/Excel functionality.
You probably clicked the shiny new Send to&#8230; buttons only to be dissapointed with the following error:

You&#8217;ll be pleased to know that there is a way [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re running a database version prior to version 5, but using version 5 executables, you may be wondering if there is any way you can use the Send-to Microsoft Word/Excel functionality.</p>
<p>You probably clicked the shiny new <strong>Send to&#8230;</strong> buttons only to be dissapointed with the following error:</p>
<p><a href="http://localhost:8888/nextequalzero/wp-content/uploads/2008/06/no-default-stylesheet.jpg"><img class="alignnone size-full wp-image-11" title="no-default-stylesheet" src="http://www.nextequalzero.com/wp-content/uploads/2008/06/no-default-stylesheet.jpg" alt="" width="407" height="133" /></a></p>
<p>You&#8217;ll be pleased to know that there is a way to get it working.</p>
<p><span id="more-23"></span><strong>Import the style sheet management objects</strong></p>
<p><span style="font-weight: normal;">From a clean version 5 Cronus database, export the following objects, then import into your target database:</span></p>
<ul>
<li>Form 690 Manage Style Sheets</li>
<li>Form 691 Send-to Programs</li>
<li>Form 692 Import Style Sheet</li>
<li>Form 693 Program Selection</li>
<li>Form 694 Style Sheets</li>
<li>Codeunit 403 Application Launch Management</li>
</ul>
<div>These objects will allow us to use the <strong>Manage Style Sheets</strong> functionality</div>
<h3><strong>Populate the Send-to Program table</strong></h3>
<p>Populate table 2000000065 Send-to Program with the following data:</p>
<pre>{00024500-0000-0000-C000-000000000046},EXCEL.EXE,%1,Microsoft Excel
{000209FF-0000-0000-C000-000000000046},WINWORD.EXE,%1,Microsoft Word</pre>
<h3>Modify Codeunit 1</h3>
<p>Copy and paste the following functions from Codeunit 1 in a version 5 database to your target database:</p>
<ul>
<li>LaunchApp</li>
<li>SelectStyleSheet</li>
<li>ManageStyleSheets</li>
<li>GetUidOffset</li>
</ul>
<h3>Copy the Stylesheets folder</h3>
<p>From the version 5 installation media, goto <code>CsideClient\program files\Microsoft Dynamics NAV\CSIDE Client</code> and copy the <strong>Stylsheets</strong> folder to you NAV installation location.</p>
<p>The folder contains the following <a title="What is XSLT?" href="http://en.wikipedia.org/wiki/XSL_Transformations">XSLT</a> files:</p>
<ul>
<li>ContactLetterToWord.xslt</li>
<li>CustomerLetterToWord.xslt</li>
<li>NavisionFormToExcel.xslt</li>
<li>NavisionFormToWord.xslt</li>
<li>SalesOrderConfirmationToWord.xslt</li>
<li>SalesQuoteToWord.xslt</li>
<li>VendorLetterToWord.xslt</li>
</ul>
<div>Now select <em>Tools, Manage Style Sheets</em> and follow the steps below to import the stylesheets.</div>
<h3>Import style sheets common to all forms</h3>
<p>Select <strong>Style sheets for this form only</strong></p>
<p>Select Form No. 21, Customer Card<br />
Select Functions, Import <br />
Select Microsoft Word as the Send-to Program<br />
Lookup in the Style Sheet field, browse for and select the <strong>CustomerLetterToWord.xslt</strong> file.</p>
<p>Select Form No. 26, Vendor Card<br />
Select Functions, Import <br />
Select Microsoft Word as the Send-to Program<br />
Lookup in the Style Sheet field, browse for and select the <strong>VendorLetterToWord.xslt</strong> file.</p>
<p>Select Form No. 41, Sales Quote<br />
Select Functions, Import <br />
Select Microsoft Word as the Send-to Program<br />
Lookup in the Style Sheet field, browse for and select the <strong>SalesQuoteToWord.xslt</strong> file.</p>
<p>Select Form No. 42, Sales Order<br />
Select Functions, Import <br />
Select Microsoft Word as the Send-to Program<br />
Lookup in the Style Sheet field, browse for and select the <strong>SalesOrderConfirmationToWord.xslt</strong> file.</p>
<p>Select Form No. 5050, Contact Card<br />
Select Functions, Import <br />
Select Microsoft Word as the Send-to Program<br />
Lookup in the Style Sheet field, browse for and select the <strong>ContactLetterToWord.xslt</strong> file.</p>
<h3>Test the changes</h3>
<p>Open a <strong>Sales Order</strong> and click the <strong>Send to Microsoft Office Word</strong> button on the toolbar to see your lovely new Send-to functionality in action.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nextequalzero.com/2008/03/using-send-to-functionality-in-a-non-v5-dynamics-nav-database/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>XML Stylesheets for Dynamics NAV: Adding Your Logo</title>
		<link>http://www.nextequalzero.com/2008/02/xml-stylesheets-for-dynamics-nav-adding-your-logo/</link>
		<comments>http://www.nextequalzero.com/2008/02/xml-stylesheets-for-dynamics-nav-adding-your-logo/#comments</comments>
		<pubDate>Tue, 12 Feb 2008 19:45:31 +0000</pubDate>
		<dc:creator>Ian Crocker</dc:creator>
				<category><![CDATA[Functionality]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[XSLT]]></category>

		<guid isPermaLink="false">http://localhost:8888/nextequalzero/?p=14</guid>
		<description><![CDATA[As we know, Microsoft Dynamics NAV 5.0 includes a new feature which allows you to export data from Dynamics NAV to other applications.
A number of stylesheets are provided with the product for use when exporting to Microsoft Office Word and Excel.
From a Sales Order for example, we can click the Send To Microsoft Office Word button and [...]]]></description>
			<content:encoded><![CDATA[<p>As we know, Microsoft Dynamics NAV 5.0 includes a new feature which allows you to export data from Dynamics NAV to other applications.</p>
<p>A number of stylesheets are provided with the product for use when exporting to Microsoft Office Word and Excel.</p>
<p>From a Sales Order for example, we can click the <strong>Send To Microsoft Office Word</strong> button and we get a nicely formatted Sales Order presented to us in Microsoft Word.</p>
<p><span id="more-21"></span></p>
<p><a href="http://localhost:8888/nextequalzero/wp-content/uploads/2008/06/wordorder_cronus.jpg"><img class="alignnone size-medium wp-image-15" title="wordorder_cronus" src="http://www.nextequalzero.com/wp-content/uploads/2008/06/wordorder_cronus-262x300.jpg" alt="" width="262" height="300" /></a></p>
<p>So what&#8217;s the first thing we are going to want to change?</p>
<p>That&#8217;s right, the logo.</p>
<p>We want it to show ours, or our customers lovely emblem instead.</p>
<p>Step forth the <a title="Creating XML Style Sheets for Data Export White Paper from Microsoft Dynamics NAV 5.0" href="https://mbs.microsoft.com/partnersource/documentation/whitepapers/msdynav50_xmlstylesheetsfordataexport_wp.htm?printpage=false">Creating XML Style Sheets for Data Export White Paper from Microsoft Dynamics NAV 5.0</a> techincal white paper available via PartnerSource.</p>
<p>This document contains a section titled <strong>Adding Your Logo to a Style Sheet</strong>.</p>
<p>Perfect you may think, until you follow the instructions to the letter and all you get is a placeholder where the image should be.</p>
<p>Why? Because there is an error in the white paper guide.</p>
<p>These are the steps quoted directly from the document:</p>
<ol>
<li>Open the customer card for customer number 10000 and click Send to Microsoft Office Word button to create a Word document using the <em>CustomerLetterToWord.xslt</em> style sheet.</li>
<li>In Word, replace the CRONUS logo with the appropriate logo. Save the document as XML.</li>
<li>Open the XML file with Visual Studio. Select the text that defines the logo graphic. This is the text between the w:bindata and /w:bindata tags. Copy the text.</li>
<li>Open the <em>CustomerLetterToWord.xslt</em> in Visual Studio. Select the text between the &lt;w:bindata&gt; and&lt; /w:bindata&gt; tags and paste.</li>
<li>Save the modified style sheet with a new name and import it into Microsoft Dynamics NAV, in the manage Style Sheets window.</li>
</ol>
<div>
<p>At first you think it may be related to the note which appears after step 4&#8230;</p>
<p>..No. Checked that. It still doesn&#8217;t work.</p>
<p>The reason is that in both steps 3 and 4 of the guide, the tags which are referenced should read &lt;<strong>w:pict&gt; </strong>and &lt;<strong>/w:pict&gt;</strong>.</p>
<p>Copy the text between these tags instead and you can marvel at your glorious logo:</p>
<p><a href="http://localhost:8888/nextequalzero/wp-content/uploads/2008/06/wordorder_revolution1210.jpg"><img class="alignnone size-medium wp-image-16" title="wordorder_revolution1210" src="http://www.nextequalzero.com/wp-content/uploads/2008/06/wordorder_revolution1210-262x300.jpg" alt="" width="262" height="300" /></a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.nextequalzero.com/2008/02/xml-stylesheets-for-dynamics-nav-adding-your-logo/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>License Agreement Acceptance in Dynamics NAV 5.0</title>
		<link>http://www.nextequalzero.com/2007/10/license-agreement-acceptance-in-dynamics-nav-50/</link>
		<comments>http://www.nextequalzero.com/2007/10/license-agreement-acceptance-in-dynamics-nav-50/#comments</comments>
		<pubDate>Sun, 07 Oct 2007 21:15:12 +0000</pubDate>
		<dc:creator>Ian Crocker</dc:creator>
				<category><![CDATA[Functionality]]></category>
		<category><![CDATA[Implementation]]></category>
		<category><![CDATA[Licensing]]></category>

		<guid isPermaLink="false">http://localhost:8888/nextequalzero/?p=33</guid>
		<description><![CDATA[Stumbled upon some interesting functionality new to Dynamics NAV 5.0 whilst I was looking at something completely unrelated in Codeunit 1.
The functionality allows you to have your end user digitally sign an end user license or go-live sign off agreement before opening a &#8216;live&#8217; company.

To set this up you must run Form 180 from Object Designer. The License Agreement [...]]]></description>
			<content:encoded><![CDATA[<p>Stumbled upon some interesting functionality new to Dynamics NAV 5.0 whilst I was looking at something completely unrelated in <code>Codeunit 1</code>.</p>
<p>The functionality allows you to have your end user digitally sign an end user license or go-live sign off agreement before opening a &#8216;live&#8217; company.</p>
<p><span id="more-14"></span></p>
<p>To set this up you must run <code>Form 180</code> from Object Designer. The <code>License Agreement Setup Card</code> will be shown:</p>
<p><a href="http://www.nextequalzero.com/wp-content/uploads/2008/07/f_180_license_agreement_setup.png"><img class="alignnone size-full wp-image-36" title="f_180_license_agreement_setup" src="http://www.nextequalzero.com/wp-content/uploads/2008/07/f_180_license_agreement_setup.png" alt="" width="275" height="203" /></a></p>
<p>You can enter a message which will be presented to the user in the <code><em>Message for Accepting</em></code> field and a date from which the agreement is effective in the <code><em>Effective Date</em></code> field &#8211; this would be your go-live date.</p>
<p>On opening the &#8216;Live&#8217; company, or any company which doesn&#8217;t contain the word CRONUS, the user will be presented with the <code>License Agreement Accept</code> window:</p>
<p><a href="http://www.nextequalzero.com/wp-content/uploads/2008/07/f_181_license_agreement_accept_01.png"><img class="alignnone size-full wp-image-37" title="f_181_license_agreement_accept_01" src="http://www.nextequalzero.com/wp-content/uploads/2008/07/f_181_license_agreement_accept_01.png" alt="" width="275" height="210" /></a></p>
<p>The user must then tick the <code><em>Accepted</em></code> check box or click the <code>Accept</code> button before being allowed into the database to signify that they agree with the terms of the eula.</p>
<p><a href="http://www.nextequalzero.com/wp-content/uploads/2008/07/f_181_license_agreement_accept_02.png"><img class="alignnone size-full wp-image-38" title="f_181_license_agreement_accept_02" src="http://www.nextequalzero.com/wp-content/uploads/2008/07/f_181_license_agreement_accept_02.png" alt="" width="275" height="210" /></a></p>
<p>The hyperlink styled command button with blue text opens the <code>eula.rtf</code> file in the NAV client folder. On push, a call to the <code>ShowEULA()</code> function which sits in table 140 License Agreement is made:</p>
<div class="geshi no pascal">
<div class="head">HYPERLINK(STRSUBSTNO(&#39;%1%2&#39;,APPLICATIONPATH,Text001));</pre>
</div>
<ol>
<li class="li1">
<div class="de1">This could be changed <span class="kw1">to</span> point towards your own sign-off document <span class="kw1">if</span> required.</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="me1">The</span> code responsible <span class="kw1">for</span> handling the licence acceptance is <span class="kw1">in</span> the &lt;code&gt;LogInStart<span class="br0">&#40;</span><span class="br0">&#41;</span>&lt;/code&gt; <span class="kw2">function</span> <span class="kw1">in</span> &lt;code&gt;Codeunit <span class="nu0">1</span>&lt;/code&gt;:</div>
</li>
<li class="li1">
<div class="de1">&lt;pre lang=<span class="st0">&quot;pascal&quot;</span>&gt;IF <span class="br0">&#40;</span>STRPOS<span class="br0">&#40;</span>COMPANYNAME,Text000<span class="br0">&#41;</span> &amp;lt; <span class="nu0">1</span><span class="br0">&#41;</span> <span class="kw3">AND</span> LicenseAgreement.<span class="kw3">GET</span> <span class="kw1">THEN</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">IF</span> <span class="br0">&#40;</span>TODAY &amp;gt;= LicenseAgreement.<span class="st0">&quot;Effective Date&quot;</span><span class="br0">&#41;</span> <span class="kw3">AND</span> <span class="kw1">NOT</span> LicenseAgreement.<span class="me1">Accepted</span> <span class="kw1">THEN</span> <span class="kw1">BEGIN</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; FORM.<span class="me1">RUNMODAL</span><span class="br0">&#40;</span>FORM::<span class="st0">&quot;License Agreement Accept&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; LicenseAgreement.<span class="kw3">GET</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">IF</span> <span class="kw1">NOT</span> LicenseAgreement.<span class="me1">Accepted</span> <span class="kw1">THEN</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; MESSAGE<span class="br0">&#40;</span>Text019<span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">END</span> <span class="kw1">ELSE</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">IF</span> TODAY &amp;lt; LicenseAgreement.<span class="st0">&quot;Effective Date&quot;</span> <span class="kw1">THEN</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; MESSAGE<span class="br0">&#40;</span>Text020,LicenseAgreement.<span class="st0">&quot;Effective Date&quot;</span><span class="br0">&#41;</span>;</div>
</li>
</ol>
</div>
<p>Although, the user can still gain access to the database should they choose not to accept the eula, a dialog will be shown informing them that the agreement has not been signed and they will be greeted with the license acceptance form each time they open a non-CRONUS company in the database.</p>
<p>Part of this same functionality will also warn the user of the inteded Go Live date if they open a non-CRONUS company before the date defined in the Effective Date field on the License Agreement Setup Card:</p>
<p><a href="http://www.nextequalzero.com/wp-content/uploads/2008/07/golive_dialog.png"><img class="alignnone size-full wp-image-39" title="golive_dialog" src="http://www.nextequalzero.com/wp-content/uploads/2008/07/golive_dialog.png" alt="" width="218" height="126" /></a></p>
<p>I don't think Microsoft have finished working on this fully yet as I did notice some commented code behind the Accept button:</p>
<p><a href="http://www.nextequalzero.com/wp-content/uploads/2008/07/f_181_license_agreement_design.png"><img class="alignnone size-full wp-image-40" title="f_181_license_agreement_design" src="http://www.nextequalzero.com/wp-content/uploads/2008/07/f_181_license_agreement_design.png" alt="" width="275" height="218" /></a></p>
<div class="geshi no pascal">
<div class="head">VALIDATE(Accepted,TRUE);</div>
<ol>
<li class="li1">
<div class="de1">CurrForm.<span class="me1">UPDATE</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//CurrForm.CLOSE;</span></div>
</li>
</ol>
</div>
<p>I supose they've just not decided if clicking the Accept button should close the form or not. Or maybe they're just leaving it up to us.</p>
<p>I've tested the whole process and it does offer quite a neat way to get a digital sign-off on go-live day.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nextequalzero.com/2007/10/license-agreement-acceptance-in-dynamics-nav-50/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
