<?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>Quick - Qlear - Qool</title>
	<atom:link href="http://www.quickqlearqool.nl/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.quickqlearqool.nl</link>
	<description>it's all about QlikView</description>
	<lastBuildDate>Sun, 22 Jan 2012 17:32:30 +0000</lastBuildDate>
	<language>nl-NL</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4</generator>
		<item>
		<title>DTAP deployment with common script</title>
		<link>http://www.quickqlearqool.nl/?p=1278</link>
		<comments>http://www.quickqlearqool.nl/?p=1278#comments</comments>
		<pubDate>Thu, 19 Jan 2012 07:56:13 +0000</pubDate>
		<dc:creator>Bas</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Common script]]></category>
		<category><![CDATA[Deployment]]></category>
		<category><![CDATA[DTAP]]></category>
		<category><![CDATA[include]]></category>
		<category><![CDATA[qlikview 10]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1278</guid>
		<description><![CDATA[When I develop a QlikView app I use datasources that are local on my PC. For instance my local SQL Server instance has a shrunken copy of the production database. When I deploy the QlikView app to Test I want it to use the datasources that are on the Test machine. When I deploy to [...]]]></description>
			<content:encoded><![CDATA[<p>When I develop a QlikView app I use datasources that are local on my PC. For instance my local SQL Server instance has a shrunken copy of the production database. When I deploy the QlikView app to Test I want it to use the datasources that are on the Test machine. When I deploy to Acceptance I want to use the acceptance datasources and of course in Production the real datasources have to be used.</p>
<p>This article describes how I cope with the DTAP (Development, Test, Acceptance, Production) environments in QlikView.<span id="more-1278"></span> It will show how you can move your app from one environment to the next without changing anything to the app and without being dependent on the file structure of the server you are deploying to. It can also help you if you are working on a single QlikView app with multiple developers.</p>
<p>I achieve this by creating a registry entry that holds the path of a common script. This common script can contain anything, but I use it for my connections and common procedures. The registry entry is read in the QlikView app, where the common script is included. The figure below shows a graphical representation of the steps.</p>
<div id="attachment_1312" class="wp-caption alignnone" style="width: 421px"><a href="http://www.quickqlearqool.nl/wp-content/uploads/2012/01/Include_flow.jpg"><img class="size-full wp-image-1312" src="http://www.quickqlearqool.nl/wp-content/uploads/2012/01/Include_flow.jpg" alt="" width="411" height="123" /></a><p class="wp-caption-text">Figure 1</p></div>
<p>&nbsp;</p>
<p>So why do I use a registry setting to point to the file and don&#8217;t include a direct link to the file in the QlikView app? For me it seems a realistic possibility that someday you might decide to change the location of your common script. By not referring to the path of the common script directly from your QlikView app you will always have the opportunity to do so.</p>
<p>Let&#8217;s start off by creating our common script. Create a text file with the following content and save it as <em>C:\Common.qvs</em>.</p>
<p><span style="color: #808080;">// Make a connection to the datasource</span><br />
<strong>SUB</strong> <strong>ConnectToDatasource</strong>(<strong>datasource</strong>)</p>
<p><strong>IF</strong> datasource = &#8216;First&#8217; THEN<br />
<strong>LOAD</strong> MsgBox(&#8216;Connected to datasource &#8220;First&#8221;&#8216;, &#8216;SUB ConnectToDatasource&#8217;, &#8216;OK&#8217;, &#8216;ICONHAND&#8217;) AutoGenerate 1;<br />
<span style="color: #808080;">// ODBC CONNECT TO DS1 (XUserId is HEXKBHwKBaQYUCZJ, XPassword is UUTSWXUOBeYRWQdJ);</span><br />
<span style="color: #808080;"> </span><strong>EXIT</strong> SUB<br />
<strong>ENDIF</strong></p>
<p><strong>IF</strong> datasource = &#8216;Second&#8217; THEN<br />
<strong>LOAD</strong> MsgBox(&#8216;Connected to datasource &#8220;First&#8221;&#8216;, &#8216;SUB ConnectToDatasource&#8217;, &#8216;OK&#8217;, &#8216;ICONHAND&#8217;) AutoGenerate 1;<br />
<span style="color: #808080;">// OLEDB CONNECT TO [Provider=SQLOLEDB.1;Initial Catalog=Second;Data Source=DEVELOPMENT];</span><br />
<span style="color: #808080;"> </span><strong>EXIT</strong> SUB<br />
<strong>ENDIF</strong></p>
<p><span style="color: #999999;">// This line should only be reached if the datasource that was provided cannot be found. This means</span><br />
<span style="color: #999999;">// that it is not possible to make a connection.</span><br />
<strong>LOAD</strong> MsgBox(&#8216;Failed to locate the correct datasource: $(datasource)&#8217;, &#8216;SUB ConnectToDatasource&#8217;, &#8216;OK&#8217;, &#8216;ICONHAND&#8217;) AutoGenerate 1;<br />
<strong>ENDSUB</strong></p>
<p>The common script file contains a single procedure that can connect to two datasources: First and Second. Because of this demo I have replace the actual connection strings with messageboxes. So when we are using this in our QlikView app, connecting to a datasource will show us a messagebox that informs us to which one we have connected.</p>
<p>The second step is to create a registry entry. Start the Registry Editor by going to <em>Start </em>– <em>Run&#8230;</em> and type in <em>regedit </em>(figure 2).</p>
<div id="attachment_1281" class="wp-caption alignnone" style="width: 310px"><a href="http://www.quickqlearqool.nl/wp-content/uploads/2012/01/Run_regedit.jpg"><img class="size-medium wp-image-1281 " src="http://www.quickqlearqool.nl/wp-content/uploads/2012/01/Run_regedit-300x154.jpg" alt="Run regedit" width="300" height="154" /></a><p class="wp-caption-text">Figure 2: Run regedit</p></div>
<div class="mceTemp">In the Registry Editor go to the key where you would like to create the reference to the common script. I have done it in “HKEY_LOCAL_MACHINE\SOFTWARE\MyCompany”. Create a new string value here, name it “<em>QlikView Common Script</em>” and set its value to <em>C:\Common.qvs</em> (figure 3).</div>
<div class="mceTemp">
<div id="attachment_1282" class="wp-caption alignnone" style="width: 310px"><a href="http://www.quickqlearqool.nl/wp-content/uploads/2012/01/New_string_value.jpg"><img class="size-medium wp-image-1282 " src="http://www.quickqlearqool.nl/wp-content/uploads/2012/01/New_string_value-300x177.jpg" alt="Create new string value" width="300" height="177" /></a><p class="wp-caption-text">Figure 3: Create new string value</p></div>
</div>
<div class="mceTemp">
<p class="mceTemp">&nbsp;</p>
<p class="mceTemp">This is all the work you have to do outside QlikView. We have created our common script file and made a reference to it in the Windows registry. Now we have to refer to it in our QlikView script.</p>
<p class="mceTemp">Add the following lines to your QlikView script to reference the common script:</p>
<p class="mceTemp"><strong><em>CommonScript</em></strong> = GetRegistryString(&#8216;HKEY_LOCAL_MACHINE\SOFTWARE\MyCompany&#8217;, &#8216;QlikView Common Script&#8217;);<br />
<strong><em>$(Include=$(CommonScript))</em></strong>;<br />
<strong>LET</strong> <strong><em>CommonScript</em></strong> = NULL();</p>
<p class="mceTemp">The first line gets the value of the registry entry and puts it into the variable <em>CommonScript</em>. <em>CommonScript</em> now contains <em>C:\Common.qvs</em>. The second line includes the common script and the third line cleans up the variable.</p>
<p class="mceTemp">You will have to include these three lines in every QlikView app you create. But once included you can use the procedures you have created in the common script anywhere in your QlikView script.</p>
<p class="mceTemp">So let’s put our common procedure in practice. Let’s say we want to load something from datasource <em>First</em>. The only thing we have to do prior to the LOAD statement is to use the procedure of our common script:</p>
<p class="mceTemp"><strong>CALL</strong> <strong>ConnectToDatasource</strong>(&#8216;First&#8217;);</p>
<p class="mceTemp">This will make a connection to the <em>First </em>datasource, but does so from a central place. When the connection to this datasource changes you will only have to change it in one place. And when you want to move your common script to another file location, you will also only have to do it in one place.</p>
<p class="mceTemp">If you create a similar structure with the common script file and the registry entry on each server you are deploying to. Or if each developer that is working on the app has a similar structure on their development machine. You will have no  problems with deployment to through the DTAP environment and collaboration on a single app will work smoothly.</p>
<p class="mceTemp">And as an extra you have a central place to define other commonly used procedures or variables. I have all my system variables defined in the common script for example.</p>
<h5><em>Footnote</em><br />
<em>I still use QlikView 10 and have not tested this in QlikView 11.</em></h5>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1278</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>OnApplyBookmark document event trigger</title>
		<link>http://www.quickqlearqool.nl/?p=1226</link>
		<comments>http://www.quickqlearqool.nl/?p=1226#comments</comments>
		<pubDate>Wed, 28 Sep 2011 05:32:24 +0000</pubDate>
		<dc:creator>Bas</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Bookmark]]></category>
		<category><![CDATA[Document Event Trigger]]></category>
		<category><![CDATA[OnApplyBookmark]]></category>
		<category><![CDATA[qlikview]]></category>
		<category><![CDATA[qlikview 10]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1226</guid>
		<description><![CDATA[QlikView offers different document event triggers: OnAnySelect, OnOpen, OnPostReduceData and OnPostReloadData. They all enable you to respond to certain events generated by QlikView. This can be useful in many cases. For instance, I often use the OnOpen trigger to have the current date selected when the user opens the document. The other day I was [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: Arial;font-size: 12pt">QlikView offers different document event triggers: OnAnySelect, OnOpen, OnPostReduceData and OnPostReloadData. They all enable you to respond to certain events generated by QlikView. This can be useful in many cases. For instance, I often use the OnOpen trigger to have the current date selected when the user opens the document.</span></p>
<p><span style="font-family: Arial;font-size: 12pt">The other day I was developing a QlikView app where I wanted to execute a macro action when the users applied a bookmark. In this case I needed to refresh a chart with different measures that were selected by the user. QlikView does not have an OnApplyBookmark trigger. So how do we persuade QlikView to help us achieve this goal?<span id="more-1226"></span></span></p>
<div><span style="font-family: Arial;font-size: 12pt">My first hunch in solving this was to simply use a field event trigger. But when you setup an OnSelect trigger on a field, it only fires when the user makes a manual selection in the field. The trigger will not fire when the user changes the field selection by applying a bookmark.</span></div>
<div><span style="font-family: Arial;font-size: 12pt"> </span></div>
<div><span style="font-family: Arial;font-size: 12pt">Fortunately it possible to mimic the OnApplyBookmark trigger behavior by using a variable event trigger. To make this happen I use the option to include the value of the variable in a bookmark together with a variable event trigger. The following steps describe how this works.</span></div>
<div></div>
<div><span style="font-family: Arial;font-size: 12pt">Start off by adding a variable to the Variable Overview (CTRL-ALT-V) with the name OnApplyBookmark and set its value to any piece of text. In this example I have used the text <em>true</em> (see the image below). </span></div>
<div><span style="font-family: Arial;font-size: 12pt"> </span></div>
<div><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt"><a href="http://www.quickqlearqool.nl/wp-content/uploads/2011/09/Create_OnApplyBookmark_variable.jpg"><img class="alignnone size-medium wp-image-1228" src="http://www.quickqlearqool.nl/wp-content/uploads/2011/09/Create_OnApplyBookmark_variable-300x226.jpg" alt="" width="300" height="226" /></a></span></span></div>
<p><span style="font-family: Arial;font-size: 12pt">Open the document properties (CTRL-ALT-D) and go to the tab Variables. Select the just created OnApplyBookmark variable and check the Include in Bookmarks checkbox (see red rectangle 1 in the image below). This ensures that whenever the user creates a bookmark the value of our variable is included in this bookmark.</span></p>
<p><span style="font-family: Arial;font-size: 12pt"><a href="http://www.quickqlearqool.nl/wp-content/uploads/2011/09/Include_in_Bookmarks1.jpg"><img class="alignnone size-medium wp-image-1230" src="http://www.quickqlearqool.nl/wp-content/uploads/2011/09/Include_in_Bookmarks1-300x247.jpg" alt="" width="300" height="247" /></a></span></p>
<p><span style="font-family: Arial;font-size: 12pt">Select the Triggers tab in the document properties and add an OnInput action to the OnApplyBookmark variable. (In this situation the OnChange does not work in the IE plugin so therefore it is best to use the OnInput.)<span> </span>Blue rectangle 2 in the image below illustrates how to add an OnInput action to the variable.</span></p>
<p><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt"><a href="http://www.quickqlearqool.nl/wp-content/uploads/2011/09/Create_OnInput_event.jpg"><img class="alignnone size-medium wp-image-1231" src="http://www.quickqlearqool.nl/wp-content/uploads/2011/09/Create_OnInput_event-300x247.jpg" alt="" width="300" height="247" /></a></span></span></p>
<p><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt">From here on out you can select any action to be executed when a bookmark is applied. For this example I will execute a macro function. Therefore click on the add button to add an action and select External &#8211; Run Macro. Type <em>OnApplyBookmarkFired </em>in the Macro Name field (see image below).</span></span></span></p>
<p><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt"><a href="http://www.quickqlearqool.nl/wp-content/uploads/2011/09/Run_Macro.jpg"><img class="alignnone size-medium wp-image-1232" src="http://www.quickqlearqool.nl/wp-content/uploads/2011/09/Run_Macro-300x206.jpg" alt="" width="300" height="206" /></a></span></span></span></p>
<div><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt">Click on the Edit Module… button to add the code below to the macro editor.</span></span></span></div>
<div><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt"><span style="font-family: Arial;font-size: 12pt"> </span></span></span></div>
<p><span><em>Sub OnApplyBookmarkFired<br />
MsgBox(&#8220;A bookmark was applied&#8221;)<br />
End Sub</em></span></p>
<p><span style="font-family: Arial;font-size: 12pt">Now confirm all the dialogs with OK and start testing. If all is well you should get a messagebox each time you apply a bookmark that was created after implementing this change.</span></p>
<p><span style="font-family: Arial;font-size: 12pt">Why does this work? We have setup our newly introduced variable OnApplyBookmark in such a way that its value gets included in bookmarks. This means that when a user creates a bookmark the value of OnApplyBookmark is stored within that bookmark. When the user applies the bookmark, the value of OnApplyBookmark is written back into the actual variable. Because we have set a Run Macro action on the OnInput event of the variable, our code gets fired the moment the value is written to the variable.</span></p>
<p><span style="font-family: Arial;font-size: 12pt">This example show how you can execute macro code when a bookmark has been applied. But, as mentioned before, you can also use this to trigger any available action.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1226</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Quick post: Qlik Here for My View of QlikView 10</title>
		<link>http://www.quickqlearqool.nl/?p=1219</link>
		<comments>http://www.quickqlearqool.nl/?p=1219#comments</comments>
		<pubDate>Thu, 21 Oct 2010 19:07:27 +0000</pubDate>
		<dc:creator>Gilles</dc:creator>
				<category><![CDATA[Nice Reads]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1219</guid>
		<description><![CDATA[There&#8217;s a nice positive review of qlikview 10 and it&#8217;s new features by Ventana research. You can read it here:  Qlik Here for My View of QlikView 10. Funny: the writer does see value in the mekko chart. I think it&#8217;s confusing and might even consider a pie chart. Furthermore remarkable: the writer (David Menninger) [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a nice positive review of qlikview 10 and it&#8217;s new features by Ventana research. You can read it here:  <a title="post" href="http://www.ventanaresearch.com/blog/commentblog.aspx?id=4006" target="_blank">Qlik Here for My View of QlikView 10</a>.</p>
<p>Funny: the writer does see value in the mekko chart. I think it&#8217;s confusing and might even consider a<a title="Save the pies for dessert" href="http://www.quickqlearqool.nl/?p=669" target="_blank"> pie chart</a>.</p>
<p>Furthermore remarkable: the writer (David Menninger) says it&#8217;s not such a major release. And I think he might have a point here!</p>
<p>Anyway read it yourself!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1219</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quick post: Qlikview&#8217;s SWOT analysis from Gartner and comments by Qlikview</title>
		<link>http://www.quickqlearqool.nl/?p=1216</link>
		<comments>http://www.quickqlearqool.nl/?p=1216#comments</comments>
		<pubDate>Wed, 20 Oct 2010 10:47:23 +0000</pubDate>
		<dc:creator>Gilles</dc:creator>
				<category><![CDATA[Nice Reads]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1216</guid>
		<description><![CDATA[I came across this post on Qlikpowers blog: Qlikview SWOT. It&#8217;s interesting to read because it adresses some threads and weaknesses wich are commented on by Qlikview.]]></description>
			<content:encoded><![CDATA[<p>I came across this post on Qlikpowers blog: <a title="SWOT" href="http://www.qlikpower.com/blog/bid/48563/QlikView-s-SWOT-analysis-from-Gartner?source=BlogTwitter_[QlikView's%20SWOT%20anal]" target="_blank">Qlikview SWOT</a>. It&#8217;s interesting to read because it adresses some threads and weaknesses wich are commented on by Qlikview.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1216</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Quick post: Qlikview 10 is generally available</title>
		<link>http://www.quickqlearqool.nl/?p=1212</link>
		<comments>http://www.quickqlearqool.nl/?p=1212#comments</comments>
		<pubDate>Tue, 12 Oct 2010 12:30:36 +0000</pubDate>
		<dc:creator>Gilles</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[qlikview 10]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1212</guid>
		<description><![CDATA[The press release can be read here: pressrelease The Qlikview 10 introduction site can be found here: QV10 A soon to be released post about the most important new features and functionality is coming up!]]></description>
			<content:encoded><![CDATA[<p>The press release can be read here: <a title="qv10" href="http://www.qlikview.com/us/company/press-room/press-releases/2010/us/1012-qlikview-10-delivers-consumer-bi-software?utm_source=twitter&amp;utm_medium=social+media" target="_blank">pressrelease</a></p>
<p>The Qlikview 10 introduction site can be found here: <a title="QV10" href="http://www.qlikview.com/us/landing/qv10" target="_blank">QV10</a></p>
<p>A soon to be released post about the most important new features and functionality is coming up!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1212</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>I forget: what&#8217;s in memory?</title>
		<link>http://www.quickqlearqool.nl/?p=1205</link>
		<comments>http://www.quickqlearqool.nl/?p=1205#comments</comments>
		<pubDate>Thu, 02 Sep 2010 13:21:30 +0000</pubDate>
		<dc:creator>Gilles</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Nice Reads]]></category>
		<category><![CDATA[comparison]]></category>
		<category><![CDATA[nice read]]></category>
		<category><![CDATA[qlikview]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1205</guid>
		<description><![CDATA[I&#8217;ve came across an excellent post by Boris Evelson on his blog: http://blogs.forrester.com/boris_evelson/10-03-31-i_forget_whats_in_memory (thanks to @vizubi) it&#8217;s an old one, but it makes perfectly clear what are the differences between the different in memory options. Evelson makes distinction between 5 types of in memory solutions, divides the solution providers over these 5 types  and gives [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve came across an excellent post by Boris Evelson on his blog: <a href="http://blogs.forrester.com/boris_evelson/10-03-31-i_forget_whats_in_memory">http://blogs.forrester.com/boris_evelson/10-03-31-i_forget_whats_in_memory</a> (thanks to <a title="@vizubi" href="http://twitter.com/vizubi" target="_blank">@vizubi</a>) it&#8217;s an old one, but it makes perfectly clear what are the differences between the different in memory options. Evelson makes distinction between 5 types of in memory solutions, divides the solution providers over these 5 types  and gives pro&#8217;s and cons for every option. Nice read!</p>
<p>In the same category: compare in-memory solutions is this post by Boris Evelson as well: <a href="http://blogs.forrester.com/boris_evelson/10-09-01-not_all_in_memory_analytics_tools_are_created_equal">http://blogs.forrester.com/boris_evelson/10-09-01-not_all_in_memory_analytics_tools_are_created_equal</a> where Boris gives advice on how to compare in-memory solutions. Nice read as well, and nice comments from two Qlikview adepts</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1205</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New Qlikview video, about the in-memory advantage</title>
		<link>http://www.quickqlearqool.nl/?p=1197</link>
		<comments>http://www.quickqlearqool.nl/?p=1197#comments</comments>
		<pubDate>Tue, 29 Jun 2010 12:39:52 +0000</pubDate>
		<dc:creator>Gilles</dc:creator>
				<category><![CDATA[Nice Reads]]></category>
		<category><![CDATA[marketing]]></category>
		<category><![CDATA[qlikview]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1197</guid>
		<description><![CDATA[There&#8217;s a nice new marketing video on qlikview.com. It&#8217;s called &#8220;The Qlikview in-memory advantage&#8220;. There&#8217;s just one thing they always seem to forget at Qlikview: to have such a nice way of &#8221; analysing and visualising all your data&#8221; you DO NEED a solidly build and well architectured datawarehouse!]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a nice new marketing video on qlikview.com. It&#8217;s called &#8220;<a title="in memory advantage" href="http://www.qlikview.com/us/explore/products/in-memory-advantage#" target="_blank">The Qlikview in-memory advantage</a>&#8220;.</p>
<p>There&#8217;s just one thing they always seem to forget at Qlikview: to have such a nice way of &#8221; analysing and visualising all your data&#8221; you DO NEED a solidly build and well architectured datawarehouse!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1197</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>QlikView Security</title>
		<link>http://www.quickqlearqool.nl/?p=1183</link>
		<comments>http://www.quickqlearqool.nl/?p=1183#comments</comments>
		<pubDate>Tue, 15 Jun 2010 07:57:40 +0000</pubDate>
		<dc:creator>matthew</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Section Access]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1183</guid>
		<description><![CDATA[Last week I encountered a few problems with a QlikView app where I had to implement a section access component. The section access needed to fetch the users and roles from an Oracle Database. Reading through the QlikView Docs I found the chapter about security, explaining an example how to implement it but unfortunately the [...]]]></description>
			<content:encoded><![CDATA[<p>Last week I encountered a few problems with a QlikView app where I had to implement a section access component. The section access needed to fetch the users and roles from an Oracle Database.</p>
<p>Reading through the QlikView Docs I found the chapter about security, explaining an example how to implement it but unfortunately the QlikView Docs aren&#8217;t so clear and I had to search through the QlikView forum to find people with similar issues.<span id="more-1183"></span></p>
<p>Issues I encountered :</p>
<p>1. Fetching users from the database within the section access does not work. After a succesfull reload I closed down the QlikView App and every user I tried to login with was denied access. So the QlikView apps did become useless, lucky me I made a backup.</p>
<p>2. Adding an inline table with admin users and concatenating a load statement with the users from the database did not work either (at least not the way I always write a concatenate statement). As mentioned in the the QlikView Docs all column names and values need to be in upper case if not they will be converted. But as experienced this is not the case, you need to explicitly make every column upper case with the function Upper().</p>
<p>Why I first insert an inline table is mainly because of fixed users that never change and secondly because of this post of William (link to <a href="http://www.quickqlearqool.nl/?p=822" target="_blank">post </a>).</p>
<p>Finally this is the code that works:</p>
<pre>DbUsers_login:
LOAD
ID
,	LOGIN
,	TYPE
,	NAME;
SQL SELECT *
FROM "SEC"."USERS_LOGIN";</pre>
<pre>Section Access;
Star is *;</pre>
<address></address>
<pre>Security:
LOAD * INLINE [
ACCESS, USERID, PASSWORD, ROLE
ADMIN, ADMIN, 123, *
];</pre>
<address></address>
<pre>CONCATENATE (Security)
LOAD
'ADMIN' as ACCESS,
upper(LOGIN) as USERID,
'123' as PASSWORD,
'*' as ROLE
Resident DbUsers_login;</pre>
<address></address>
<pre>Section Application;</pre>
<address></address>
<pre>drop table DbUsers_login;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1183</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>The underlying technology of QlikView</title>
		<link>http://www.quickqlearqool.nl/?p=1178</link>
		<comments>http://www.quickqlearqool.nl/?p=1178#comments</comments>
		<pubDate>Tue, 15 Jun 2010 07:31:43 +0000</pubDate>
		<dc:creator>Gilles</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Nice Reads]]></category>
		<category><![CDATA[in-memory]]></category>
		<category><![CDATA[Qliktech]]></category>
		<category><![CDATA[qlikview]]></category>
		<category><![CDATA[underlying technology]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1178</guid>
		<description><![CDATA[There&#8217;s an excellent post by Curt Monash on the underlying technology of Qlikview. Nothing really new, but a very nice summary of how it works, with comments from (among others) TDWI&#8217;s Wayne Eckerson and Håkan Wolgé (the author of qlikview 1.0 code and still chief architect at Qliktech). One thing really new to me was [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s an excellent post by Curt Monash on the underlying technology of Qlikview. Nothing really new, but a very nice summary of how it works, with comments from (among others) TDWI&#8217;s Wayne Eckerson and Håkan Wolgé (the author of qlikview 1.0 code and still chief architect at Qliktech).</p>
<p>One thing really new to me was the following part and I quote:<span id="more-1178"></span></p>
<blockquote><p>The main ingredient of the performance secret sauce in QlikView is that <strong>selections are compiled straight into machine code.</strong> (QlikTech gave me the impression that this post is the first time that will be publicly revealed.) Notes on that include:</p>
<ul>
<li>In the old days, QlikTech thought compilation gave a 10X performance benefit vs. interpreted code. However, 5X might be a more up-to-date figure.</li>
<li>It’s not just code; part of the compilation is to create temporary lookup tables.</li>
<li>A single calculation can use multiple cores. QlikTech thinks it’s done a very solid job of engineering efficient multicore parallelism. <em>(Note: So far as I could tell, Hakan was using “calculation” to refer both to queries and, well, calculations.)</em></li>
<li>There’s a good reason QlikView runs only on Intel-compatible processors. A port would be painful.</li>
</ul>
</blockquote>
<p>So read the full story here: <a title="The underlying technology of QlikView" href="http://www.dbms2.com/2010/06/12/the-underlying-technology-of-qlikview/" target="_blank">The underlying technology of QlikView</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1178</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Qliktech and Human Inference work together for better dataquality</title>
		<link>http://www.quickqlearqool.nl/?p=1175</link>
		<comments>http://www.quickqlearqool.nl/?p=1175#comments</comments>
		<pubDate>Tue, 04 May 2010 06:58:27 +0000</pubDate>
		<dc:creator>Gilles</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[dataquality]]></category>
		<category><![CDATA[Human Inference]]></category>
		<category><![CDATA[qlikview]]></category>

		<guid isPermaLink="false">http://www.quickqlearqool.nl/?p=1175</guid>
		<description><![CDATA[There&#8217;s a press release on EarthPublisher.com about a new technology partner for Qliktech. They start working together with Human Inference. Human Inference is a Dutch company and  is the European market leader in data quality solutions. They focus on high quality solutions developed for large databases and critical systems. The solutions are based on natural [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a press release on EarthPublisher.com about a new technology partner for Qliktech. They start working together with Human Inference. Human Inference is a Dutch company and  is the European market leader in data quality solutions. They focus on high quality solutions developed for large databases and critical systems. The solutions are based on natural language processing. You can read their corporate factsheet <a title="Human Inference" href="http://www.humaninference.com/en/~/media/Files/Factsheets/Factsheet_corporate.ashx" target="_blank">here</a>. You can read the press release <a title="press release" href="http://www.earthpublisher.com/pressrelease/QlikTech-en-Human-Inference-gaan-samenwerken-om-datakwaliteit-te-verhogen-1920/" target="_blank">here </a>(in Dutch).</p>
<p>I consider this as a little bit strange partnership. I thought Human Inference works on your source systems, like your main CRM system and would love to hear how this works in conjunction with qlikview. Any thoughts?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quickqlearqool.nl/?feed=rss2&#038;p=1175</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
