<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><title>QlikView по-русски</title><description>Цель блога - дать русскоязычному сообществу пользователей QlikView возможность получать информацию о продукте на родном языке</description><managingEditor>noreply@blogger.com (sparur)</managingEditor><pubDate>Sun, 2 Aug 2026 13:57:51 +0300</pubDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">29</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><link>http://qvrus.blogspot.com/</link><language>en-us</language><itunes:explicit>no</itunes:explicit><itunes:subtitle>Цель блога - дать русскоязычному сообществу пользователей QlikView возможность получать информацию о продукте на родном языке</itunes:subtitle><itunes:category text="Education"/><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><item><title>Обновлен Q Downloader.</title><link>http://qvrus.blogspot.com/2013/08/q-dwnloader.html</link><author>noreply@blogger.com (sparur)</author><pubDate>Sun, 4 Aug 2013 20:03:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-3992580287761033033</guid><description>Всем привет.&lt;br /&gt;
Отпуск закончился.&lt;br /&gt;
А я решил проснуться от блого-спячки и вернуться к общественной, так сказать, деятельности :)&lt;br /&gt;
Для начала обновил свое приложение Q Downloader. Кто не знает что это за фрукт - &lt;a href="http://qvrus.blogspot.ru/2012/08/qlikview-download-announcement.html" target="_blank"&gt;тыц&lt;/a&gt; и &lt;a href="http://qvrus.blogspot.ru/2012/08/new-section-for-downloads-is-available.html" target="_blank"&gt;тыц&lt;/a&gt;. Для остальных мини-список изменений:&lt;br /&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;немного изменен дизайн.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;добавлены последние новинки: QV 11.2 SR2, SR3, QV Expressor, QV Governance Dashboard и др.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;и, наверное, самое главное - теперь для получения нового контента нет необходимости каждый раз скачивать всё приложение заново. Достаточно будет выполнить стандартный релоад и новые данные будут загружены.&lt;/li&gt;
&lt;/ul&gt;
Пользуемся, скачиваем, пробуем...&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Новый раздел "Файлы для загрузки" теперь доступен!</title><link>http://qvrus.blogspot.com/2012/08/new-section-for-downloads-is-available.html</link><author>noreply@blogger.com (sparur)</author><pubDate>Fri, 10 Aug 2012 12:49:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-1289860580541295352</guid><description>Приветствую, коллеги.&lt;br /&gt;
&lt;br /&gt;
Вот я и закончил работу над обещанным в прошлой заметке приложением. Теперь вы можете пройти в &lt;a href="http://qvrus.blogspot.com/p/blog-page_10.html"&gt;новый раздел&lt;/a&gt; сайта, скачать и оценить всю полезность (или бесполезность - кому как...) &lt;a href="https://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Downloads/QDownloader/Q_Downloader_x86.exe" target="_blank"&gt;данного приложения&lt;/a&gt; для вас лично.&lt;br /&gt;
Спасибо за ваше терпение. &lt;br /&gt;
Надеюсь кому-то это приложение будет полезно.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">15</thr:total></item><item><title>QlikView Download! Скоро на нашем канале!</title><link>http://qvrus.blogspot.com/2012/08/qlikview-download-announcement.html</link><category>Новости</category><author>noreply@blogger.com (sparur)</author><pubDate>Fri, 3 Aug 2012 12:45:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2324361377689989256</guid><description>&lt;div align="justify"&gt;
Приветствую, коллеги. &lt;br /&gt;
В последнее время, мне стали очень часто спрашивать о том, где можно скачать программу установки QlikView. Причем спрашивают не только про Desktop приложение, которое, кстати, всем желающим доступно &lt;a href="http://www.qlikview.com/us/explore/experience/free-download/" target="_blank"&gt;здесь&lt;/a&gt;. Но и про другие компоненты программной платформы QlikView – серверную часть, коннекторы и др. части тела.&lt;br /&gt;
Поэтому, на фоне этой волны, я хочу анонсировать небольшое приложение, которое, надеюсь, раз и навсегда, закроет столь насущный вопрос.&lt;br /&gt;
&amp;nbsp;&lt;a href="https://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/QlikView%20Download.%20Announcement/files/Intro.png" target="_blank"&gt;&lt;img alt="Intro" border="0" height="162" src="http://lh6.ggpht.com/-XqNYGQsOe6k/UBuPshn0OaI/AAAAAAAAAUs/DY-gJZU2CU8/Intro%25255B3%25255D.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="Intro" width="244" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="https://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/QlikView%20Download.%20Announcement/files/QV_Download_tab.png" target="_blank"&gt;&lt;img alt="QV_Download_tab" border="0" height="162" src="http://lh5.ggpht.com/-x88lyKDkgRw/UBuPvXAgUyI/AAAAAAAAAUw/Vdb4l8-tePc/QV_Download_tab%25255B3%25255D.png?imgmax=800" style="background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="QV_Download_tab" width="244" /&gt;&lt;/a&gt;&lt;br /&gt;
В данный момент я практически закончил работу над этим проектом и в ближайшее время выложу его на страницах своего блога, о чем оповещу вас, мои дорогие читатели, отдельным постом. Так что не переключайте канал. &lt;br /&gt;
Ждать осталось недолго!&lt;/div&gt;
&lt;div class="wlWriterHeaderFooter" style="margin: 0px; padding: 0px 0px 0px 0px;"&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;script type="text/javascript"&gt; tweetmeme_screen_name = 'sparur'; &lt;/script&gt; &lt;script src="http://tweetmeme.com/i/scripts/follow.js" type="text/javascript"&gt;&lt;/script&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh6.ggpht.com/-XqNYGQsOe6k/UBuPshn0OaI/AAAAAAAAAUs/DY-gJZU2CU8/s72-c/Intro%25255B3%25255D.png?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Многократно используемые и расширяемые выражения в QlikView</title><link>http://qvrus.blogspot.com/2012/07/reusable-and-expandable-expressions-in.html</link><category>Set Analysis</category><category>Диаграммы</category><category>Переменные</category><author>noreply@blogger.com (sparur)</author><pubDate>Wed, 25 Jul 2012 14:10:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2401700409866523831</guid><description>&lt;div align="justify"&gt;
Всем привет. &lt;/div&gt;
&lt;div align="justify"&gt;
Сегодня я хотел бы немного поговорить о выражениях (Expressions), которые мы так часто пишем “с нуля”, переписываем, анализируем и т.д. и т.п. А точнее, хотелось бы поговорить о том, как можно хоть немного облегчить нашу жизнь при работе с диаграммами (Charts) и, в частности, с выражениями, прописанными в этих самых диаграммах. Очень часто (практически на любом более или менее насыщенном диаграммами QlikView приложении) встречается такая ситуация, когда одно и то же выражение многократно повторяется во множестве различных объектов QlikView документа. Причем, чаще всего это самое выражение многократно скопировано и размножено по всей этой куче объектов. И вот, в один прекрасный момент, мы понимаем, что нам необходимо что-то поменять в этом “уникальном” выражении. В таком случае, нас неизбежно ожидает не очень сложная, но очень неприятная работа по изменению большого количества объектов, так называемая “Monkey Job”. Конечно, отчасти нас спасет встроенный Обозреватель Выражений (Expression Overview). Его можно вызвать при нажатии комбинации Ctrl+Alt+E, но и при работе с ним хватает “удобств”. Поэтому в какой-то момент неизбежно возникает мысль о том, как бы все этого избежать и упростить себе, да и другим коллегам (кто в дальнейшем будет поддерживать ваше приложение) жизнь. Я сейчас не хочу углубляться в подробности того, как это можно сделать, т.к. на днях я натолкнулся (что и подтолкнуло меня к написанию сегодняшнего поста) на &lt;a href="http://bi-review.blogspot.com/2012/05/how-to-write-reusable-and-expandable.html" target="_blank"&gt;замечательную статью&lt;/a&gt; нашего украинского коллеги Дмитрия Гудкова. Кстати, о Дмитрии я уже &lt;a href="http://qvrus.blogspot.com/2011/10/explainum-feeds-aka-qlikcomment.html" target="_blank" title="Explainum"&gt;упоминал&lt;/a&gt; на страницах своего блога, когда рассказывал об одной интересной его разработке. Так вот Дмитрий достаточно подробно описывает возможности использования переменных для обхода вышеописанной мною ситуации, а также приводит ряд примеров и обходных путей при работе с такими переменными. Поэтому для начала прошу обратиться к &lt;a href="http://bi-review.blogspot.com/2012/05/how-to-write-reusable-and-expandable.html" target="_blank"&gt;статье&lt;/a&gt; Дмитрия, а затем вернуться сюда для продолжения разговора &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh4.ggpht.com/-eQRgaqvc444/UA_CqJhsXAI/AAAAAAAAAUA/fCv7ccb7W8Q/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;. Кстати, Дмитрий пишет на английском, поэтому если все-таки у кого-то возникнут дополнительные вопросы, то спрашивайте, не стесняйтесь. Я буду рад помочь и разъяснить… Ознакомились? А теперь прошу, что называется, “под кат”…&lt;/div&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;div align="justify"&gt;
В своей статье Дмитрий рассказывает об одной интересной проблеме при работе с переменными. А точнее при работе с параметризованными переменными или, как я их иногда называю, переменными-функциями. Дело в том, что, передавая строку-параметр в переменную, мы не можем в чистом виде использовать запятые в таких строках. По той простой причине, что QlikView воспринимает запятую как разделитель между параметрами, а не как часть содержимого одного параметра. И в итоге, мы не получаем нужного нам результата. Дмитрий приводит достаточно наглядные примеры, отражающую эту ситуацию. Более того, в своей статье наш коллега предлагает достаточно оригинальный обходной путь, помогающий-таки достигнуть желаемого и “обмануть” QlikView. Он рассказывает про возможности использования подмножеств и операций с ними (пересечение, объединение и т.д.) в Set Analysis’е. На мой взгляд, данный путь, конечно же, имеет место быть. Однако он достаточно громоздок и серьезно усложняет как само выражение, так и его понимание, особенно для новичков. Да и использовать мы его можем в очень ограниченных ситуациях – при параметризации Set Analysis’а. Я хотел бы немного дополнить Дмитрия и посоветовать использовать более универсальный, на мой взгляд, подход для обработки запятых в параметрах переменных. Подход, как и все гениальное – прост как 5 копеек &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh4.ggpht.com/-eQRgaqvc444/UA_CqJhsXAI/AAAAAAAAAUA/fCv7ccb7W8Q/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;…&lt;/div&gt;
&lt;div align="justify"&gt;
Для простоты возьмем примеры из статьи Дмитрия, где он использует вот такое вот определение для переменной:&lt;/div&gt;
&lt;div align="justify"&gt;
LET ePrevAmount = sum ( {&amp;lt;Year={"=only(Year)-1"}, $1 &amp;gt;} Amount)&lt;/div&gt;
&lt;div align="justify"&gt;
Данная переменная предполагает расчет суммы по полю Amount за предыдущий год (относительно текущего значения выбранного года). А также имеет один дополнительный параметр, который может использоваться для более детального ограничения калькуляции при использовании Set Analysis’а. Так вот Дмитрий как раз и описывает различные ситуации использования подмножеств в качестве передаваемого параметра… Например вот так: &lt;/div&gt;
&lt;div align="justify"&gt;
&lt;em&gt;$(ePrevAmount( Type={Income} &amp;gt;*&amp;lt; Aggregated={Yes} &amp;gt;*&amp;lt; CostCenter={NY} ))&lt;/em&gt;&lt;br /&gt;
В этом случае мы получим тот же результат, что и при использовании выражения вида: &lt;br /&gt;
&lt;em&gt;sum ( {&amp;lt;Year={"=only(Year)-1"}, Type={Income}, Aggregated={Yes}, CostCenter={NY} &amp;gt;} Amount)&lt;/em&gt; &lt;br /&gt;
То есть, помимо ограничения по году, мы хотим дополнительно ограничить калькуляцию по полю Type (со значением Income), полю Aggreated (значение Yes) и по полю CostCenter – NY. В данном примере, как раз используется пересечение подмножеств для реализации условия И (AND) по разным полям.&lt;br /&gt;
Другой пример отражает ситуацию, когда нам необходимо ограничить калькуляцию по нескольким значениям одного и того же поля, например вот так:&lt;br /&gt;
&lt;em&gt;sum ( {&amp;lt;Year={"=only(Year)-1"}, City={NY’, ‘Boston’, ‘Chicago’} &amp;gt;} Amount)&lt;/em&gt;&lt;br /&gt;
Т.е. в качестве параметра нам необходимо передать строку вида: &lt;br /&gt;
&lt;em&gt;City={‘NY’, ‘Boston’, ‘Chicago’}&lt;/em&gt;&lt;br /&gt;
Но так как в чистом виде мы, как уже говорили, не можем использовать запятые, то автор предлагает следующий обходной вариант:&lt;br /&gt;
&lt;em&gt;$(ePrevAmount( City={NY} &amp;gt;+&amp;lt; City={Boston} &amp;gt;+&amp;lt; City={Chicago} ))&lt;/em&gt;&lt;br /&gt;
То есть использовать объединение подмножеств для реализации условия ИЛИ (OR) по нескольким значениям одного и того же поля. Тем самым достигнув поставленной цели и получив необходимую калькуляцию.&lt;br /&gt;
Все замечательно и все работает, но как-то не радует глаз… почему вместо City={‘NY’, ‘Boston’, ‘Chicago’} мы вынуждено писать более громоздкое: City={NY} &amp;gt;+&amp;lt; City={Boston} &amp;gt;+&amp;lt; City={Chicago} и, на мой взгляд, менее привычное и менее читабельное… Да, мы &lt;strong&gt;не можем&lt;/strong&gt; использовать запятые, так давайте заменим их на что-то другое – такое же простое и легко воспринимаемое, например, точка с запятой (;). Почему нет? Кто нам мешает? &lt;br /&gt;
Да никто! Это я почтальон Печкин…&lt;br /&gt;
А если серьезно, то все что нам необходимо сделать, перед тем как использовать точку с запятой в строке параметра (и чтобы она &lt;strong&gt;правильно&lt;/strong&gt; воспринималась QlikView) это немного изменить первоначальное определение нашей переменной. Помните, как оно выглядело? Вот так:&lt;br /&gt;
&lt;em&gt;LET ePrevAmount = sum ( {&amp;lt;Year={"=only(Year)-1"}, $1 &amp;gt;} Amount)&lt;/em&gt;&lt;br /&gt;
А теперь давайте немного “поиграем” с передаваемым параметром, прежде чем его отдать переменной:&lt;br /&gt;
&lt;em&gt;LET ePrevAmount = sum ( {&amp;lt;Year={"=only(Year)-1"},&lt;b&gt; $(=Replace('$1', ';', ','))&lt;/b&gt; &amp;gt;} Amount)&lt;/em&gt;&lt;br /&gt;
Что мы сделали? А ничего архисложного мы и не сделали &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh4.ggpht.com/-eQRgaqvc444/UA_CqJhsXAI/AAAAAAAAAUA/fCv7ccb7W8Q/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;, только лишь добавили предварительную обработку для нашего параметра. Теперь перед тем как строка параметр “уйдет” в переменную, в ней автоматически будут заменяться все точки с запятой (;) на запятые (,). И теперь вместо: &lt;br /&gt;
&lt;em&gt;$(ePrevAmount( Type={Income} &amp;gt;*&amp;lt; Aggregated={Yes} &amp;gt;*&amp;lt; CostCenter={NY} ))&lt;/em&gt; &lt;br /&gt;
Мы с легкостью можем писать вот так:&lt;br /&gt;
&lt;em&gt;$(ePrevAmount( Type={Income}&lt;strong&gt;;&lt;/strong&gt; Aggregated={Yes}&lt;strong&gt;;&lt;/strong&gt; CostCenter={NY} ))&lt;/em&gt;&lt;br /&gt;
или вот так:&lt;br /&gt;
&lt;em&gt;$(ePrevAmount( City={'NY'&lt;strong&gt;;&lt;/strong&gt;'Boston'&lt;strong&gt;;&lt;/strong&gt;'Chicago'} ))&lt;/em&gt;&lt;br /&gt;
взамен вот этому:&lt;br /&gt;
&lt;em&gt;$(ePrevAmount( City={NY} &amp;gt;+&amp;lt; City={Boston} &amp;gt;+&amp;lt; City={Chicago} ))&lt;/em&gt;&lt;br /&gt;
Вот и весь подход! Просто и со вкусом &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh4.ggpht.com/-eQRgaqvc444/UA_CqJhsXAI/AAAAAAAAAUA/fCv7ccb7W8Q/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;. &lt;br /&gt;
У кого будут идеи/рекомендации как еще можно упростить нашу жизнь в описанной ситуации – прошу обозначить сие в комментариях &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh4.ggpht.com/-eQRgaqvc444/UA_CqJhsXAI/AAAAAAAAAUA/fCv7ccb7W8Q/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;. &lt;br /&gt;
Спасибо за внимание. &lt;/div&gt;
&lt;div class="wlWriterHeaderFooter" style="margin: 0px; padding: 0px 0px 0px 0px;"&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;script type="text/javascript"&gt;
 tweetmeme_screen_name = 'sparur'; 
