<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>article Considerations When Using Macros In QlikView in Official Support Articles</title>
    <link>https://community.qlik.com/t5/Official-Support-Articles/Considerations-When-Using-Macros-In-QlikView/ta-p/1710861</link>
    <description>&lt;P&gt;Use of macros in QlikView applications should always be&amp;nbsp;limited and&amp;nbsp;only be used&amp;nbsp;as&amp;nbsp;a last resort for the following reasons:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Running macros may have a large negative impact on performance in a client or on a server. Macros automatically deletes the&amp;nbsp;client cache, therefore it&amp;nbsp;increases the chance of conflicts between&amp;nbsp;cached&amp;nbsp;and modified states. As a result the client or server may hang or crash.&lt;/LI&gt;
&lt;LI&gt;Macros are executed at VBScript (VBS)&amp;nbsp;level while QlikView in general is executed at assembler level which is thousands of times faster by default.&lt;/LI&gt;
&lt;LI&gt;Macros are single threaded synchronous as opposed to QlikView which is asynchronous and heavily threaded and this causes the macros to interrupt all calculations&amp;nbsp;and may lead QlikView to freeze.&lt;/LI&gt;
&lt;LI&gt;Macros always have a poor performance&amp;nbsp;which makes them&amp;nbsp;less desirable from a performance point of view.&lt;/LI&gt;
&lt;LI&gt;Macros are always secondary when it comes to QlikView functionality.&amp;nbsp;First, all internal basic QlikView functions are run and tested and thereafter the macros are run and tested&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;Macros require constant maintenance. Applications need to be revisited with each new version of QlikView&amp;nbsp;to guarantee&amp;nbsp;that the macros are not impacted by any structural changes.&lt;/LI&gt;
&lt;LI&gt;Only a subset of macros will work in a server environment with clients (IE Plugin, Ajax, QV Mobile ) since local operations (copy to clipboard, export, print etc.) are not supported, though some of these have a server-side&amp;nbsp;equivalent (e.g. Server-SideExport etc.) where each client impacting on the server performance in a negative way.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H4&gt;Environment:&lt;/H4&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;SPAN style="font-family: inherit;"&gt;&lt;LI-PRODUCT title="QlikView" id="qlikView"&gt;&lt;/LI-PRODUCT&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;The table below shows the clients that support running macros:&lt;/STRONG&gt;&lt;/P&gt;
&lt;TABLE border="1"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD colspan="1" rowspan="1"&gt;OS / Clients&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;OCX (Active&amp;nbsp;&amp;nbsp;X)&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;Ajax&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;QV Mobile&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;IE Plug-In&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD colspan="1" rowspan="1"&gt;IOS&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;X&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD colspan="1" rowspan="1"&gt;Windows&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;X&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;X&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;X&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV&gt;
&lt;H4&gt;&lt;STRONG&gt;Conclusion:&amp;nbsp;&lt;/STRONG&gt;&lt;/H4&gt;
Macros may work with a few thousand records and not necessarily scale well. The&amp;nbsp;problems&amp;nbsp;may become more serious when larger datasets are involved. It is also important to note that certain events can only be captured through the use of macros and for this reason it may be difficult to avoid macros altogether. Qlik always strives to incorporate as much of this functionality as possible as basic QlikView functionality, thus limiting the use of macros in the long run. Given all of the above, macros cannot be part of any recommended QlikView design pattern.&lt;BR /&gt;&lt;BR /&gt;Please note,&amp;nbsp;&lt;STRONG&gt;VBScript&amp;nbsp;is&amp;nbsp;deprecated in Internet Explorer 11 and&amp;nbsp;no longer supported in IE11 edge mode&lt;/STRONG&gt;.More details can be found from these&amp;nbsp;links.
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://msdn.microsoft.com/en-us/library/dn384057" target="_blank" rel="noopener" data-cke-saved-href="https://msdn.microsoft.com/en-us/library/dn384057"&gt;https://msdn.microsoft.com/en-us/library/dn384057&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://blogs.windows.com/msedgedev/2017/04/12/disabling-vbscript-execution-in-internet-explorer-11/" target="_blank" rel="noopener" data-cke-saved-href="https://blogs.windows.com/msedgedev/2017/04/12/disabling-vbscript-execution-in-internet-explorer-11/"&gt;https://blogs.windows.com/msedgedev/2017/04/12/disabling-vbscript-execution-in-internet-explorer-11/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;</description>
    <pubDate>Wed, 16 Jun 2021 12:25:15 GMT</pubDate>
    <dc:creator>Sonja_Bauernfeind</dc:creator>
    <dc:date>2021-06-16T12:25:15Z</dc:date>
    <item>
      <title>Considerations When Using Macros In QlikView</title>
      <link>https://community.qlik.com/t5/Official-Support-Articles/Considerations-When-Using-Macros-In-QlikView/ta-p/1710861</link>
      <description>&lt;P&gt;Use of macros in QlikView applications should always be&amp;nbsp;limited and&amp;nbsp;only be used&amp;nbsp;as&amp;nbsp;a last resort for the following reasons:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Running macros may have a large negative impact on performance in a client or on a server. Macros automatically deletes the&amp;nbsp;client cache, therefore it&amp;nbsp;increases the chance of conflicts between&amp;nbsp;cached&amp;nbsp;and modified states. As a result the client or server may hang or crash.&lt;/LI&gt;