&lt;/script&gt; &lt;script src="http://tweetmeme.com/i/scripts/follow.js" type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh4.ggpht.com/-eQRgaqvc444/UA_CqJhsXAI/AAAAAAAAAUA/fCv7ccb7W8Q/s72-c/wlEmoticon-smile2.png?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">7</thr:total></item><item><title>Скрытые возможности Мастера встроенных данных (Inline Data Wizard)</title><link>http://qvrus.blogspot.com/2012/07/inline-data-wizard-improvements.html</link><category>Обзор</category><category>Скрипт</category><author>noreply@blogger.com (sparur)</author><pubDate>Tue, 24 Jul 2012 09:56:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-848997427805472688</guid><description>&lt;div align="justify"&gt;
Приветствую, господа.&lt;/div&gt;
&lt;div align="justify"&gt;
Сегодня совсем небольшой пост об одной достаточно полезной, но глубоко запрятанной “фишке” Мастера встроенных данных (Inline Data Wizard). В своей работе я часто использую данный мастер, например, для заполнения небольших таблиц соответствия (мап-таблиц). И каждый раз встает вопрос “Как заполнить первое поле в таблице соответствия (те значения которые мы используем в сравнении)?”. В случае небольшого количества достаточно простых значений это легко и просто делается, что называется, “ручками”. А вот в более сложных&amp;nbsp; ситуациях приходится придумывать обходные пути для решения этой простейшей задачи. Например, создавать отдельный список значений на базе поля для сравнения, копировать значения из этого списка в буфер обмена и потом вставлять в мастер встроенных данных… Согласитесь, не самый простой путь… А теперь переходим к сути сегодняшнего поста &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh5.ggpht.com/-QN2KaL077ag/UA10MFnPANI/AAAAAAAAAS8/W1oZJUtBDKk/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;.&lt;/div&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;div align="justify"&gt;
Оказывается все давно придумано за нас &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh5.ggpht.com/-QN2KaL077ag/UA10MFnPANI/AAAAAAAAAS8/W1oZJUtBDKk/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;. Для решения такой тривиальной задачи есть специальная опция мастера. Данная опция называется “Мастер импорта данных документа” (Import Document Data Wizard) и спрятана в основном меню Мастера встроенных данных под пунктом “Инструменты” (Tools) –&amp;gt; “Данные документа” (Document Data). Вызвав мастер импорта данных документа из мастера встроенных данных (вот такая вот матрешка получается &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh5.ggpht.com/-QN2KaL077ag/UA10MFnPANI/AAAAAAAAAS8/W1oZJUtBDKk/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;), мы увидим окно со списком всех полей из документа:&lt;a href="https://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/InlineDataWizardEnhancements/InlineWizardEnh_pic1.JPG" target="_blank" title="рис.1 - Мастер импорта данных документа"&gt;&lt;img alt="InlineWizardEnh_pic1" border="0" height="178" src="http://lh5.ggpht.com/-QCPG4dbQfg8/UA44L1P311I/AAAAAAAAAT0/dm9szQR7zqM/InlineWizardEnh_pic1%25255B1%25255D.jpg?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin-left: auto; margin-right: auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="InlineWizardEnh_pic1" width="244" /&gt;&lt;/a&gt;&lt;br /&gt;
Да, тут следует лишний раз напомнить о том, что в список попадут только уже загруженные в документ поля. То есть если вы только что написали какой-то кусок скрипта и не перегрузили qvw-документ, то вы его в списке доступных для выбора полей, конечно, же не увидите. Далее выбираем необходимое нам поле, и нажимаем ОК. После чего мы увидим вот такую картинку: &lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;a href="https://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/InlineDataWizardEnhancements/InlineWizardEnh_pic2.JPG" target="_blank" title="рис.2 - Мастер встроенных данных"&gt;&lt;img alt="InlineWizardEnh_pic2" border="0" height="179" src="http://lh5.ggpht.com/-Cz6EtDb24DQ/UA10hKoDg-I/AAAAAAAAAT4/CxssaEmQSdM/InlineWizardEnh_pic2%25255B1%25255D.jpg?imgmax=800" style="background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin-left: auto; margin-right: auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;" title="InlineWizardEnh_pic2" width="244" /&gt;&lt;/a&gt;   &lt;br /&gt;
Другими словами, вы получите список из всех значений вашего поля. Вот такой вот, на мой взгляд, простенький, но бывает очень полезный инструмент. Пользуйтесь на здоровье!&lt;br /&gt;
Надеюсь для кого-то данный пост был полезен и вы не зря потратили свое время на данном ресурсе &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh5.ggpht.com/-QN2KaL077ag/UA10MFnPANI/AAAAAAAAAS8/W1oZJUtBDKk/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;&lt;br /&gt;
&lt;div class="wlWriterHeaderFooter" style="margin: 0px; padding: 0px 0px 0px 0px;"&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;script type="text/javascript"&gt;
 tweetmeme_screen_name = 'sparur'; 
&lt;/script&gt; &lt;script src="http://tweetmeme.com/i/scripts/follow.js" type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh5.ggpht.com/-QN2KaL077ag/UA10MFnPANI/AAAAAAAAAS8/W1oZJUtBDKk/s72-c/wlEmoticon-smile2.png?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Пополнение в полку литературном.</title><link>http://qvrus.blogspot.com/2012/06/new-books.html</link><category>Книги</category><category>Новости</category><category>Обзор</category><category>Разное</category><author>noreply@blogger.com (sparur)</author><pubDate>Mon, 25 Jun 2012 13:50:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2968734577550406704</guid><description>&lt;div align="justify"&gt;
И снова здравствуйте, господа хорошие.&lt;/div&gt;
&lt;div align="justify"&gt;
Сегодня я хочу рассказать о том, что изменилось на книжном рынке QlikView с момента &lt;a href="http://qvrus.blogspot.com/2011/11/qlikview-book.html" target="_blank"&gt;прошлой публикации&lt;/a&gt; на эту тему. А новости, довольно-таки интересные…&lt;/div&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;div align="justify"&gt;
За это время в свет вышло две новые книги по тематике QlikView. Одна из них, так же, как и описываемая в &lt;a href="http://qvrus.blogspot.com/2011/11/qlikview-book.html" target="_blank"&gt;предыдущем обзоре&lt;/a&gt; “Hello QlikView!”, рассчитана на аудиторию Qlik-новичков. Эта книга написана автором блога &lt;a href="http://practical-qlikview.com/" target="_blank"&gt;Practical QlikView&lt;/a&gt; и имеет аналогичное название. На сайте вы можете найти ссылки для покупки. На данный момент книгу можно приобрести на &lt;a href="http://amazon.com/" target="_blank"&gt;Amazon&lt;/a&gt;’е &lt;a href="http://www.amazon.com/Practical-QlikView-ebook/dp/B007QMMDL4" target="_blank"&gt;американском&lt;/a&gt; (по цене 9.99 $) и &lt;a href="http://www.amazon.co.uk/Practical-QlikView-ebook/dp/B007QMMDL4" target="_blank"&gt;британском&lt;/a&gt; (5.14 £). И, кстати, сегодня книга доступна только в электронном варианте, так называемый, Kindle Edition.&lt;/div&gt;
&lt;div align="justify"&gt;
Вторая книга, на мой взгляд, должна быть более интересна и познавательна, по крайней мере, на это намекает ее название &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh3.ggpht.com/-m3f_zbbR7BM/T-gzWHqagHI/AAAAAAAAASs/v5hvvpnnOVg/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;&amp;nbsp; - &lt;strong&gt;&lt;em&gt;QlikView for Enterprises&lt;/em&gt;&lt;/strong&gt;. Она, в отличие от предыдущих, издается в бумажном виде. На &lt;a href="http://www.qv4ent.com/" target="_blank"&gt;официальном сайте&lt;/a&gt;, посвященному данной работе, вы сможете ознакомиться с &lt;a href="http://www.qv4ent.com/excerpt/" target="_blank"&gt;выдержками&lt;/a&gt; из глав и &lt;a href="http://www.qv4ent.com/buy/" target="_blank"&gt;способами приобретения&lt;/a&gt;. Отдельно хочется отметить наличие &lt;a href="http://www.qv4ent.com/praise/" target="_blank"&gt;отзывов&lt;/a&gt; на данное издание. Один из них был получен от &lt;a href="http://robwunderlich.com/" target="_blank"&gt;Rob Wunderlich&lt;/a&gt;’а - известного &lt;a href="http://qlikviewnotes.blogspot.com/" target="_blank"&gt;Qlik-блогера&lt;/a&gt; и автора сборника “кулинарных рецептов” на QlikView. Цена сего счастья 40$ или 25 £ (если заказывать на британском Амазоне).&lt;/div&gt;
&lt;div align="justify"&gt;
Это, что называется, можно “пощупать”. И еще одна книга &lt;a href="http://www.amazon.co.uk/QlikView-11-Inside-George-Peck/dp/0071783164/" target="_blank"&gt;QlikView 11 from the Inside&lt;/a&gt; была анонсирована и готовится к печати. Если верит все тому же &lt;a href="http://www.amazon.co.uk/" target="_blank"&gt;Amazon’у&lt;/a&gt;, то выход бумажной версии ожидается 1 августа 2013. На мой взгляд, событие несколько затянуто, но вряд ли мое мнение может это как-то изменить &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh3.ggpht.com/-m3f_zbbR7BM/T-gzWHqagHI/AAAAAAAAASs/v5hvvpnnOVg/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;. Данная книга, насколько я понимаю, будет максимально интересна всем специалистам QlikView (не только новичкам). Это пока первая анонсированная книга, которая будет издаваться под чутким руководством &lt;a href="http://draft.blogger.com/www.qliktech.com" target="_blank"&gt;QlikTech&lt;/a&gt;’а.&lt;/div&gt;
&lt;div class="wlWriterHeaderFooter" style="margin: 0px; padding: 0px 0px 0px 0px;"&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;script type="text/javascript"&gt;
 tweetmeme_screen_name = 'sparur'; 
&lt;/script&gt; &lt;script src="http://tweetmeme.com/i/scripts/follow.js" type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh3.ggpht.com/-m3f_zbbR7BM/T-gzWHqagHI/AAAAAAAAASs/v5hvvpnnOVg/s72-c/wlEmoticon-smile2.png?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Консультационная группа АТК: FAQ'инг "ляп"</title><link>http://qvrus.blogspot.com/2011/11/atk-consulting-groupfaq-error.html</link><category>QlikView 11</category><category>Новости</category><author>noreply@blogger.com (sparur)</author><pubDate>Fri, 25 Nov 2011 16:30:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-8023783688618932377</guid><description>&lt;div style="text-align: justify;"&gt;
Коллеги, и снова здравствуйте.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Буквально только что я закончил знакомится с очередным "замечательным" творением компании "&lt;a href="http://www.atkcg.ru/" target="_blank"&gt;Консультационная группа АТК&lt;/a&gt;" под названием &lt;a href="http://qliksolutions.ru/press/blog-o-qlikview/qlikview-11-FAQ/" target="_blank"&gt;"QlikView 11: FAQ"&lt;/a&gt;. Не смог удержаться и не рассказать о своих впечатлениях...&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Во-первых, полнота сего материала оставляет желать лучшего и не идет ни в какое сравнение с &lt;a href="http://community.qlikview.com/docs/DOC-2581" target="_blank"&gt;официальной версией&lt;/a&gt;, но это еще цветочки... Ягодка в том, что один из самых раскрученных российских партнеров, занимающихся продажей лицензий и внедрением QlikView, предоставляет, мягко говоря, некорректную информацию о новой версии данного продукта. Чем вводит в заблуждение и нас с Вами и все остальное русскоязычное QlikView-сообщество.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Суть "ляпа"...&lt;/div&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
В своей версии&amp;nbsp;&lt;a href="http://qliksolutions.ru/press/blog-o-qlikview/qlikview-11-FAQ/" target="_blank"&gt;"QlikView 11: FAQ"&lt;/a&gt;&amp;nbsp;компания &lt;a href="http://www.atkcg.ru/" target="_blank"&gt;"Консультационная группа АТК"&lt;/a&gt; заверяет нас в том, что новый функционал по приглашению пользователей (Collaborative Sessions) очень существенно ограничен. А &amp;nbsp;именно, не позволяет приглашенному пользователю совершать никаких активных действий над дэшбордом, т.е. сессия предназначена исключительно для просмотра.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
А по словам вот&amp;nbsp;&lt;a href="http://community.qlikview.com/people/edr" target="_blank"&gt;этой тетеньки&lt;/a&gt;&amp;nbsp;все намного веселее и прекраснее :). Как говорится, вот вам&amp;nbsp;&lt;a href="http://community.qlikview.com/docs/DOC-2581#Are_collaborative_sessions_readonly_for_the_invited_participants" target="_blank"&gt;пруф линк&lt;/a&gt;. А за более наглядным подтверждением правоты Эрики можно пойти &lt;a href="http://www.youtube.com/watch?v=mZX9-L1DGR8&amp;amp;feature=share" target="_blank"&gt;сюда&lt;/a&gt;.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Что можно сказать еще по этому поводу? Вроде столько времени было на то, чтобы пощупать новую версию самостоятельно (программа бета-тестирования для партнеров открыта была еще чуть ли не в начале лета), ну или на худой конец, сверится с официальными источниками, ан нет...&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
З.Ы. Я надеюсь, что авторы из АТК все-таки в скором времени поправят свои недочеты, а глядишь (чем черт не шутит) возьмут да и переведут &lt;a href="http://community.qlikview.com/docs/DOC-2581" target="_blank"&gt;полную версию FAQ'а&lt;/a&gt;&amp;nbsp;:). А пока, как говорится, &amp;nbsp;"на память" :) я позволил себе сохранить страничку&amp;nbsp;&amp;nbsp;с &amp;nbsp;текущей версией. Кому интересно - можете всегда полюбоваться ей &lt;a href="https://www.evernote.com/shard/s54/sh/d9eb3b6d-bf28-4042-9f4b-8b9b8df88b0d/d06d3cc4f61620496032e354cdb3a898" target="_blank"&gt;здесь&lt;/a&gt;.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
З.З.Ы. Пост ни в коем разе не проплачен, и являет собой исключительно мою личную реакцию на описываемый "ляп".&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Qlikview 11 релиз.</title><link>http://qvrus.blogspot.com/2011/11/qlikview-11-available.html</link><category>QlikView 11</category><category>Новости</category><author>noreply@blogger.com (sparur)</author><pubDate>Thu, 24 Nov 2011 15:16:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-5998739765815386210</guid><description>&lt;div style="text-align: justify;"&gt;
Снова приветствую всех вас, коллеги.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Еще одна "небольшая" новость - вчера наконец-таки стала доступна простым смертным новая версия - QlikView 11. Скачать можно &lt;a href="http://global.qlikview.com/download/" target="_blank"&gt;отсюда&lt;/a&gt;. Новых плюшек, как всегда, хватает. Так что, в скором времени, постараюсь сделать обзоры самых интересных на мой взгляд нововведений.&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total></item><item><title>Первая QlikView книга.</title><link>http://qvrus.blogspot.com/2011/11/qlikview-book.html</link><category>Новости</category><author>noreply@blogger.com (sparur)</author><pubDate>Thu, 24 Nov 2011 14:48:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2711962735326564048</guid><description>&lt;div style="text-align: justify;"&gt;
Всем привет.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Небольшая новость, хотя, возможно, она для многих уже и не новость вовсе (все руки не доходили чиркнуть пару строк)....&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
В общем, появилась первая в природе книжка, посвященная исключительно работе с QlikView - &lt;b&gt;Руководство для начинающих в QlikView&lt;/b&gt;. На данный момент, насколько я понимаю, в твердом экземпляре (в смысле на бумаге) она не издана, а доступна лишь в электронном виде. Судя по всему, книжка из серии "для чайников", и опытным Qlik'оводам мало будет полезна. Однако, для начинающих - это как минимум еще один источник полезной информации для освоения нового продукта. Сам я, к сожалению, данное произведение не глядел, если не считать небольшую &lt;a href="http://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/The_First_QV_Book/Hello_QlikView_Ebook_preview.pdf" target="_blank"&gt;превьюшку&lt;/a&gt;, поэтому ничего более конкретного &amp;nbsp;
пока
&amp;nbsp;сказать не могу.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Для особо заинтересованных прикупить сие творение можно за &lt;b&gt;9.99&lt;/b&gt; американских рублей:&lt;/div&gt;
&lt;ul align="justify"&gt;
&lt;li&gt;на &lt;a href="http://www.amazon.com/Hello-QlikView-Beginners-Guide-ebook/dp/B005UNJKMQ/ref=sr_1_1?ie=UTF8&amp;amp;qid=1322131433&amp;amp;sr=8-1" target="_blank"&gt;Amazon&lt;/a&gt;'е (если у вас есть их чудо Kindle)&lt;/li&gt;
&lt;li&gt;в &lt;a href="http://www.qvapps.com/en/ebooks/hello-qlikview-a-beginners-guide-to-qlikview.html" target="_blank"&gt;QlikView App Store&lt;/a&gt; (pdf-версия)&lt;/li&gt;
&lt;/ul&gt;
&lt;div style="text-align: justify;"&gt;
До скорых встреч и полезного вам всем&amp;nbsp;
чтения
.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">11</thr:total></item><item><title>Строки-дубликаты в QlikView таблицах</title><link>http://qvrus.blogspot.com/2011/11/duplicate-rows-in-qlikview-tables.html</link><category>Скрипт</category><category>Функции</category><author>noreply@blogger.com (sparur)</author><pubDate>Mon, 7 Nov 2011 15:56:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2781181688488889947</guid><description>&lt;div align="justify"&gt;
Всем привет. &lt;/div&gt;
&lt;div align="justify"&gt;
Как часто при разработке того или иного чарта вы сталкиваетесь с ситуацией, когда видите значения в один или может быть даже в несколько раз превышающие ожидаемые вами величины? У меня и моих коллег на проекте это случается достаточно часто. И вот вы копаетесь в скрипте, просматриваете исходные данные, в надежде понять, что же вы не так сделали, где кроется отгадка… Причем частенько и скрипт и данные могут быть совсем простыми и казалось бы ошибиться-то негде…&amp;nbsp; ан нет – цифири не бьются в разы… И после долгих, мучительных и, зачастую, не очень успешных поисков, в голову наконец-то приходит мысля о за двоениях в факт-таблице (мне почему-то эта мысль приходит обычно далеко не в первых рядах). Вопрос как их отловить, так чтобы цифири в чартах таки стали красивыми и ожидаемыми нами?&amp;nbsp; &lt;/div&gt;
&lt;div align="justify"&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align="justify"&gt;
Я упомянул, про за двоения в факт-таблицах, но, конечно, они могут встречаться и в справочниках. Однако, такие дубликаты обычно не так критичны, потому что они не оказывают влияние на калькулируемые величины. Как я уже сказал, эти злосчастные за двоения в фактах обычно не так просто обнаружить ни при помощи чартов, ни при использовании простой таблицы (TableBox). Ведь в чартах мы получаем уже агрегированные значения, а TableBox вообще, по сути своей, является сложным списком значений, состоящим из нескольких полей &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh3.ggpht.com/-g0neZLbbQTg/TrfEgLxjUpI/AAAAAAAAAP8/aCiPNC7WwBo/wlEmoticon-smile%25255B2%25255D.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;. В том смысле, что данный страничный объект, также как и список, отображает только уникальные значения. Для борьбы с такими ситуациями в нашем распоряжении есть замечательная функция &lt;strong&gt;RowNo()&lt;/strong&gt; (НЕ ПУТАТЬ с RecNo()), которая индексирует каждую строчку в результирующей факт-таблице. Перефразируя немного рекламу из 90-х, решение кроется во фразе: &lt;strong&gt;&lt;em&gt;“Просто добавь RowNo() !”&lt;/em&gt;&lt;/strong&gt; &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh3.ggpht.com/-g0neZLbbQTg/TrfEgLxjUpI/AAAAAAAAAP8/aCiPNC7WwBo/wlEmoticon-smile%25255B2%25255D.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;. Делаю я это обычно примерно вот так:&lt;/div&gt;
&lt;div align="justify" class="qvscript"&gt;
RENAME TABLE FactTable TO tmpTable;      &lt;br /&gt;
FactTable:       &lt;br /&gt;
LOAD *, RowNo() as RowNo RESIDENT tmpTable;       &lt;br /&gt;
DROP TABLE tmpTable; 
&lt;/div&gt;
&lt;div align="justify"&gt;
На этом позвольте закончить мой небольшой поток мысли на заданную тему &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh3.ggpht.com/-g0neZLbbQTg/TrfEgLxjUpI/AAAAAAAAAP8/aCiPNC7WwBo/wlEmoticon-smile%25255B2%25255D.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;. До скорой встречи на страницах этого блога! &lt;/div&gt;
&lt;div class="wlWriterHeaderFooter" style="margin: 0px; padding: 0px 0px 0px 0px;"&gt;
&lt;br /&gt;
&lt;script type="text/javascript"&gt;
 tweetmeme_screen_name = 'sparur'; 
&lt;/script&gt; &lt;script src="http://tweetmeme.com/i/scripts/follow.js" type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh3.ggpht.com/-g0neZLbbQTg/TrfEgLxjUpI/AAAAAAAAAP8/aCiPNC7WwBo/s72-c/wlEmoticon-smile%25255B2%25255D.png?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Explainum Feeds aka QlikComment</title><link>http://qvrus.blogspot.com/2011/10/explainum-feeds-aka-qlikcomment.html</link><category>QlikView 10</category><category>Обзор</category><category>Расширения</category><author>noreply@blogger.com (sparur)</author><pubDate>Fri, 21 Oct 2011 09:00:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2177390562861413410</guid><description>&lt;div align="justify"&gt;
Коллеги, как Вы, наверное, заметили, я решил немного подкорректировать изначальный план и разбить свой рассказ на два отдельных поста. Первая часть целиком и полностью была посвящена проекту &lt;a href="http://explainum.com/"&gt;Explainum&lt;/a&gt;, а сейчас я хочу сконцентрироваться исключительно на деталях, а именно на специальном расширении для &lt;a href="http://www.qlikview.com/ru"&gt;QlikView&lt;/a&gt;…&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;em&gt;&lt;strong&gt;И так, что из себя представляет проект &lt;/strong&gt;&lt;/em&gt;&lt;a href="http://feeds.explainum.com/"&gt;&lt;em&gt;Explainum Feeds&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;strong&gt;?&lt;/strong&gt;&lt;/em&gt; &lt;/div&gt;
&lt;div align="justify"&gt;
На мой взгляд, это логичное ответвление &lt;a href="http://explainum.com/"&gt;основного проекта&lt;/a&gt; в сторону специализации на конкретные BI системы, в данном случае, на &lt;a href="http://www.qlikview.com/ru"&gt;QlikView&lt;/a&gt;. &lt;a href="http://feeds.explainum.com/"&gt;Explainum Feeds&lt;/a&gt; - это сервис, предоставляющий возможность создавать комментарии в ваших QlikView приложениях. Причем не просто комментарии, а комментарии, привязанные к конкретным выборкам, иными словами, контекстно-зависимые. Сервис на данный момент находится на стадии бета-тестирования и &lt;a href="http://http//feeds.explainum.com/Account/Register"&gt;регистрация&lt;/a&gt; открыта для всех желающих. Из заявленных возможностей данного сервиса особо хочется отметить:&lt;/div&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;img align="middle" src="http://www.dotnetscraps.com/samples/bullets/033.gif" /&gt;&amp;nbsp;&amp;nbsp; Общая лента комментариев для разных QlikView приложений и даже QlikView серверов;       &lt;br /&gt;
&lt;img align="middle" src="http://www.dotnetscraps.com/samples/bullets/033.gif" /&gt;&amp;nbsp;&amp;nbsp; наличие тэгов, позволяющих разделять/объединять потоки для разных отделов, стран, языков и т.п.;       &lt;br /&gt;
&lt;img align="middle" src="http://www.dotnetscraps.com/samples/bullets/033.gif" /&gt;&amp;nbsp;&amp;nbsp; возможность привязки к различным пользователям;       &lt;br /&gt;
&lt;img align="middle" src="http://www.dotnetscraps.com/samples/bullets/033.gif" /&gt;&amp;nbsp;&amp;nbsp; работа как в режиме Desktop’а (локально), так и возможность инсталляции на QlikView сервере;       &lt;br /&gt;
&lt;img align="middle" src="http://www.dotnetscraps.com/samples/bullets/033.gif" /&gt;&amp;nbsp;&amp;nbsp; возможность использования нескольких потоков в рамках одного приложения.&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
Что касается технической стороны вопроса, то &lt;a href="http://feeds.explainum.com/"&gt;Explainum Feeds&lt;/a&gt; – это некий интернет сервер, хранящий ваши комментарии (Clouds нынче в моде, как ни крути) и отдельное QlikView расширение, которое взаимодействует с этим облаком и вашими приложениями. Ну а раз мы имеем дело с QlikView расширениями, то все это актуально начиная с 10ой версии и никак не раньше. Более того, на сегодняшний день сервис работает исключительно с QlikView 10 &lt;strong&gt;SR2 &lt;/strong&gt;и Internet Explorer версии 8. Не густо, но, как говорится, что имеем… Все-таки сервис на данный момент в бете, и ждать поддержки всего и вся, я думаю, пока преждевременно...&lt;/div&gt;
&lt;div align="justify"&gt;
Теперь давайте перейдем уже к конкретным вещам, а именно к инсталляции и использованию данного сервиса. Первым делом вам необходимо загрузить себе последнюю версию расширения с &lt;a href="http://bit.ly/QV_comments"&gt;сайта проекта&lt;/a&gt;.&lt;/div&gt;
&lt;div align="justify" class="info"&gt;
Небольшая ремарка к данному пункту:&lt;br /&gt;
по умолчанию у вас должна стартовать закачка файлика с расширением &lt;strong&gt;.qar&lt;/strong&gt;. Однако, у меня в некоторых случаях браузер “чудным” образом понимал, что .qar это есть старый добрый ZIP-архив и начинал загружать именно в виде ZIP’а. Если вдруг у вас произойдет нечто подобное, то после загрузки файла просто смените расширение с zip на qar.&lt;/div&gt;
&lt;div align="justify"&gt;
Далее, если у вас установлен QlikView Desktop 10 SR2, 2 раза кликаем по только что скачанному файлу и произойдет автоматическая инсталляция расширения в нужную директорию. &lt;br /&gt;
Для Win7:&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;em&gt;%USERPROFILE%\AppData\Local\QlikTech\QlikView\Extensions\Objects&lt;/em&gt;&lt;/div&gt;
&lt;div align="justify"&gt;
Следующий шаг – это &lt;a href="http://http//feeds.explainum.com/Account/Register"&gt;регистрация&lt;/a&gt; на сайте, после чего вы получите специальный уникальный ключ (token), по которому сервис будет производить привязку всех ваших комментариев в своем хранилище.&lt;/div&gt;
&lt;div align="justify"&gt;
Далее можно переходить непосредственно к настройке и использованию расширения. Открываем QlikView Desktop, переключаемся в веб-режим и добавляем расширение Feeds на страницу приложения, как обычный страничный объект QlikView. Теперь необходимо настроить параметры вновь созданного объекта, для чего открываем его свойства и видим нечто подобное:&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;img src="http://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/Explainum%20Feeds/pics/pic3.png" /&gt;&lt;/div&gt;
&lt;div align="justify"&gt;
Давайте попробуем разобраться с основными параметрами данного расширения… Как видно на картинке, всего их 4: &lt;/div&gt;
&lt;blockquote&gt;
&lt;div align="justify"&gt;
&lt;br /&gt;
&lt;img align="middle" src="http://www.dotnetscraps.com/samples/bullets/033.gif" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;Listbox IDs &lt;/strong&gt;&lt;span style="color: #4b6320;"&gt;– в данном поле через запятую необходимо указать идентификаторы всех списков значений (listbox), в контексте которых будет происходит привязка комментариев. Поле является обязательным к заполнению.&amp;nbsp; &lt;/span&gt;
&lt;br /&gt;
&lt;img align="middle" src="http://www.dotnetscraps.com/samples/bullets/033.gif" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;Username textbox ID&lt;/strong&gt; &lt;span style="color: #4b6320;"&gt;– здесь указывается идентификатор текстового объекта, в котором должна содержится строка, определяющая имя пользователя для привязки комментариев. Например, можно задать имя пользователя обычным строкой, либо использовать встроенную функцию OSUser() для определения текущего пользователя приложения QlikView. Данное поле не обязательно для заполнения, в случае отсутствия данной настройки все комментарии будут автоматически привязываться к пользователю &lt;strong&gt;anonymous&lt;/strong&gt;           &lt;/span&gt;
&lt;br /&gt;
&lt;img align="middle" src="http://www.dotnetscraps.com/samples/bullets/033.gif" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;Token &lt;span style="color: #4b6320;"&gt;– &lt;/span&gt;&lt;/strong&gt;&lt;span style="color: #4b6320;"&gt;в этом поле вам необходимо указать ваш личный ключ, который вы получили после регистрации на сайте проекта.          &lt;/span&gt;
&lt;br /&gt;
&lt;img align="middle" src="http://www.dotnetscraps.com/samples/bullets/033.gif" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;Domain-tags&lt;/strong&gt; &lt;span style="color: #4b6320;"&gt;– здесь вы можете указать различный набор тэгов для гибкого управления вашими комментариями. Тэг all проставляется по умолчанию.&lt;/span&gt;&lt;/div&gt;
&lt;/blockquote&gt;
&lt;div align="justify"&gt;
Отдельно хочется заострить внимание на первом параметре, так как с ним не все так просто… Во-первых, несмотря на то, что в настройках необходимо указывать идентификатор(ы) списков значений (listbox’ов), привязка ваших комментариев происходит не на основании этих самых идентификаторов, а на основе наименования (текст заголовка) списка. Поэтому в списке значений &lt;strong&gt;обязательно&lt;/strong&gt; должен быть активирован заголовок объекта (см. последнюю закладку в свойствах объекта), не забываем про это. Во-вторых, &lt;a href="http://feeds.explainum.com/"&gt;Explainum Feeds&lt;/a&gt; оперирует двумя типами списков значений: привязанный (attached field) и полу-привязанный (semi-attached field). Различия между этими двумя типами списков мы разберем далее на небольшом примере.&lt;/div&gt;
&lt;div align="justify"&gt;
После настройки данных параметров можно приступать к использованию нового функционала, то есть начинать непосредственно создавать свои комментарии.&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;em&gt;&lt;strong&gt;Как же это использовать?&lt;/strong&gt;&lt;/em&gt; &lt;br /&gt;
Сейчас мы сделаем простенький пример, который нам поможет понять всю полезность данного расширения. Но для упрощения нашей задачи давайте воспользуемся одним из 2х подготовленных демонстрационных примеров, доступных на сайте проекта. Я выбрал файл про американских президентов, который в свою очередь реализован на базе стандартного приложения Presidents.qvw. Так вот в скачанном по &lt;a href="http://dl.dropbox.com/u/9133092/Presidents_commented.qvw"&gt;этой ссылке&lt;/a&gt; файле я создал 2 новых объекта Feeds. Свойства первого объекта (правый верхний Comments (RU)) вы видели на предыдущем скриншоте, свойства второго вот:&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;img src="http://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/Explainum%20Feeds/pics/pic4.png" /&gt;&lt;/div&gt;
&lt;div align="justify"&gt;
Как видно из этих 2х скриншотов, оба объекта “смотрят” на одни и те же списки значений – listbox’ы (пока не обращаем внимание на символ ‘~’), имеют привязку к одному и тому же текстовому объекту, описывающего пользователя, та же ситуация с полем Token. А вот тэги у меня разные, комментарии из первого объекта привязываются к тэгу RU, второго – к EN. Таким образом, я хочу отделять пользовательские комментарии сделанные на русском и английском языке. &lt;/div&gt;
&lt;div align="justify"&gt;
Теперь вернемся к той самой тильде (‘~’), &lt;strike&gt;на которую мы временно забили&lt;/strike&gt; про которую мы временно забыли. Данный символ, предваряющий идентификатор списка значений, говорит сервису о том, что разработчик (то есть мы с вами) желает использовать для текущего потока комментариев, так называемое “semi-attached” (“полу-привязанное”) поле (вспоминаем два типа списков в настройках потока). &lt;/div&gt;
&lt;div align="justify"&gt;
&lt;em&gt;&lt;strong&gt;Так в чем же все-таки отличие между двумя этими типами?&lt;/strong&gt;&lt;/em&gt;       &lt;br /&gt;
Все достаточно просто... “semi-attached” поле – это поле, которое прописывается в контекст комментариев только в том случае, если сделана определенная выборка по нему.&amp;nbsp; Иными словами, по умолчанию (без символа тильды) привязка комментариев происходит по всем возможным значениям данного списка - как по “зеленым” (выбранным) значениям, так и по “белым” (возможным). А в случае с “semi-attached” – привязка идет только по “зеленым” (выбранным) значениям.&lt;/div&gt;
&lt;div align="justify"&gt;
Приведу 2 скриншота наглядно демонстрирующих эту разницу:&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;a href="http://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/Explainum%20Feeds/pics/pic1.png" title="Нажми для увеличения"&gt;&lt;img height="245" src="http://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/Explainum%20Feeds/pics/pic1.png" width="414" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
В первой ситуации мы создали по одному комментарию в каждом из потоков (на русском и английском) при этом выборка была произведена только в списке Name (LB1456). Несмотря на это привязка наших комментариев произведена по обоим полям, так как список Party (LB1454) используется в потоке в полноценном режиме.&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;a href="http://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/Explainum%20Feeds/pics/pic2.png" title="Нажми для увеличения"&gt;&lt;img height="251" src="http://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/Explainum%20Feeds/pics/pic2.png" width="424" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
Во втором случае мы, наоборот, создали комментарии при текущей выборке только по одному полю Party, а список значений Name остался без нашего внимания. Учитывая, что Name (LB1456) в настройках потоков указан с тильдой (‘~’), то привязка новых комментариев прошла только по полю Party.&lt;/div&gt;
&lt;div align="justify"&gt;
Вот как то так… Надеюсь мне удалось снять все вопросы относительно использования нюансов параметра &lt;strong&gt;Listbox IDs&lt;/strong&gt;. Теперь давайте попробуем разобраться &lt;em&gt;&lt;strong&gt;зачем вообще нужны эти “заморочки” с тильдой и разными способами привязки комментариев?&lt;/strong&gt;&lt;/em&gt; Представим, что у нас есть некий список, в котором несколько сотен (или даже тысяч) различных значений, и мы указали идентификатор такого списка в свойствах объекта Feeds в “обычном” режиме (без символа ‘~’), т.е. мы создаем поток контекстно-зависимых от значений этого поля комментариев. Далее, не делая никакую выборку по данному списку значений, создаем какой-либо комментарий. В результате наш очередной комментарий должен был бы привязаться ко &lt;u&gt;&lt;strong&gt;всем&lt;/strong&gt;&lt;/u&gt; сотням(тысячам) значениям из указанного в настройках списка. Данное поведение не есть оптимальное и достаточно накладное с точки зрения необходимости хранения всех подобных “хвостов”. Поэтому команда разработчиков решила ввести ряд дополнительных ограничений, которые помогают оградиться от подобных проблем. &lt;/div&gt;
&lt;div align="justify"&gt;
Для начала было введено ограничение на количество списков значений, которое можно указать в свойствах потока. На данном этапе развития проекта оно составляет не более 7 полей. Таким образом у вас есть возможность привязать свои комментарии в контексте &lt;strong&gt;семи&lt;/strong&gt; различных полей, что, на мой взгляд, не так уж и мало. Вторым существенным ограничением является ограничение по количеству значений каждого поля. На сегодня нам позволено использовать до 31 значения для “обычного” контекстного поля (списка значений). Для полей, в которых больше чем 31 значение – необходимо использовать тильду (‘~’), то есть “полу-привязанное” поле. &lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
Вот мы и ответили на вопрос зачем нужна тильда, а заодно и раскрыли с вами еще парочку ограничений, про которые не стоит забывать при работе с этим замечательным сервисом…&lt;/div&gt;
&lt;div align="justify"&gt;
На этом позвольте закончить мой поток связанных и не очень мыслей относительно данного сервиса. &lt;/div&gt;
&lt;div align="justify"&gt;
Всем спасибо за внимание, и отдельное спасибо Дмитрию и его команде за замечательное расширение, позволяющее выйти за рамки стандартных возможностей &lt;a href="http://qlikview.com/ru"&gt;QlikView&lt;/a&gt;. Будем надеяться, что проект не остановится на достигнутом, и в будущем разработчики нас порадуют новыми возможностями и, возможно, интеграцией данного сервиса с другими программными продуктами. По крайней мере, я думаю, это было бы логичным продолжением хорошего начинания.&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;strong&gt;P.S.&lt;/strong&gt; Мой вариант демки вы можете найти &lt;a href="http://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/Explainum%20Feeds/qvw/Presidents_Explainum.qvw"&gt;здесь&lt;/a&gt;.&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;strong&gt;P.P.S.&lt;/strong&gt; Возможно, данный пост заставит меня начать небольшой&amp;nbsp; цикл статей, так или иначе связанных с расширениями и другими дополнительными возможностями, облегчающими жизнь при работе с QlikView. По крайней мере, мысли на эту тему у меня в голове крутятся давно. Осталось самое сложное - найти время на их воплощение (с чем обычно, к сожалению, и возникают проблемы). В общем, ждите новых публикаций…&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div class="wlWriterHeaderFooter" style="margin: 0px; padding: 0px 0px 0px 0px;"&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;script type="text/javascript"&gt;
 tweetmeme_screen_name = 'sparur'; 