&lt;LI&gt;Macros are executed at VBScript (VBS)&amp;nbsp;level while QlikView in general is executed at assembler level which is thousands of times faster by default.&lt;/LI&gt;
&lt;LI&gt;Macros are single threaded synchronous as opposed to QlikView which is asynchronous and heavily threaded and this causes the macros to interrupt all calculations&amp;nbsp;and may lead QlikView to freeze.&lt;/LI&gt;
&lt;LI&gt;Macros always have a poor performance&amp;nbsp;which makes them&amp;nbsp;less desirable from a performance point of view.&lt;/LI&gt;
&lt;LI&gt;Macros are always secondary when it comes to QlikView functionality.&amp;nbsp;First, all internal basic QlikView functions are run and tested and thereafter the macros are run and tested&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;Macros require constant maintenance. Applications need to be revisited with each new version of QlikView&amp;nbsp;to guarantee&amp;nbsp;that the macros are not impacted by any structural changes.&lt;/LI&gt;
&lt;LI&gt;Only a subset of macros will work in a server environment with clients (IE Plugin, Ajax, QV Mobile ) since local operations (copy to clipboard, export, print etc.) are not supported, though some of these have a server-side&amp;nbsp;equivalent (e.g. Server-SideExport etc.) where each client impacting on the server performance in a negative way.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;H4&gt;Environment:&lt;/H4&gt;
&lt;P class="lia-indent-padding-left-30px"&gt;&lt;SPAN style="font-family: inherit;"&gt;&lt;LI-PRODUCT title="QlikView" id="qlikView"&gt;&lt;/LI-PRODUCT&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;The table below shows the clients that support running macros:&lt;/STRONG&gt;&lt;/P&gt;
&lt;TABLE border="1"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD colspan="1" rowspan="1"&gt;OS / Clients&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;OCX (Active&amp;nbsp;&amp;nbsp;X)&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;Ajax&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;QV Mobile&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;IE Plug-In&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD colspan="1" rowspan="1"&gt;IOS&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;X&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD colspan="1" rowspan="1"&gt;Windows&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;X&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;X&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD colspan="1" rowspan="1"&gt;X&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV&gt;
&lt;H4&gt;&lt;STRONG&gt;Conclusion:&amp;nbsp;&lt;/STRONG&gt;&lt;/H4&gt;
Macros may work with a few thousand records and not necessarily scale well. The&amp;nbsp;problems&amp;nbsp;may become more serious when larger datasets are involved. It is also important to note that certain events can only be captured through the use of macros and for this reason it may be difficult to avoid macros altogether. Qlik always strives to incorporate as much of this functionality as possible as basic QlikView functionality, thus limiting the use of macros in the long run. Given all of the above, macros cannot be part of any recommended QlikView design pattern.&lt;BR /&gt;&lt;BR /&gt;Please note,&amp;nbsp;&lt;STRONG&gt;VBScript&amp;nbsp;is&amp;nbsp;deprecated in Internet Explorer 11 and&amp;nbsp;no longer supported in IE11 edge mode&lt;/STRONG&gt;.More details can be found from these&amp;nbsp;links.
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://msdn.microsoft.com/en-us/library/dn384057" target="_blank" rel="noopener" data-cke-saved-href="https://msdn.microsoft.com/en-us/library/dn384057"&gt;https://msdn.microsoft.com/en-us/library/dn384057&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://blogs.windows.com/msedgedev/2017/04/12/disabling-vbscript-execution-in-internet-explorer-11/" target="_blank" rel="noopener" data-cke-saved-href="https://blogs.windows.com/msedgedev/2017/04/12/disabling-vbscript-execution-in-internet-explorer-11/"&gt;https://blogs.windows.com/msedgedev/2017/04/12/disabling-vbscript-execution-in-internet-explorer-11/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;/DIV&gt;</description>
      <pubDate>Wed, 16 Jun 2021 12:25:15 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Official-Support-Articles/Considerations-When-Using-Macros-In-QlikView/ta-p/1710861</guid>
      <dc:creator>Sonja_Bauernfeind</dc:creator>
      <dc:date>2021-06-16T12:25:15Z</dc:date>
    </item>
  </channel>
</rss>