&lt;/script&gt; &lt;script src="http://tweetmeme.com/i/scripts/follow.js" type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Explainum – вики для графиков.</title><link>http://qvrus.blogspot.com/2011/10/explainum-wiki-for-charts.html</link><category>Обзор</category><author>noreply@blogger.com (sparur)</author><pubDate>Fri, 21 Oct 2011 08:58:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-7406148402945818870</guid><description>&lt;div align="justify"&gt;
Здравствуйте, коллеги.      &lt;br /&gt;
После полугодичного пребывания в творческом кризисе я все-таки решил порадовать Вас очередным постом, так или иначе связанным с QlikView. Для выхода из творческого анабиоза, как всегда, потребовался "пинок" со стороны (&lt;a href="http://www.linkedin.com/in/dgudkov" target="_blank"&gt;Дмитрий&lt;/a&gt; спасибо тебе за доброе дело &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh6.ggpht.com/-FudO1xuUViI/TqD7dn9DXYI/AAAAAAAAAPw/xvukCvIuqQ4/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt; ).       &lt;br /&gt;
Тема сегодняшнего поста несколько нетипична для&amp;nbsp; этого блога и, скажу честно, немного нова для меня. Я хочу рассказать Вам об одном интересном проекте под названием &lt;a href="http://expalinum.com/" target="_blank"&gt;Explainum&lt;/a&gt; и его логичном, на мой взгляд, ответвлении, непосредственно связанном с QlikView - &lt;a href="http://feeds.explainum.com/" target="_blank"&gt;Explainum Feeds&lt;/a&gt;.       &lt;br /&gt;
Создателем и идейным вдохновителем данного творения является наш киевский товарищ&amp;nbsp; и коллега &lt;a href="http://www.linkedin.com/in/dgudkov" target="_blank"&gt;Дмитрий Гудков&lt;/a&gt;, который также по совместительству оказался автором и владельцем портала &lt;a href="http://bi-review.ru/" target="_blank"&gt;BI-Review&lt;/a&gt;.       &lt;br /&gt;
Основная идея проекта (насколько я ее представляю) - дать возможность пользователю не только анализировать (с чем&amp;nbsp; прекрасно справляется &lt;a href="http://www.qlikview.com/ru/" target="_blank"&gt;QlikView&lt;/a&gt;), но и комментировать&amp;nbsp; ту или иную информацию, которую он видит на своих&amp;nbsp; графиках и витринах данных. А вот с этим согласитесь у &lt;a href="http://www.qlikview.com/ru/" target="_blank"&gt;QlikView&lt;/a&gt;, да и не только у него, есть определенные проблемы. Хотя нет, прошу прощения, по последним сводкам с полей сражений и на этом фронте у &lt;a href="http://en.wikipedia.org/wiki/QlikTech" target="_blank"&gt;QlikTech&lt;/a&gt;'а появляются некоторые локальные достижения, однако, это не тема сегодняшнего дня…       &lt;br /&gt;
Так вот, вернемся к нашим баранам…&amp;nbsp; &lt;a href="http://expalinum.com/" target="_blank"&gt;Explainum&lt;/a&gt; позволяет пользователю писать комментарии на графиках. Делиться этими комментариями с другим пользователям для дальнейшего ознакомления и, возможно, принятия решений на основе этих комментариев. Нечто вроде вики для графиков, не правда ли?. Из доступных на сегодняшний день источников данных стоит выделить &lt;a href="http://www.google.ru/analytics/" target="_blank"&gt;Google Analytics&lt;/a&gt;, &lt;a href="http://www.google.com/finance" target="_blank"&gt;Google Finance&lt;/a&gt;, &lt;a href="http://finance.yahoo.com/" target="_blank"&gt;Yahoo Finance&lt;/a&gt;. Не так много (пока что), но разработчики открыты для диалога и готовы реализовать подключения и к другим источникам данных.&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
Все записи пользователей располагаются, как модно сегодня говорить, в облаке и доступны из любой точки мира (при наличии Интернета естественно). Что касается безопасности и отказоустойчивости, то тут тоже все в полном порядке. Насколько мне известно, сервера любезно предоставлены компанией &lt;a href="http://www.amazon.com/" target="_blank"&gt;Amazon&lt;/a&gt; (&lt;a href="http://ru.wikipedia.org/wiki/Amazon_EC2" target="_blank"&gt;Amazon EC2&lt;/a&gt;). Из дополнительных “плюшек” стоит выделить возможность встроить &lt;a href="http://http//explainum.com/" target="_blank"&gt;Explainum&lt;/a&gt; в свой сайт/блог. В планах у команды реализовать более приземленную работу, в смысле без облака &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh6.ggpht.com/-FudO1xuUViI/TqD7dn9DXYI/AAAAAAAAAPw/xvukCvIuqQ4/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt; (это я так понимаю, для самых параноидальных представителей бизнеса, которые все еще не верят в силу облаков &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh6.ggpht.com/-FudO1xuUViI/TqD7dn9DXYI/AAAAAAAAAPw/xvukCvIuqQ4/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;). В общем, за подробностями прошу &lt;a href="http://explainum.com/" target="_blank"&gt;сюда&lt;/a&gt;. &lt;/div&gt;
&lt;div align="justify"&gt;
А мы, тем временем, продолжим знакомиться с тем самым &lt;a href="http://qlikview.com/ru" target="_blank"&gt;QlikView&lt;/a&gt;’шным ответвлением основного проекта под названием &lt;a href="http://feeds.explainum.com/" target="_blank"&gt;Explainum Feeds&lt;/a&gt;. &lt;a href="http://qvrus.blogspot.com/2011/10/explainum-feeds-aka-qlikcomment.html"&gt;Тыц…&lt;/a&gt;&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;
З.Ы. забыл сказать, пост ни фига не проплачен, хотя и несколько попахивает рекламкой &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh6.ggpht.com/-FudO1xuUViI/TqD7dn9DXYI/AAAAAAAAAPw/xvukCvIuqQ4/wlEmoticon-smile2.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;&lt;/div&gt;
&lt;div align="justify"&gt;
&lt;/div&gt;
&lt;div class="wlWriterHeaderFooter" style="margin: 0px; padding: 0px 0px 0px 0px;"&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;script type="text/javascript"&gt;
 tweetmeme_screen_name = 'sparur'; 
&lt;/script&gt; &lt;script src="http://tweetmeme.com/i/scripts/follow.js" type="text/javascript"&gt;
&lt;/script&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh6.ggpht.com/-FudO1xuUViI/TqD7dn9DXYI/AAAAAAAAAPw/xvukCvIuqQ4/s72-c/wlEmoticon-smile2.png?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Глобальное обновление в списке российских партнеров QlikTech</title><link>http://qvrus.blogspot.com/2011/04/qliktech.html</link><category>Новости</category><author>noreply@blogger.com (sparur)</author><pubDate>Fri, 1 Apr 2011 16:03:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-6542423007305954766</guid><description>Коллеги, здравствуйте.&lt;br /&gt;
&lt;br /&gt;
Во-первых, поздравляю всех Вас с Днем Смеха или как его еще часто называют Днем Дурака!&lt;br /&gt;
&lt;br /&gt;
Во-вторых, спешу поделиться с Вами одной занимательной новостью. Сегодня, совершенно случайно, я в очередной раз решил взглянуть на &lt;a href="http://www.qlikview.com/ru/partners/find-a-partner?partner=&amp;industry=all&amp;region=russia"&gt;полный список&lt;/a&gt; российских партнеров компании &lt;a href="http://www.qlikview.com/"&gt;QlikTech&lt;/a&gt; и получил очень "веселый" результат:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYSJ7RgHuZe7UxKyNlJ63qNC7sZ-lZxuGrd2ydUSBjVoZMVJmhYJ_lz8RHfjjmcbnwUj8RbEgffZcqKFDRC2p81xWJc35-OhLFGAizIKwY22DiSae28cD275RGClxnMEQU98UJZujLDuA/s1600/QlikTech_ListOfRussiaPartners.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="337" width="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYSJ7RgHuZe7UxKyNlJ63qNC7sZ-lZxuGrd2ydUSBjVoZMVJmhYJ_lz8RHfjjmcbnwUj8RbEgffZcqKFDRC2p81xWJc35-OhLFGAizIKwY22DiSae28cD275RGClxnMEQU98UJZujLDuA/s400/QlikTech_ListOfRussiaPartners.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Как Вы видите, список существенно был подкорректирован...&lt;br /&gt;
Для тех, кто не в курсе, то еще недавно этот список включал в себя 9 (!!!) различных компаний. Причем большинство этих компаний-партнеров язык не повернется назвать мелкими игроками ИТ-рынка России: &lt;a href="http://www.croc.ru/"&gt;КРОК&lt;/a&gt;, &lt;a href="http://optima.ru/"&gt;ГК Оптима&lt;/a&gt;, &lt;a href="http://www.luxoft.ru/"&gt;Luxoft&lt;/a&gt;, &lt;a href="http://www.sciener.ru/"&gt;Sciener&lt;/a&gt; и др.&lt;br /&gt;
Нет в обновленном списке и единственного до недавних времен elite-партнера в России &lt;a href="http://www.atkcg.ru"&gt;АТК&lt;/a&gt;...&lt;br /&gt;
Да, собственно, не осталось НИКОГО из той 9ки компаний... Вместо них мы видим совершенно нового игрока на российском рынке внедрения QlikView - компанию &lt;a href="http://www.businessdecision.ru/"&gt;Business &amp; Decision&lt;/a&gt;.&lt;br /&gt;
&lt;b&gt;Что это???&lt;/b&gt;&lt;br /&gt;
Первоапрельская шутка от вендора, временный баг на сайте или же прямой результат "успешной" деятельности всех 9ти партнеров, вместе взятых за прошедший год?&lt;br /&gt;
Я думаю, скоро мы узнаем ответ на этот занимательный вопрос. &lt;br /&gt;
Буду некоторое время следить за этой темой на сайте и обновлять сей пост по мере появления новой информации...&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;ОБНОВЛЕНО 13/04/2011:&lt;/b&gt;&lt;br /&gt;
И все-таки это баг :)&lt;br /&gt;
Ситуация вернулась на круги своя...&lt;br /&gt;
Однако, кое-какие изменения мы все-таки получили :) А именно, Консультационная группа АТК потеряла статус Elite-partner'а и теперь у нас в России не осталось ни одной компании, имеющей право щеголять таким красивым лейблом :) &lt;br /&gt;
&lt;br /&gt;
Интересно, уберут ли АТК упоминания об Элите со своего корпоративного сайта? &lt;br /&gt;
Что-то мне подсказывает - вряд ли :), ну или, по крайней мере, спешить уж точно с этим не будут :)</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYSJ7RgHuZe7UxKyNlJ63qNC7sZ-lZxuGrd2ydUSBjVoZMVJmhYJ_lz8RHfjjmcbnwUj8RbEgffZcqKFDRC2p81xWJc35-OhLFGAizIKwY22DiSae28cD275RGClxnMEQU98UJZujLDuA/s72-c/QlikTech_ListOfRussiaPartners.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total></item><item><title>Опустошаем существующий QVD файл</title><link>http://qvrus.blogspot.com/2011/02/cleanup-qvd.html</link><category>QVD</category><category>Скрипт</category><author>noreply@blogger.com (sparur)</author><pubDate>Wed, 16 Feb 2011 11:05:00 +0300</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-6095159825168275740</guid><description>&lt;p align="justify"&gt;День добрый, коллеги.&lt;/p&gt;&lt;p align="justify"&gt;Сегодня натолкнулся на один интересный &lt;a href="http://www.qlikblog.at/929/qliktip-30/" target="_blank"&gt;пост&lt;/a&gt; нашего австрийского коллеги по цеху. Пост этот об удалении существующих QVD файлов через QlikView скрипт. Штефан (автор блога и поста) рассказывает о целых 3х способах для удаления/очищения QVD. Первые два представляют собой вызов либо внутреннего макроса для удаления, либо вызов батника (командного файла), посредством выполнения команды EXECUTE. Оба этих способа сопряжены с предоставлением особых привилегий либо макро-модулю, либо сценарию загрузки. Штефан более подробно и с картинками об этом честно рассказывает, поэтому здесь я не стану на этом детально останавливаться...&lt;/p&gt;&lt;p align="justify"&gt;А вот что касается третьего способа, то тут у меня есть небольшие мысли относительно небольшой оптимизации процедуры очищения QVD-файла. &lt;/p&gt;&lt;a name='more'&gt;&lt;/a&gt;  &lt;br /&gt;
&lt;p align="justify"&gt;Штефан предлагает вот такую процедуру очистки QVD файла:&lt;/p&gt;&lt;a id="ShowText1" href="javascript:toggle(1);"&gt;&lt;br /&gt;
Показать...&lt;/a&gt;   &lt;br /&gt;
&lt;div style="display: none" id="togText1"&gt;&lt;div class="qvscript"&gt;&lt;br /&gt;
Sub EmptyQvd(qvdFilePath)&lt;br /&gt;
&lt;br /&gt;
1  TRACE --;&lt;br /&gt;
2  TRACE Запуск EmptyQvd для файла $(qvdFilePath);&lt;br /&gt;
&lt;br /&gt;
3  // Сначала проверяем существует ли qvd файл&lt;br /&gt;
4  if (not IsNull(QvdCreateTime(qvdFilePath))) then&lt;br /&gt;
5     TRACE ... файл существует ...;&lt;br /&gt;
&lt;br /&gt;
6     // проверяем есть ли записи в Qvd-файле&lt;br /&gt;
7     if(QvdNoOfRecords(qvdFilePath) &amp;gt; 0) then&lt;br /&gt;
&lt;br /&gt;
8        // Получаем первое поле из QVD для создания «фейкового»&lt;br /&gt;
9        // условия &amp;quot;WHERE EXISTS&amp;quot; &lt;br /&gt;
10       LET vFieldName = QvdFieldName(qvdFilePath,1);&lt;br /&gt;
&lt;br /&gt;
11       //Далее создаем случайное значение, которое не может &lt;br /&gt;
12       //существовать в нашем файле&lt;br /&gt;
13       FakeFieldTable:&lt;br /&gt;
14       LOAD&lt;br /&gt;
15       //Создание «фейкового» значения, которое никогда не может&lt;br /&gt;
16       //быть найдено в имеющемся QVD&lt;br /&gt;
17           'FakeField' &amp;amp; 'ABCDEFGHIJKLMNOPQRSTWXYZ' &amp;amp;&lt;br /&gt;
18                 text(round(rand()))                      as [$(vFieldName)]&lt;br /&gt;
19       AutoGenerate(1);&lt;br /&gt;
&lt;br /&gt;
20       //Создание временной таблицы со случайным названием для предотвращения&lt;br /&gt;
21       //возможных коллизий с уже имеющимися в памяти таблицами       &lt;br /&gt;
22       LET vTempTableName ='_TempTableName' &amp;amp; text(round(rand() * pow(9,10)));&lt;br /&gt;
23&lt;br /&gt;
24&lt;br /&gt;
25       //Загрузка QVD-файла с условием проверки EXISTS , которое не&lt;br /&gt;
26       //может быть найдено в QVD-файле; таким образом результатом&lt;br /&gt;
27       //будет пустая таблица со всеми полями из QVD-файла&lt;br /&gt;
28       $(vTempTableName):&lt;br /&gt;
29       LOAD&lt;br /&gt;
30           *,&lt;br /&gt;
31           1 as loadEnabler&lt;br /&gt;
32       FROM '$(qvdFilePath)' (qvd)&lt;br /&gt;
33       WHERE Exists(&lt;b&gt;&lt;i&gt;[$(vFieldName)]);&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
34       //Сохраняем пустую таблицу в тот же самый QVD-файл&lt;br /&gt;
35       STORE $(vTempTableName) INTO $(qvdFilePath) (qvd);&lt;br /&gt;
36       DROP TABLE $(vTempTableName);&lt;br /&gt;
37       DROP TABLE FakeFieldTable;&lt;br /&gt;
38    end if&lt;br /&gt;
39 else&lt;br /&gt;
40    TRACE ... файл '$(qvdFilePath)' не существует;&lt;br /&gt;
41 end if&lt;br /&gt;
42 TRACE Окончание процедуры EmptyQvd;&lt;br /&gt;
43 TRACE --;&lt;br /&gt;
&lt;br /&gt;
End Sub&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;p align="justify"&gt;В этом коде меня смутил один излишний, на мой взгляд, шаг. А именно, создание временной «фейковой» таблицы FakeFieldTable со случайным значением для последующей проверки со значениями из QVD файла. На мой взгляд, этот шаг (строки с 11ой по 19ую включительно) можно смело исключить из данной процедуры. Ведь, как я уже &lt;a href="http://qvrus.blogspot.com/2009/10/something-about-function-exists.html" target="_blank"&gt;писал&lt;/a&gt;, функция Exists() может выполнять проверку внутри одного и того же оператора загрузки LOAD. Иначе говоря, нам необязательно иметь в памяти предварительно загруженное поле, чтобы использовать его в качестве параметра для функции Exists() (как это делает Штефан). Пример с реализацией выше озвученной мысли можно взять &lt;a href="http://dl.dropbox.com/u/17656392/qvrus.blogspot.com/Posts/CleanupQVD/_files/CleanupQVD.qvw" target="_blank"&gt;здесь&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;p align="justify"&gt;ОБНОВЛЕНО 01-04-2011 (и это не первоапрельская шутка):&lt;br /&gt;
&lt;br /&gt;
Как оказалось есть еще более простой способ обнулить существующий QVD файл и выглядит он примерно вот так:&lt;br /&gt;
&lt;div class="qvscript"&gt;&lt;br /&gt;
QVDTable:&lt;br /&gt;
LOAD *&lt;br /&gt;
FROM '$(qvdFilePath)' (qvd)&lt;br /&gt;
WHERE 1=0;&lt;br /&gt;
&lt;br /&gt;
//Сохраняем пустую таблицу в тот же самый QVD-файл&lt;br /&gt;
STORE QVDTable INTO $(qvdFilePath) (qvd);&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;/p&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>QlikView 10 ВЗЛОМАН!</title><link>http://qvrus.blogspot.com/2011/02/qlikview-10.html</link><category>QlikView 10</category><category>Новости</category><author>noreply@blogger.com (sparur)</author><pubDate>Mon, 14 Feb 2011 15:23:00 +0300</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-4293106532791869203</guid><description>&lt;div align="justify"&gt;Всем привет!&lt;/div&gt;&lt;div align="justify"&gt;Это все-таки случилось! Не устояли ребята из хак-команды Cygnus перед стремительно набирающем популярность BI-продуктом и недолго думая (а может быть долго) взялись за дело. Да так рьяно, что помимо успешного взлома обычной функциональности QlikView Desktop'а, вскрыли еще пару замечательных плюшек...&lt;br /&gt;
Чего только стоит вот эта строчка:&lt;br /&gt;
&lt;/div&gt;&lt;a id="ShowText1" href="javascript:toggle(1);"&gt;&lt;br /&gt;
Показать...&lt;/a&gt; &lt;br /&gt;
&lt;div id="togText1" style="display: none"&gt;&lt;div&gt;SPECIAL_EDITION;CREATE_EXECUTABLE;;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div align="justify"&gt;из их результирующего LEF-файла...&lt;/div&gt;&lt;div align="justify"&gt;Всех кого заинтересовала сия информация, потратив немного времени, легко найдут на просторах сети нужную ссылочку на один из торрент-трекеров. От себя хочу лишь добавить, что можете не трудиться и не качать все файлы из списка. Потому что основную ценность там представляет один единственный текстовый файл &amp;nbsp;с инструкциями и собственно набором LEF-данных... а остальное - это обычный дистрибутив QlikView Desktop'а, доступный для свободного скачивания с сайта &lt;a title="QlikView Free Download" href="http://www.qlikview.com/us/explore/experience/free-download/" target="_blank"&gt;QlikView&lt;/a&gt;.&lt;/div&gt;&lt;div align="justify"&gt;Вот такие вот пироги, господа хорошие :)&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div align="justify"&gt;Интересно, это был заказ или просто реакция на новый январский &lt;a title="BI квадрант" href="http://www.qlikview.com/mq2011" target="_blank"&gt;BI-квадрант&lt;/a&gt; от &lt;a title="Gartner" href="http://www.gartner.com" target="_blank"&gt;Gartner&lt;/a&gt;?&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">281</thr:total></item><item><title>Как можно улучшить QlikView или чего Вам еще не хватает?</title><link>http://qvrus.blogspot.com/2010/11/qlikview.html</link><category>Обзор</category><category>Разное</category><author>noreply@blogger.com (sparur)</author><pubDate>Wed, 17 Nov 2010 16:30:00 +0300</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-6609178207519946618</guid><description>&lt;div align="justify"&gt;Здравствуйте, коллеги и мои уважаемые читатели.&amp;nbsp; &lt;/div&gt;&lt;div align="justify"&gt;На днях в одной известной буржуйской сети я натолкнулся на очень занимательное &lt;a href="http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&amp;amp;discussionID=33973998&amp;amp;gid=72977" target="_blank"&gt;обсуждение&lt;/a&gt;, которое посвящено различным предложениям по улучшению функциональности &lt;a href="http://qlikview.com/" target="_blank"&gt;QlikView&lt;/a&gt;. Тема, на мой взгляд, очень интересная (а судя по количеству комментариев не только на мой &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh5.ggpht.com/_IdbmxMaZqi8/TOPTRJYFLjI/AAAAAAAAANk/8hUyzTsaJlY/wlEmoticon-smile%5B2%5D.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;). Поэтому я решил набросать некую выжимку из этого обсуждения здесь, что называется “special for you” &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh5.ggpht.com/_IdbmxMaZqi8/TOPTRJYFLjI/AAAAAAAAANk/8hUyzTsaJlY/wlEmoticon-smile%5B2%5D.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;, добавив небольшие комментарии по некоторым из пунктов.&lt;br /&gt;
И так, начнем-с по порядку: &lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;     &lt;div align="justify"&gt;Хранилище выражений.&lt;/div&gt;&lt;div align="left"&gt;&lt;i&gt;Здесь, наверное, идет речь об улучшении функциональности доступной по Ctrl+Shift+E.&lt;/i&gt; &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Возможность просмотра структуры таблиц и их содержимого в процессе отладки сценария загрузки. &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Копирование существующих групп полей &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Мастер загрузки данных из резидентных таблиц &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Экспорт модели данных в MS Visio. &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Своя система контроля версий или возможность интеграции со сторонними разработками.&lt;/div&gt;&lt;div align="left"&gt;&lt;i&gt;Судя по тому, что в &lt;/i&gt;&lt;a href="http://www.qlikview.com/partners/technology-partners" target="_blank"&gt;&lt;i&gt;списке технологических партнеров&lt;/i&gt;&lt;/a&gt;&lt;i&gt; &lt;/i&gt;&lt;a href="http://qliktech.com/" target="_blank"&gt;&lt;i&gt;QlikTech&lt;/i&gt;&lt;/a&gt;&lt;i&gt;’а&amp;nbsp; появилась запись о компании &lt;/i&gt;&lt;a href="http://www.noadbi.com/" target="_blank"&gt;&lt;i&gt;NOAD EQM&lt;/i&gt;&lt;/a&gt;&lt;i&gt;, можно сделать вывод о том, что “наш” вендор уже делает какие-то шаги в в этом направлении. &lt;/i&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Инструмент для сравнения двух qvw приложений. &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Поиск в OLE/ODBC мастере загрузки. &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Возможность реализации параллельной загрузки данных. &lt;/div&gt;&lt;div align="left"&gt;&lt;i&gt;Либо, в виде создания дополнительных операторов для распределения потоков, либо загружать параллельно отдельные закладки сценария, либо еще каким-то образом...но фича очень полезная была бы… &lt;/i&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Регулярные выражения&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Qlikview Desktop Reader.&lt;/div&gt;&lt;div align="left"&gt;&lt;i&gt;Инструмент для просмотра любых qvw документов без наличия какой бы то ни было лицензии. Я знаю, что есть/была возможность конвертации qvw в исполняемый файл, однако, она доступна только узкому кругу - внутренним сотрудникам компании QlikTech. Можно было бы "расшарить" эту тулзу дабы не изобретать велосипед.&lt;/i&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Визуальный редактор для построения связей между таблицами&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Копирование переменных.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;     &lt;div align="justify"&gt;Мастер для создания Set Analysis выражений.&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;На этом пока все &lt;img alt="Улыбка" class="wlEmoticon wlEmoticon-smile" src="http://lh5.ggpht.com/_IdbmxMaZqi8/TOPTRJYFLjI/AAAAAAAAANk/8hUyzTsaJlY/wlEmoticon-smile%5B2%5D.png?imgmax=800" style="border-bottom-style: none; border-left-style: none; border-right-style: none; border-top-style: none;" /&gt;. Думаю, обсуждение будет продолжено и новые “хотелки” еще появятся. Поэтому буду стараться пополнять сей список наиболее интересными замечаниями и пожеланиями. Ну и, конечно, буду признателен если вы, мои дорогие читатели, будете делиться своими мыслями по этому поводу в комментариях к этому посту.</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh5.ggpht.com/_IdbmxMaZqi8/TOPTRJYFLjI/AAAAAAAAANk/8hUyzTsaJlY/s72-c/wlEmoticon-smile%5B2%5D.png?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>QlikView 10. Обзор. Серия 3.</title><link>http://qvrus.blogspot.com/2010/07/qlikview-10-whats-new-part-3.html</link><category>QlikView 10</category><category>Диаграммы</category><category>Макет</category><category>Обзор</category><author>noreply@blogger.com (sparur)</author><pubDate>Tue, 6 Jul 2010 22:02:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2667856150638052735</guid><description>&lt;div align="justify"&gt;И снова здравствуйте, коллеги. Продолжаем нашу многодневную сагу о новшествах грядущей “десятки”.   &lt;/div&gt;&lt;div align="justify"&gt;&lt;div align="justify"&gt;&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;И сегодня я Вам расскажу про изменения касающиеся так называемого макета QlikView документа.&lt;/div&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Мастер «Приступая к работе»&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;Чтобы помочь новым пользователям начать работать со своими данными, был добавлен мастер создания новых документов QlikView. Мастер проводит пользователя через процесс загрузки файла Excel и создания первой диаграммы. Активацию Мастера можно отключить в настройках пользователя на закладке Основное.&lt;br /&gt;
&lt;div align="justify"&gt;&lt;a href="http://lh5.ggpht.com/_IdbmxMaZqi8/TDNsrVzs_II/AAAAAAAAAL0/lmjxZdoxNXw/s1600-h/clip_image002%5B4%5D.jpg"&gt;&lt;img alt="clip_image002" border="0" height="391" src="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNssIkeVoI/AAAAAAAAAL4/KDInZcemL64/clip_image002_thumb%5B1%5D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image002" width="398" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Комментарий для выражения&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;Для выражений в диаграмме теперь есть возможность добавить комментарий. Данные комментарии видны и доступны для редактирования на странице Выражения в диалоге свойства диаграммы. Это позволяет пользователю (дизайнеру) добавлять дополнительные информацию о том, что они рассчитывают в этом выражении.&lt;br /&gt;
&lt;div align="justify"&gt;&lt;a href="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNssuG4B-I/AAAAAAAAAL8/kV9LQngMM68/s1600-h/clip_image004%5B4%5D.jpg"&gt;&lt;img alt="clip_image004" border="0" height="146" src="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNstE3aNZI/AAAAAAAAAMA/kVsI7RQsVR8/clip_image004_thumb%5B1%5D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image004" width="425" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Как видно на скриншоте, для выражений появилась еще одна «приятность» - нумерация строк в определении.&lt;/div&gt;&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Объект Контейнер&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div align="justify"&gt;Новый тип страничного объекта. Позволяет объединять несколько страничных объектов (ранее созданных) в один контейнер. При этом будет создано меню с вкладками-заголовками для объектов. &lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNstYbBSDI/AAAAAAAAAME/W3obQqOTdMY/s1600-h/clip_image006%5B5%5D.jpg"&gt;&lt;img alt="clip_image006" border="0" height="193" src="http://lh3.ggpht.com/_IdbmxMaZqi8/TDNstxg80LI/AAAAAAAAAMI/N-e-5K4tNKQ/clip_image006_thumb%5B2%5D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image006" width="424" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Контейнер можно использовать вместо опции "быстрая смена типа" для переключения между типами объектов, но данный объект имеет дополнительное преимущество - объекты не обязательно должны иметь одинаковый набор измерений.&lt;/div&gt;&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Выражение в списке&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div align="justify"&gt;В предыдущих версиях QlikView, внутри Списка (ListBox) была возможность отображать только частоту для того или иного значения, теперь же мы можем создавать любое количество произвольных выражений QlikView для отображения рядом со списком значений. Выражения определяются так же, как и внутри диаграмм, и все параметры отображения имеющиеся в диаграммах также можно использовать и здесь. Например, вы можете показать результат выражения как текст, изображение, измерительный прибор или мини-диаграмму. Эта функция доступна в QlikView Desktop, в QlikView плагин и в Ajax клиенте.&lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh4.ggpht.com/_IdbmxMaZqi8/TDNsuonyb7I/AAAAAAAAAMM/Umia6MpQAwI/s1600-h/clip_image008%5B4%5D.jpg"&gt;&lt;img alt="clip_image008" border="0" height="98" src="http://lh3.ggpht.com/_IdbmxMaZqi8/TDNsvMifhsI/AAAAAAAAAMQ/-SrR4EBUZjk/clip_image008_thumb%5B1%5D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image008" width="294" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Мекко чарт&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div align="justify"&gt;Новый тип диаграммы. По сути это таже гистограмма (Bar Chart) с единственным отличием – ширина каждого бара может быть различна. В результате на одном графике мы теперь можем отображать те вещи, для которых ранее пришлось бы создавать 2 отдельных гистограммы. &lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh5.ggpht.com/_IdbmxMaZqi8/TDNsvphHENI/AAAAAAAAAMU/mR0TAPXIP5c/s1600-h/clip_image010%5B5%5D.jpg"&gt;&lt;img alt="clip_image010" border="0" height="243" src="http://lh3.ggpht.com/_IdbmxMaZqi8/TDNswMurSeI/AAAAAAAAAMY/Yx3Q3xmXFqA/clip_image010_thumb%5B2%5D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image010" width="423" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Например, на картинке по оси X мы видим величину продаж в разрезе продуктовой группы, а по оси Y получаем долю продаж каждой конкретной группы в отдельном регионе.&lt;/div&gt;&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Связанные объекты&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;В QlikView 10 стало возможно создавать связанные объекты. В результате чего, дизайнер получает возможность управлять общим набором свойств (за исключением размеров, местоположения и режима отображения) для таких объектов. То есть, изменив какое-либо общее свойство у одного объекта, мы изменяем его во всех наших связанных объектах. Связанный объект можно создать при помощи контекстного меню:&lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh3.ggpht.com/_IdbmxMaZqi8/TDNswbDSMuI/AAAAAAAAAMc/Gj4Cz3eBtoE/s1600-h/clip_image012%5B3%5D.jpg"&gt;&lt;img alt="clip_image012" border="0" height="244" src="http://lh5.ggpht.com/_IdbmxMaZqi8/TDNsxQvI5uI/AAAAAAAAAMg/OvigH_jYJwQ/clip_image012_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image012" width="185" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Ассоциативный поиск.&lt;/li&gt;
&lt;/ul&gt;Добавлен новый режим поиска Ассоциативный. При выборе данного режима поиск будет производиться не только по конкретному полю, но и по другим связанным полям. Списком полей, по которым можно производить поиск является настраиваемым. Причем, при выборе найденных значений в результирующем окне в исходном списке мы автоматически получаем в качестве результата все возможные значения нужного нам поля. Например, у нас есть Список Продавцы, мы хотим отобрать только тех продавцов, которые работали с клиентом Abbott. Для этого нам необязательно иметь отдельный фильтр (список) по клиентам, а достаточно просто воспользоваться этим новым видом поиска на списке Продавцы, ввести в строку поиска название клиента Abbott и в полученном результирующем окне справа выбрать клиента. В результате исходный список продавцов ограничиться нужными нам значениями.&lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh3.ggpht.com/_IdbmxMaZqi8/TDNsx9GsmSI/AAAAAAAAAMk/P4vLSAQBuKo/s1600-h/clip_image014%5B4%5D.jpg"&gt;&lt;img alt="clip_image014" border="0" height="96" src="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNsy42fG3I/AAAAAAAAAMo/ICfH1ifkURs/clip_image014_thumb%5B1%5D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image014" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Новый стиль выборки&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div align="justify"&gt;Для объекта Список расширены опции представления текущей выборки. Во-первых, для стиля LED был обновлен дизайн, теперь вместо круглого индикатора используется квадратный. Кроме того, добавлен новый стиль выборки «LED флаги». Данный стиль сочетает в себе нестандартное поведение стиля «флаги» и новое внешнее представление стиля LED. То есть, при выборе нескольких значений в Списке нет необходимости удерживать клавишу CTRL (как при стандартном поведении). &lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNszUn1P7I/AAAAAAAAAMs/omGDykFbETQ/s1600-h/clip_image016%5B3%5D.jpg"&gt;&lt;img alt="clip_image016" border="0" height="244" src="http://lh5.ggpht.com/_IdbmxMaZqi8/TDNszodXDQI/AAAAAAAAAMw/MYAxl8zndqA/clip_image016_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image016" width="201" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Данные нововведения доступны в QlikView Desktop, в QlikView плагин и в Ajax клиенте.&lt;/div&gt;&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Фон для страничных объектов&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div align="justify"&gt;Настройка фона объекта теперь стала доступна и в таких страничных объектах QlikView как Список, Текущие выборки, объект Закладка и Поиск. &lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh4.ggpht.com/_IdbmxMaZqi8/TDNs0Ne0riI/AAAAAAAAAM0/hGxT_s5TdQQ/s1600-h/clip_image018%5B3%5D.jpg"&gt;&lt;img alt="clip_image018" border="0" height="132" src="http://lh4.ggpht.com/_IdbmxMaZqi8/TDNs1Ut7LKI/AAAAAAAAAM4/V29JV6eMKa0/clip_image018_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image018" width="244" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Данная опция доступна в QlikView Desktop, в QlikView плагин и в Ajax клиенте.&lt;/div&gt;&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Список текущих выборок (улучшения)&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div align="justify"&gt;В свойства объекта «Текущая выборка» была добавлена опция выпадающего списка. Теперь можно внутри данного объекта для каждого отображаемого поля очень легко и быстро изменять текущую выборку. &lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh3.ggpht.com/_IdbmxMaZqi8/TDNs1tAx5jI/AAAAAAAAAM8/nHjxC7KEwD0/s1600-h/clip_image020%5B3%5D.jpg"&gt;&lt;img alt="clip_image020" border="0" height="122" src="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNs2C4yNQI/AAAAAAAAANA/BuIWg4q6KIo/clip_image020_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image020" width="244" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Данная опция доступна в QlikView Desktop, в QlikView плагин и в Ajax клиенте.&lt;/div&gt;&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Иконка &lt;b&gt;Меню&lt;/b&gt; в заголовке страничного объекта.&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div align="justify"&gt;В список специальных иконок для заголовка страничного объекта была добавлена новая иконка Меню. Данная иконка имеет вид направленной стрелки вниз и всегда располагается самой крайней справа. По нажатию на данную иконку выпадает контекстное меню текущего объекта (аналог нажатия правой кнопки мыши на объекте). &lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh5.ggpht.com/_IdbmxMaZqi8/TDNs2rCnQiI/AAAAAAAAANE/mSOnqj_ivxU/s1600-h/clip_image022%5B4%5D.jpg"&gt;&lt;img alt="clip_image022" border="0" height="262" src="http://lh5.ggpht.com/_IdbmxMaZqi8/TDNs3G8F2VI/AAAAAAAAANI/q1CdvhbOqE8/clip_image022_thumb%5B1%5D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image022" width="340" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Данная опция доступна в QlikView Desktop, в QlikView плагин и в Ajax клиенте.&lt;/div&gt;&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;AJAX режим в QlikView Desktop&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div align="justify"&gt;Не секрет, что при просмотре с помощью AJAX-клиента мы получаем несколько иное внешнее представление QlikView документов (теряется сглаживание углов, отсутствуют тени объект, небольшое смещение самих объектов и т.п.). В итоге, для проверки внешнего представления документа в AJAX-клиенте в предыдущих версиях дизайнер каждый раз вынужден был размещать qvw-документ на сервере и открывать его при помощи AJAX-клиента. В QlikView 10 стала доступна возможность (внутри QlikView Desktop) переключения в AJAX-режим по одному клику мыши. Для этого в меню Просмотр добавлен новый пункт «Вкл/выкл веб просмотр».&lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNs3pmQA5I/AAAAAAAAANM/88XoFVN25AA/s1600-h/clip_image024%5B4%5D.jpg"&gt;&lt;img alt="clip_image024" border="0" height="307" src="http://lh3.ggpht.com/_IdbmxMaZqi8/TDNs4GbrP2I/AAAAAAAAANQ/E5lddB4BZMU/clip_image024_thumb%5B1%5D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image024" width="296" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Данная опция также продублирована в панели инструментов «Дизайн»&lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh5.ggpht.com/_IdbmxMaZqi8/TDNs4oRja-I/AAAAAAAAANU/pc-CVZ6iE88/s1600-h/clip_image026%5B4%5D.jpg"&gt;&lt;img alt="clip_image026" border="0" height="62" src="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNs5NgWMYI/AAAAAAAAANY/si2MFE_8Yyo/clip_image026_thumb%5B1%5D.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="clip_image026" width="425" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Перемещения объекта без заголовка.&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;В предыдущих версиях, для того, чтобы изменить местоположение объекта, не имеющего заголовок нам приходилось делать много лишних движений, а именно, либо открывать свойства объекта и на закладке Заголовок и изменять свойства X-поз и/или Y-поз, либо отображать заголовок объекта(опять же на закладке Заголовок в свойствах объекта), изменять местоположение объекта при помощи drag’n’drop функциональности и потом заново скрывать заголовок в свойствах этого объекта. Согласитесь – это не очень удобно. Теперь это недоразумение исправлено. В новой версии для того, чтобы переместить какой-либо объект достаточно навести курсор мыши на объект, нажать клавишу ALT и можно пользоваться функцией drag’n’drop. Причем данная фича работает даже для тех объектов, для которых отключена опция «Разрешить перемещение/изменение» (на закладке Макет в свойствах объекта).&lt;br /&gt;
&lt;div align="justify"&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh6.ggpht.com/_IdbmxMaZqi8/TDNssIkeVoI/AAAAAAAAAL4/KDInZcemL64/s72-c/clip_image002_thumb%5B1%5D.jpg?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Форматирование текста в диаграмме.</title><link>http://qvrus.blogspot.com/2010/06/format-text-in-charts.html</link><category>Диаграммы</category><category>Макет</category><author>noreply@blogger.com (sparur)</author><pubDate>Wed, 30 Jun 2010 23:23:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-9109163937255478043</guid><description>&lt;div align="justify"&gt;И на сегодня еще один небольшой пост дабы немного разбавить нашу &lt;a href="http://qvrus.blogspot.com/2010/06/qlikview-10-what-new.html"&gt;мыльную оперу про QlikView 10.&lt;/a&gt; Хочу рассказать о некоторых нюансах форматирования текста в диаграммах.&lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div align="justify"&gt;Речь пойдет об одноименном свойстве “Форматирование текста”, которое имеется у каждого Измерения и Выражения. Для того, чтобы воспользоваться данной опцией, достаточно раскрыть список дополнительных выражений, нажав символ +. В выпадающем списке выбираем необходимое свойство и нажимаем кнопку “Редактировать”. Откроется стандартное диалоговое окно для редактирование QlikView выражения.&amp;nbsp;&lt;/div&gt;&lt;div align="justify"&gt;А теперь самое интересное… Каким же образом мы можем форматировать наш текст. Для этого существует ряд специальных тэгов, применив которые, мы можем видоизменить определенный текст в диаграмме. Вот эти тэги:&lt;/div&gt;&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;‘&amp;lt;B&amp;gt;’ – &lt;b&gt;жирный&lt;/b&gt;; &lt;/li&gt;
&lt;li&gt;‘&amp;lt;I&amp;gt;’ – &lt;i&gt;курсив&lt;/i&gt;; &lt;/li&gt;
&lt;li&gt;‘&amp;lt;U&amp;gt;’ – &lt;u&gt;подчеркнутый&lt;/u&gt; &lt;/li&gt;
&lt;li&gt;‘&amp;lt;H1&amp;gt;’ .. ‘&amp;lt;H6&amp;gt;’ – &lt;span style="font-size: large;"&gt;Заголовок 1&lt;/span&gt;..&lt;span style="font-size: xx-small;"&gt;Заголовок6&lt;/span&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;при помощи этих тэгов мы можем достаточно гибко управлять внешним представлением того или иного текста в диаграмме.&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>QlikView 10. Обзор. Серия 2.</title><link>http://qvrus.blogspot.com/2010/06/qlikview-10-whats-new-part-2.html</link><category>QlikView 10</category><category>Обзор</category><author>noreply@blogger.com (sparur)</author><pubDate>Wed, 30 Jun 2010 22:38:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-3836815151764299329</guid><description>&lt;div align="justify"&gt;И снова здравствуйте, Господа. Продолжаем нашу увлекательную экскурсию по грядущей 10ке. В &lt;a href="http://qvrus.blogspot.com/2010/06/qlikview-10-whats-new-part-1.html"&gt;предыдущей серии&lt;/a&gt; мы познакомились с возмозможностями по управлению, так называемыми, метаданными. Сегодня на очереди улучшения в редакторе сценария (скрипта).&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;div align="justify"&gt;И так, поехали...&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Улучшения в редакторе скрипта&lt;/li&gt;
&lt;/ul&gt;Редактор сценариев был существенно переработан. В основное меню добавился пункт «Вставка», куда было перенесено часть соответствующих функций из меню «Редактировать» и появился ряд новых полезных опций.&lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh6.ggpht.com/_IdbmxMaZqi8/TCuLpZ01HpI/AAAAAAAAALc/OOct6wYKsZQ/s1600-h/clip_image002%5B3%5D.jpg"&gt;&lt;img alt="clip_image002" border="0" height="121" src="http://lh3.ggpht.com/_IdbmxMaZqi8/TCuLtoaFRrI/AAAAAAAAALg/WkhTtAm0Hsw/clip_image002_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="clip_image002" width="244" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;
Пункт меню Настройки был переименован в Инструменты. В данном меню появилась возможность запуска Администратора ODBC соединений (стандартное приложение Windows) прямо изнутри редактора. &lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh3.ggpht.com/_IdbmxMaZqi8/TCuLueIKtkI/AAAAAAAAALk/dYVwYg6WAAQ/s1600-h/clip_image004%5B3%5D.jpg"&gt;&lt;img alt="clip_image004" border="0" height="98" src="http://lh4.ggpht.com/_IdbmxMaZqi8/TCuLu4a1ptI/AAAAAAAAALo/iWMIUni8H78/clip_image004_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="clip_image004" width="244" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Кроме того, 32-разядный ODBC администратор теперь можно будет запускать и «из под» 64х битного QlikView клиента. Что очень удобно в тех случаях, когда вы работаете на 64х битной ОС. &lt;/div&gt;&lt;div align="justify"&gt;Отдельно хочется упомянуть о том, что было удалено совершенно бесполезное (на мой взгляд) окно Утверждения. &lt;/div&gt;&lt;div align="justify"&gt;Диалог вызова мастера встроенных данных (а также Секции Доступа) был вынесен в меню Вставка (см. скриншот выше).&lt;/div&gt;&lt;div align="justify"&gt;Ну и два самых, наверное, «вкусных» изменения. Это впервые появившиеся в QlikView, но так хорошо знакомые и давно используемые в других средах разработки -&amp;nbsp; &lt;b&gt;Инструмент для проверки синтаксиса&lt;/b&gt; и &lt;b&gt;Авто завершение функций&lt;/b&gt;.&amp;nbsp;&lt;/div&gt;&lt;ol&gt;&lt;ul&gt;&lt;/ul&gt;&lt;/ol&gt;&lt;div align="justify"&gt;&lt;a href="http://lh3.ggpht.com/_IdbmxMaZqi8/TCuLvusdQ7I/AAAAAAAAALs/sNeQ-yU1FY4/s1600-h/clip_image006%5B3%5D.jpg"&gt;&lt;img alt="clip_image006" border="0" height="207" src="http://lh4.ggpht.com/_IdbmxMaZqi8/TCuLwhwOVUI/AAAAAAAAALw/OLV6QlyJxTE/clip_image006_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="clip_image006" width="177" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;Свершилось, наверное, то, о чем так долго мечтали все QlikView разработчики. Теперь еще бы сворачивание конструкций получить в редакторе, так вообще будет песня.&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     Отдельное подключение к базе данных из QlikView&lt;/li&gt;
&lt;/ul&gt;&lt;div align="justify"&gt;Основная идея заключается в том, что QlikView в момент запуска скрипта порождает второй процесс - QVConnect, который и подключается к источнику данных. После чего данные из QVConnect поступают в QlikView. Это не только привело к созданию более эффективной архитектуры, но это также позволяет использовать 32-разрядные ODBC соединения с 64-битным QlikView клиентом при помощи утверждения "Connect32" сценарии загрузки. Два разных файла QVConnect устанавливаются в папку QlikView: QVConnect32.exe и QVConnect64.exe.&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     Параллельная обработка данных&lt;/li&gt;
&lt;/ul&gt;&lt;div align="justify"&gt;Интерпретация и преобразование данных, начиная с QlikView 10, делается в несколько потоков, что значительно ускоряет процесс загрузки. Однако, к сожалению, это не означает, что операторы Load теперь могут выполняться параллельно, нет, в этом смысле все, как и раньше, выполняется последовательно.&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh3.ggpht.com/_IdbmxMaZqi8/TCuLtoaFRrI/AAAAAAAAALg/WkhTtAm0Hsw/s72-c/clip_image002_thumb.jpg?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>QlikView 10. Обзор. Серия 1.</title><link>http://qvrus.blogspot.com/2010/06/qlikview-10-whats-new-part-1.html</link><category>QlikView 10</category><category>Обзор</category><author>noreply@blogger.com (sparur)</author><pubDate>Thu, 24 Jun 2010 22:39:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-4171916885311047832</guid><description>&lt;div align="justify"&gt;И так начнем наш сериал… И сегодня я представляю Вашему вниманию первую серию этого захватывающего блокбастера под названием&lt;b&gt;&lt;i&gt; “Общие изменения в QlikView 10 (часть 1)”&lt;/i&gt;&lt;/b&gt;. &lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;div align="justify"&gt;В этой серии мы поговорим о появившихся в новой версии возможностях по созданию и управлению мета-данными. &lt;br /&gt;
&lt;br /&gt;
&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Тэги для поля&lt;/li&gt;
&lt;/ul&gt;В QlikView 10 появилась возможность добавления тегов для каждого поля. Теги могут быть как системными, так и настраиваемыми QlikView разработчиком. Ряд системных тэгов автоматически генерируются для полей документа при выполнении сценария загрузки. Это такие тэги как: $hidden, $numeric, $integer, $date, $timestamp, $text, $asci.&amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh5.ggpht.com/_IdbmxMaZqi8/TCOip6EeyNI/AAAAAAAAALE/i3Ce39om3BM/s1600-h/clip_image002%5B3%5D.jpg"&gt;&lt;img alt="clip_image002" border="0" height="143" src="http://lh3.ggpht.com/_IdbmxMaZqi8/TCOiqhGlkyI/AAAAAAAAALI/igb8Yjs0U2U/clip_image002_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="clip_image002" width="204" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;div align="justify"&gt;Пользователь (разработчик) может создавать свои собственные теги с помощью простого синтаксиса. &lt;/div&gt;&lt;div align="justify"&gt;&lt;i&gt;TAG [FIELD] ИмяПоля [WITH] ИмяТэга; &lt;/i&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;i&gt;UNTAG [FIELD] ИмяПоля [WITH] ИмяТэга; &lt;/i&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;
Кроме того, тэги можно также изменять интерактивно. Делается это в свойствах документа на закладке Таблицы (в нижней части диалогового окна кнопка «Редактировать Тэги»). Привязанные тэги также можно будет увидеть в обозревателе таблиц (см. скриншот выше) и в различных диалогах выбора полей (например, на закладке Измерения в свойствах диаграммы) при наведении курсора мыши на конкретное поле. В будущем, тэги планируется также использоваться для более «продвинутой» сортировки в объектах. &lt;br /&gt;
&lt;br /&gt;
&lt;div align="justify"&gt;&lt;ul&gt;&lt;li&gt;Комментарии для поля&lt;/li&gt;
&lt;/ul&gt;Данная новая функциональность предоставляет возможность использования комментариев (метаданных) для поля, что может помочь дизайнеру при разработке макета QlikView. Комментарии читаются из файла / базы данных или устанавливаются индивидуально в рамках выполнения скрипта.&amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;i&gt;COMMENT [FIELD] ИмяПоля [WITH] Комментарий; &lt;/i&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div align="justify"&gt;Комментарии так же, как и тэги, можно увидеть в свойствах документа (закладка Таблицы), в обозревателе таблиц или в различных диалогах выбора полей.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Комментарии для таблицы&lt;/li&gt;
&lt;/ul&gt;По аналогии с комментариями для полей, их также можно задать для описания исходных таблиц.&amp;nbsp;&lt;/div&gt;&lt;div align="justify"&gt;&lt;i&gt;COMMENT [TABLE] ИмяТаблицы [WITH] Комментарий; &lt;/i&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div align="justify"&gt;Комментарии отображаются на закладке Таблицы в свойствах документа и в обозревателе таблиц при наведении курсора на заголовок таблицы. &lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh5.ggpht.com/_IdbmxMaZqi8/TCOirD1tJ6I/AAAAAAAAALM/9hS7lnce6m0/s1600-h/clip_image004%5B3%5D.jpg"&gt;&lt;img alt="clip_image004" border="0" height="161" src="http://lh4.ggpht.com/_IdbmxMaZqi8/TCOiroQaJxI/AAAAAAAAALQ/6nPhD6pHwVQ/clip_image004_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="clip_image004" width="183" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Комментарий для переменной&lt;/li&gt;
&lt;/ul&gt;Для переменной теперь появилась возможность задать понятный комментарий, описывающий, например, ее предназначение. Данный комментарий будет виден, а также доступен для редактирования в Обозревателе переменных, и в свойствах документа на закладки Переменные.&amp;nbsp;&lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://lh5.ggpht.com/_IdbmxMaZqi8/TCOisWFYiRI/AAAAAAAAALU/PZR5t7sq3OI/s1600-h/clip_image006%5B3%5D.jpg"&gt;&lt;img alt="clip_image006" border="0" height="187" src="http://lh5.ggpht.com/_IdbmxMaZqi8/TCOitRdM54I/AAAAAAAAALY/wZdHqCePVWA/clip_image006_thumb.jpg?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="clip_image006" width="244" /&gt;&lt;/a&gt; &lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh3.ggpht.com/_IdbmxMaZqi8/TCOiqhGlkyI/AAAAAAAAALI/igb8Yjs0U2U/s72-c/clip_image002_thumb.jpg?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>QlikView 10. Обзор нововведений.</title><link>http://qvrus.blogspot.com/2010/06/qlikview-10-what-new.html</link><category>QlikView 10</category><category>Новости</category><category>Обзор</category><author>noreply@blogger.com (sparur)</author><pubDate>Wed, 23 Jun 2010 22:13:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2814916708155087323</guid><description>&lt;div align="justify"&gt;Всем привет. Вот наконец-то мои руки дотянулись и до блога. &lt;/div&gt;&lt;div align="justify"&gt;Решил написать небольшой обзор по новым фичам грядущей 10ки.&lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div&gt;Во-первых, стоит отметить, что сегодня, а точнее с 9 июня, QlikView 10 &lt;a href="http://beta.qlikview.com/"&gt;доступна&lt;/a&gt; уже в версии RC (Release Candidate). А это говорит нам о том, что продукт практически готов к употреблению. И это несмотря на то, что планируемая дата выхода финального релиза (GA) – 6 октября сего года. Если брать во внимание прошлые темпы выпусков (на примере той же 9ки), то срок на самом деле огромный. Будем надеяться, что увеличение времени бета тестирования поможет выпустить по-настоящему готовый продукт и не потребует латания дыр в спешном порядке. Но это все лирика, господа. А теперь собственно о главном… А новшеств в юбилейном выпуске не мало, поэтому я решил их разбить на функциональные группы и выкладывать отдельными постами: &lt;/div&gt;&lt;ul&gt;&lt;li&gt;Общие изменения&lt;/li&gt;
&lt;li&gt;Изменения в макете документа&lt;/li&gt;
&lt;li&gt;Изменения на стороне QlikView сервера&lt;/li&gt;
&lt;/ul&gt;&lt;div align="justify"&gt;Так что я планирую целую серию из нескольких постов на заданную тему.&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Тип данных Dual()</title><link>http://qvrus.blogspot.com/2009/12/data-type-dual.html</link><category>Скрипт</category><category>Функции</category><author>noreply@blogger.com (sparur)</author><pubDate>Mon, 21 Dec 2009 17:52:00 +0300</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-7918848283456584319</guid><description>&lt;div align="justify"&gt;Приветствую, коллеги.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Каюсь, каюсь и еще раз каюсь... Очередной простой в блоге, но Вы должны менять понять :) конец года как никак... Ну да ладно, хватит о грустном и перейдем непосредственно к самому интересному...&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Сегодня предлагаю поговорить о таком интересном типе данных QlikView как &lt;b&gt;Dual&lt;/b&gt;. &lt;br /&gt;
&lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;Как видно из его названия это некий двойной тип данных, а проще говоря, тип данных хранящий сразу два представления. Для начала давайте заглянем в справку и посмотрим что нам предлагает официальный источник. Заглянули? Отлично. А теперь приведу пример использования этой фичи из своего реального опыта. &lt;br /&gt;
&lt;div align="justify"&gt;Для начала немного предыстории… Я всегда на всех проектах формирую отдельную таблицу календарь, где создаю на основании поля “Дата транзакции” различные поля типа: Год, Месяц, Квартал, Месяц-Год, Квартал-Год… Выглядит это примерно так:&lt;br /&gt;
&lt;/div&gt;&lt;blockquote&gt;&lt;div align="justify" class="qvscript"&gt;Calendar:&lt;br /&gt;
LOAD&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; TransDate,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Year(TransDate)&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;&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;&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; as Year,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Month(TransDate)&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; as Month,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Q' &amp;amp; ceil(Month(TransDate)/3)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; as Quarter,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Date(Monthstart(TransDate), 'MMM-YYYY')&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; as MonthYear,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; num(QuarterStart(TransDate)))&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; as QuarterYear,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Q' &amp;amp; Ceil(Month(TransDate)/3) &amp;amp;'-'&amp;amp; Year(TransDate)&amp;nbsp;&amp;nbsp; as QuarterYear,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Day(TransDate)&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;&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; as Day&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;
;&lt;br /&gt;
LOAD &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ($(vMinDate) + IterNo())&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; as TransDate&lt;br /&gt;
AUTOGENERATE 1&lt;br /&gt;
WHILE ($(vMinDate) + IterNo()) &amp;lt;= $(vMaxDate); &lt;br /&gt;
&lt;/div&gt;&lt;/blockquote&gt;&lt;div align="justify"&gt;И все вроде замечательно, пока я не обнаружил, что значения поля QuarterYear постоянно в различных объектах, будь то диаграмма(Chart) или список значений(ListBox), различным образом сортируется. В диаграмме по оси X может нормально сортироваться: &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Q1-2008, Q2-2008, Q3-2008, Q4-2008, Q1-2009, Q2-2009…, &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;а в Списке значений может сортироваться как текст, т.е. как то так: &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Q1-2008, Q1-2009, Q2-2008, Q2-2009, Q3-2008, Q3-2009,…&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Причем настройка типа Сортировки(как Текст, либо как Число) в свойствах объекта не всегда приводила к нужному варианту, что заставило меня задуматься над этой ситуацией. Почему собственно наблюдается такое непредсказуемое поведение системы? Ведь в случае с очень похожем полем MonthYear ничего подобного и в помине нет – всегда сортируется так, как мы указываем в параметрах сортировки объекта. А ответ очень прост – посмотрите на реализацию календаря – поле MonthYear формируется при помощи функций работы с датами, просто выбирается необходимый формат представления - 'MMM-YYYY'. А поле QuarterYear реализуется в виде обычной строки, без какого либо намека на&amp;nbsp; привязку к дате. В этом и весь ответ. &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;В итоге немного поразмыслив я переделал формирование своего календаря, а точнее поля QuarterYear. Теперь это выглядит следующим образом:&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify" class="qvscript"&gt;Dual('Q' &amp;amp; Ceil(Month(TransDate)/3) &amp;amp;'-'&amp;amp; Year(TransDate), num(QuarterStart(TransDate))) as QuarterYear&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;т.е. в поле QuarterYear мы “загоняем” сразу &lt;b&gt;2&lt;/b&gt; типа данных: строковый и числовой. И в этом нам помогает собственно тип данных Dual. В результате теперь во всех объектах QlikView мы можем производить сортировку так как нам будет необходимо и система всегда правильно нас “поймет” и отсортирует значения в нужном порядке. &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Вот такой вот натюрморт получается :).&lt;br /&gt;
&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total></item><item><title>Наборы данных. Исключаемые значения</title><link>http://qvrus.blogspot.com/2009/10/sets-excluded-values.html</link><category>Set Analysis</category><author>noreply@blogger.com (sparur)</author><pubDate>Thu, 15 Oct 2009 18:18:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-714358074637608787</guid><description>&lt;div align="justify"&gt;Коллеги, всем привет.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Давненько я не писал чего-то интересного и познавательного. Собственно, исправляюсь… Сегодня снова поговорим о Set Analysis’е, а именно, о нюансах исключения некоторых значений поля из всего набора данных.&lt;br /&gt;
&lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div align="justify"&gt;Думаю, проще всего сразу показать эти нюансы на примере, поэтому предлагаю создать новый документ QlikView, и загрузить в него следующую информацию:&lt;br /&gt;
&lt;/div&gt;&lt;div class="qvscript"&gt;&lt;i&gt;Sales:&lt;br /&gt;
LOAD * INLINE[&lt;br /&gt;
User, Amount&lt;br /&gt;
Петр, 11235&lt;br /&gt;
Алексей, 11999&lt;br /&gt;
Жанна, 37000&lt;br /&gt;
Николай, 53000&lt;br /&gt;
Григорий, 10000&lt;br /&gt;
];&lt;br /&gt;
&lt;/i&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Теперь представим ситуацию, что нам неинтересна информация о том, на какую сумму Петр продал товара, т.е. нам необходимо исключить значение “Петр”. Как, собственно, мы можем этого добиться? Если не использовать Set Analysis, то мы должны выбрать все значения поля “User”, кроме значения “Петр”. Согласитесь, это не очень удобно, как минимум, потому что нам всегда нужно будет производить подобную манипуляцию и не забывать об этом. Поэтому логичней здесь воспользоваться Set Analysis’ом и произвести подобное исключение внутри наших выражений. Создадим диаграмму типа Прямая таблица, в качестве измерения выбираем поле User и определим 2 выражения:&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Sum( {&amp;lt; User -= {"Петр"} &amp;gt;} Amount)&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Sum( {&amp;lt; User =- {"Петр"} &amp;gt;} Amount)&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;На первый взгляд, эти выражения выполняют одно и тоже – исключают значение “Петр” из нашей диаграммы и только лишь. Однако, это не совсем так. Оба эти выражения действительно исключают значение “Петр”, однако если мы сделаем выборку в поле User, то увидим что именно отличает друг от друга эти 2 реализации одной и той же задачи.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Первое выражение, как собственно и описано в официальной документации QlikView, является сокращенной формой выражения вида:&amp;nbsp; Sum( {&amp;lt; User = User - {"Петр"} &amp;gt;} Amount), т.е. этим выражением мы говорим, что хотим рассчитать сумму продаж на основании &lt;b&gt;текущей&lt;/b&gt; выборки по полю “User”, за исключением значения “Петр”. Соответственно, когда у нас не выбрано ни одно значение поля “User”, мы получаем список из всех пользователей за исключением Петра. Как только мы производим выборку, наш список пользователей сокращается до этой выборки. Собственно стандартное поведение системы.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Второе же выражение является краткой формой следующего: Sum( {&amp;lt; User = {*} - {"Петр"} &amp;gt;} Amount). Здесь мы говорим системе, что хотим получить &lt;b&gt;все &lt;/b&gt;значения поля “User” &lt;b&gt;вне зависимости от текущей выборки&lt;/b&gt; по полю “User”. В итоге мы получаем статический набор из всех пользователей за исключением одного Петра.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;На этом разрешите откланяться :).&lt;br /&gt;
&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Кое-что о функции Exists ()</title><link>http://qvrus.blogspot.com/2009/10/something-about-function-exists.html</link><category>Скрипт</category><category>Функции</category><author>noreply@blogger.com (sparur)</author><pubDate>Thu, 1 Oct 2009 13:09:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2398646946175480248</guid><description>&lt;div align="justify"&gt;В очередной раз приветствую Вас, коллеги, на страницах своего блога.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Сегодня я расскажу Вам об особенностях работы функции Exists() в QlikView. Исходя из информации, любезно предоставленной нам производителем в справке к программному продукту, мы имеем следующий формат применения этой функции:&lt;br /&gt;
&lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;i&gt;Exists&lt;/i&gt;&lt;i&gt;( field [ , expression ] ), &lt;/i&gt;&lt;br /&gt;
&lt;div align="justify"&gt;где field – это имя поля (или выражение, вычисляющее имя поля) предварительно загруженное в документ QlikView; expression – это выражение, вычисляющее значение поля, которое собственно и проверяется на наличие в поле field. Если 2ой параметр опущен, то подразумевается текущее значение поля. &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Исходя из этой справочной информации можно сделать предположение, что функция Exists() работает &lt;b&gt;только&lt;/b&gt; c ранее загруженными данными, т.е. поле, указанное первым параметром должно быть загружено предыдущими операторами LOAD и/или SQL SELECT в документ QlikView. Однако, это предположение будет не совсем верным. Для иллюстрации всего выше сказанного давайте сделаем небольшой пример документа QlikView и убедимся в этом на практике.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;И так, создаем новый документ, сохраняем его на диске, открываем редактор скрипта и добавляем следующий код:&lt;br /&gt;
&lt;/div&gt;&lt;div class="qvscript"&gt;Budget:&lt;br /&gt;
Load * Inline [&lt;br /&gt;
User, Budget&lt;br /&gt;
Tom, 10000&lt;br /&gt;
Jane, 20000&lt;br /&gt;
May, 22000&lt;br /&gt;
Graham, 12300&lt;br /&gt;
];&lt;br /&gt;
Sales:&lt;br /&gt;
Load * Inline [&lt;br /&gt;
User, Sales&lt;br /&gt;
Tom, 11000&lt;br /&gt;
Jane, 19000&lt;br /&gt;
May, 21000&lt;br /&gt;
Graham, 13300&lt;br /&gt;
John, 23456&lt;br /&gt;
]&lt;br /&gt;
Where Exists(User);&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;После выполнения данного скрипта, создайте объект Простая таблица и выведите в нее поля: User, Budget и Sales. Вы увидите в таблице 4 строки и для каждой из них будет определено значение в полях Budget и Sales. Иными словами, Вы не увидите строку с пользователем John и его суммой продаж, т.к. в скрипте, при загрузке данных по продажам,Вы указали, что хотите грузить &lt;b&gt;только&lt;/b&gt; данные тех пользователей, которые уже были &lt;b&gt;ранее загружены&lt;/b&gt; в документ, т.е. в нашем случае это те пользователи, по которым есть данные по бюджету. Этот пример собственно демонстрирует, так скажем, явное применение функции Exists(), т.е. так как это описано в справочном файле. &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Далее создадим новый документ (или можно внутри того же самого документа, закомментировав предыдущий код загрузки) и добавим в него следующий код загрузки данных:&lt;br /&gt;
&lt;/div&gt;&lt;div class="qvscript"&gt;Sales:&lt;br /&gt;
Load&lt;br /&gt;
RowNo() As row,&lt;br /&gt;
User,&lt;br /&gt;
Sales,&lt;br /&gt;
If(Exists(User,User), 1, 0) As Exists&lt;br /&gt;
;&lt;br /&gt;
Load * Inline [&lt;br /&gt;
User, Sales&lt;br /&gt;
John, 12222&lt;br /&gt;
Tom, 11000&lt;br /&gt;
Jane, 19000&lt;br /&gt;
May, 21000&lt;br /&gt;
Graham, 13300&lt;br /&gt;
John, 23456&lt;br /&gt;
];&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Здесь как Вы видите мы предварительно &lt;b&gt;не загружаем&lt;/b&gt; поле User в документ и в тоже время используем функцию Exists по этому полю. Загружаем данные, и создадим еще один объект Простая таблица, в которую выведем поля в порядке их загрузки в документ: row, User, Sales и Exists. И что Вы видите? А видеть Вы должны примерно следующее:&lt;a href="http://lh3.ggpht.com/_IdbmxMaZqi8/Stbm2tkyhhI/AAAAAAAAAJw/3Qty_KF847U/s1600-h/Sales%5B2%5D.png"&gt;&lt;img alt="Sales" border="0" height="125" src="http://lh3.ggpht.com/_IdbmxMaZqi8/Stbm3C0MQVI/AAAAAAAAAJ0/KNQPCj3kzKQ/Sales_thumb.png?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin-left: auto; margin-right: auto;" title="Sales" width="244" /&gt;&lt;/a&gt; Иными словами, функция Exists() отработала корректно и в этом случае. То есть мы можем применять данную функцию для проверки записей также и внутри одного оператора загрузки данных.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;На этом пожалуй я остановлюсь и пожелаю Всем новых открытий и приятных впечатлений от работы с QlikView.&lt;br /&gt;
&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="http://lh3.ggpht.com/_IdbmxMaZqi8/Stbm3C0MQVI/AAAAAAAAAJ0/KNQPCj3kzKQ/s72-c/Sales_thumb.png?imgmax=800" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total></item><item><title>Знак “=” в Редакторе Выражений</title><link>http://qvrus.blogspot.com/2009/10/sign-in-expression-editor.html</link><category>Макет</category><category>Переменные</category><author>noreply@blogger.com (sparur)</author><pubDate>Mon, 28 Sep 2009 15:38:00 +0400</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-8324090836120541509.post-2268084582370228807</guid><description>&lt;div align="justify"&gt;Коллеги, приветствую Вас.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Предлагаю Вашему вниманию очередной пост, который, на мой взгляд, может помочь в понимании некоторых проблем, возникающих на начальном этапе работы с QlikView.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Поговорим сегодня о редакторе выражений и некоторых нюансах построения этих самых выражений, точнее сказать об одном определенном нюансе, а именно об использовании знака “=” в начале Вашего выражения(аналогично тому, как это реализовано в MS Excel).&lt;br /&gt;
&lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div align="justify"&gt;Предшествующий основному выражению знак “=” говорит QlikView о Вашем желании предварительно вычислить выражение, которое описано после него и вернуть результат вычисления. &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Вообще, использование знака “=” в QlikView может у Вас вызвать некоторую путаницу в понимании того, как он работает и зачем он собственно нужен. Поэтому я сейчас попытаюсь объяснить Вам некоторые нюансы работы при использовании этого знака в редакторе выражений на различных объектах документа QlikView. &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Во-первых, при создании выражения в объекте Диаграмма Вам нет необходимости указывать перед каждым выражением знак “=”, т.к. подразумевается тот факт, что если уж Вы создаете выражение в диаграмме, то Вам собственно необходимо чтобы это выражение было вычислено.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Во-вторых, при работе с текстовыми объектами если Вам требуется вычисление какого-либо выражения, то Вы обязаны использовать знак “=” в начале него. В противном случае, Вы просто получите в текстовом объекте свою формулу в том виде, в котором Вы ее ввели в редакторе выражений. Т.е. если в текстовом объекте написать следующее выражение: “Sum(Amount)”, то после закрытия диалога свойств объекта Вы получите текстовый объект, в котором отобразится строка: “Sum(Amount)”. Однако, как только Вы добавите предшествующий выражению знак равенства: “=Sum(Amount)”, QlikView сделает вычисление формулы(с учетом текущий выборки в документе), стоящей после знака “=” и вернет результат этого вычисления в текстовый объект.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;В-третьих, ситуация когда Вам необходимо использовать выражение в качестве значения переменной. Этот случай, на мой взгляд, представляет наибольший интерес, поэтому давайте рассмотрим его более подробно. &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Представим что у Вас имеется некоторый набор данных по продажам в разрезе года. Допустим Вы создали 2 переменные vSales со значением “sum(Amount)” и vTotal со значение “=sum(Amount)”. Теперь Вам необходимо создать диаграмму, которая бы показала сумму продаж в разрезе года. Для этого создайте новый объект типа Диаграмма, тип Диаграммы выберите, например, Прямая таблица (straight table), в качестве измерения укажите поле год, и на закладке выражений создайте 2 выражения: $(vSales) и второе – $(vTotal). В итоге у Вас получится в первой колонке сумма продаж в разрезе года, а во второй колонке во всех строках таблицы Вы увидите одно единственное число – &lt;b&gt;общую&lt;/b&gt; сумму продаж. &lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Это происходит потому что значение первой переменной vSales представляет из себя по сути обычный текст, который помещается в выражение диаграммы, в результате чего происходит расчет этого выражения в разрезе каждого отдельного года. А во второй переменной vTotal мы использовали знак равенства перед этим же самым текстом, поэтому QlikView, перед тем как вставить значение переменной vTotal в выражение диаграммы, &lt;b&gt;предварительно&lt;/b&gt; производит расчет этого выражения на уровне документа и уже результат этого расчета помещает в выражение диаграммы. В итоге Вы и получаете одинаковую цифру во всех строках таблицы.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Ну и последний момент, о котором я хотел бы рассказать сегодня, это случай, когда знак “=” используется внутри конструкции $(). По сути, достичь результата описанного в ситуации с использованием переменной vTotal, можно и без использования этой самой переменной, т.е. непосредственно внутри выражения диаграммы. Для этого достаточно определить выражение следующего вида: $(=sum(Amount)). В этом случае, формула sum(Amount) предварительно рассчитается на уровне документа и уже результат этого вычисления будет возвращен в выражение диаграммы.&lt;br /&gt;
&lt;/div&gt;&lt;div align="justify"&gt;Вот и все на сегодня, коллеги. Надеюсь данный пост был Вам интересен и я не зря потратил на него свое время :). &lt;br /&gt;
&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total></item></channel></rss>