<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Um projeto Nprinting - Parte 02 in Brasil</title>
    <link>https://community.qlik.com/t5/Brasil/Um-projeto-Nprinting-Parte-02/m-p/1467184#M54061</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;Fala pessoal, tudo beleza?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Post de continuação do Projeto Nprinting. Para quem não leu o primeiro, &lt;A href="https://blogdonicolett.com.br/2018/08/20/projeto-nprinting-parte-01/"&gt;veja aqui para entender&lt;/A&gt;!&lt;/P&gt;&lt;P&gt;Link aqui da comunidade: &lt;A href="https://community.qlik.com/qlik-blogpost/5755"&gt;Um projeto Nprinting - Parte 01&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Neste post irei falar mais sobre os filtros, bora lá?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;IMPORTANTE&lt;/STRONG&gt;: Conforme solicitação de alguns leitores, abordarei em um próximo post os temas: "Criar Relatório", "Criar Destino" e "Criar Task de Publicação".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;No capítulo anterior&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No post anterior, conseguimos gerar a planilha com usuários únicos, por e-mail, e seus respectivos grupos, conforme lista abaixo:&lt;/P&gt;&lt;P&gt;&lt;A href="https://ynicolett.files.wordpress.com/2018/08/projetonprinting_codigo07.jpg"&gt;&lt;IMG alt="" class="wp-image-642 size-large aligncenter jive-image" height="123" src="https://ynicolett.files.wordpress.com/2018/08/projetonprinting_codigo07.jpg?w=600" width="600" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;O caso que nos preocupa é o "YURI NICOLETT", que receberá relatórios para o nível de vendedor e supervisor. Sei que posso tratar isso nos filtros, porém existe uma maneira de criar vários filtros, para o mesmo usuário, e identificar o filtro que será utilizado em cada relatório? &lt;STRONG&gt;Sim&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;Filtros&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tudo o que você precisa saber sobre filtros esta &lt;A href="https://help.qlik.com/pt-BR/nprinting/June2018/Content/ReportsDevelopment/Static-dynamic-filters.htm" rel="noopener" target="_blank"&gt;aqui&lt;/A&gt;!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Existem vários tipos de filtros:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Filtros de Tarefas&lt;/LI&gt;&lt;LI&gt;Filtros de Relatórios&lt;/LI&gt;&lt;LI&gt;Filtros de Objetos&lt;/LI&gt;&lt;LI&gt;Filtros de Usuários&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Os filtros são avaliados na seguinte sequência: tarefa, usuário, relatório e objeto.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;Em nosso exemplo, o tipo de filtro que trataremos será o de usuário. Para o cadastro de um filtro, serão solicitadas algumas informações (&lt;A href="https://help.qlik.com/pt-BR/nprinting/June2018/Content/DeployingQVNprinting/Import-Users-Filters.htm" rel="noopener" target="_blank"&gt;maiores informações no help da qlik&lt;/A&gt;&lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;Nome&lt;/STRONG&gt;: nome do filtro.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Descrição&lt;/STRONG&gt;: descrição (opcional).&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Aplicativo&lt;/STRONG&gt;: nome do aplicativo associado ao filtro. O aplicativo deve existir no servidor.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Habilitado&lt;/STRONG&gt;: defina como verdadeiro, caso deseje criar um filtro habilitado. Defina como falso para criar um filtro desabilitado que será ignorado durante a geração do relatório.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Conexão&lt;/STRONG&gt;: nome da conexão. Ao especificar isso, você pode criar filtros diferentes com base em campos com os mesmos nomes de conexões diferentes no mesmo aplicativo. A conexão deve existir no servidor.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Valores&lt;/STRONG&gt;: use essa coluna para filtrar os valores de string. Liste-os no formato [nome do campo]={value1,value2,...}. Para adicionar valores para mais de um campo, separe-os com uma vírgula. Por exemplo: [País]={Italy,Germany,Spain}, [CategoryName]={Babywear, Men´s Wear, Women's Wear}. Não insira espaços em branco antes e depois do símbolo de igual (=).&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Valores Numéricos&lt;/STRONG&gt;: use essa coluna para filtrar os valores numéricos. Liste-os no formato [nome do campo]={value1,value2,...}. Por exemplo, CategoryID={1.0,"5",8.2}. Não insira espaços em branco antes e depois do símbolo de igual (=).&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Fórmulas&lt;/STRONG&gt;: use essa coluna para calcular valores para filtrar por meio do uso de fórmulas do &lt;SPAN class="CommonComponentsQlikView"&gt;QlikView&lt;/SPAN&gt;. Liste-os no formato [nome do campo]={formula1,formula2,...}. Por exemplo, Ano={Year(now()), Year(now())-1,Year(now())-2}. Não insira espaços em branco antes e depois do símbolo de igual (=). Se um valor ou uma fórmula incluir vírgulas, use aspas duplas como delimitadores. Exemplo: [SalemanName]={"Jeremy Martinson, Jr.", Tom Lindwall} em vez de [SalemanName]={Jeremy Martinson, Jr., Tom Lindwall}&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Lembram que no cadastro do usuário, também existe uma coluna de filtro? Não lembra? Veja a planilha que geramos no post anterior:&lt;/P&gt;&lt;P&gt;&lt;A href="https://ynicolett.files.wordpress.com/2018/08/mostrafiltroporusuario.jpg"&gt;&lt;IMG alt="" class="wp-image-660 aligncenter jive-image size-full" height="105" src="https://ynicolett.files.wordpress.com/2018/08/mostrafiltroporusuario.jpg" width="600" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Com a coluna "Filters", poderei cadastrar "N" filtros para cada um dos usuários.&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;Lembre-se&lt;/STRONG&gt;: A nomenclatura utilizada no cadastro do usuário deverá ser a mesma no cadastro do filtro.&lt;/SPAN&gt;&amp;nbsp; &lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;Sintaxe de filtros&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A sintaxe para criar filtros no NPrinting é simples, mas não custa reforçar! Todos os detalhes podem ser conferidos &lt;A href="https://help.qlik.com/pt-BR/nprinting/June2018/Content/DeployingQVNprinting/Import-Users-Filters.htm" rel="noopener" target="_blank"&gt;aqui&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sintaxe: [Nome do Campo]={Valor1, Valor2, Valor3}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Não inserir espaço em branco antes ou depois do =&lt;/LI&gt;&lt;LI&gt;Se o nome campo possui espaços, use colchetes []. Exemplo: [Código do Vendedor]={1}&lt;/LI&gt;&lt;LI&gt;Mais de um valor deve ser separado por virgula. Exemplo: [Código do Vendedor]={1,2,3,4}&lt;/LI&gt;&lt;LI&gt;Cada tipo de filtro deve respeitar a sua respectiva coluna:&lt;UL&gt;&lt;LI&gt;Texto - Value&lt;/LI&gt;&lt;LI&gt;Númeri - Numeric Value&lt;/LI&gt;&lt;LI&gt;Expressões - Formula&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;Textos não devem usar aspas, ao menos se tiver vírgula. Exemplo: [Nome do Vendedor]={YURI NICOLETT, JULIAN SCATAMACHIA, "ALEXANDRE, O GRANDE"}&lt;/LI&gt;&lt;LI&gt;Para a regra anterior, também será necessário usar aspas em caso de espaço no início ou fim do texto. Exemplo: [Nome do Vendedor]={" ESPAÇO ANTES","ESPAÇO DEPOIS"}&lt;/LI&gt;&lt;LI&gt;Filtros com mais de um campo devem ser separados por vírgula. Exemplo: [Filtro1]={1,2,3},[Filtro2]={YURI NICOLETT, JULIAN &lt;SPAN style="font-size: 13.3333px;"&gt;SCATAMACHIA&lt;/SPAN&gt;}&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;Voltando ao projeto&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;OK, posso criar vários filtros para o mesmo usuário, mas como posso definir quais filtro deve ser interpretado por relatório? Melhorando a pergunta: Como posso definir que no relatório de vendedores, o usuário "Yuri Nicolett" tenha o valor 1 para a coluna COD_VENDEDOR selecionado e para o relatório de supervisores, tenha o valor 100 para a coluna COD_SUPERVISOR?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Resposta simples: &lt;STRONG&gt;Conexões&lt;/STRONG&gt;!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;Conexão&lt;/STRONG&gt;: nome da conexão. Ao especificar isso, &lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;você pode criar filtros diferentes com base em campos com os mesmos nomes de conexões diferentes no mesmo aplicativo&lt;/STRONG&gt;&lt;/SPAN&gt;. A conexão deve existir no servidor.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A resposta estava ali o tempo todo? Pior que estava! Eu também demorei a perceber &lt;IMG src="https://community.qlik.com/legacyfs/online/emoticons/grin.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;OK, já sabemos o caminho das pedras, vamos criar a tabela de filtros, no Qlik Sense, e também preencher a coluna "Filters" para o relatório de usuários.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;Criar tabela de filtros (Qlik Sense)&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1- Vou reutilizar a tabela de Hierarquia que foi gerada no post anterior (não se preocupe, tem um qvf com o código pronto) para gerar os filtros de vendedores:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_01.jpg"&gt;&lt;IMG alt="" class="wp-image-662 aligncenter jive-image size-full" height="119" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_01.jpg" width="600" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Estou mantendo a mesma regra, de usuários, para definir o e-mail, porém agora tenho duas diferenças: A conexão e o filtro.No caso do vendedor, estou chamando a conexão de "Conexao_Vendedor" e o filtro é o valor da coluna COD_VENDEDOR.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;IMPORTANTE&lt;/STRONG&gt;: Para criar a conexão do NPrinting, teremos que usar a mesma nomenclatura que estamos declarando aqui. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2- O resultado do código anterior será a tabela abaixo:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_02.jpg"&gt;&lt;IMG alt="" class="aligncenter wp-image-663 jive-image size-full" height="166" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_02.jpg" width="600" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sim, ainda esta duplicando a linha para o "YURI NICOLETT", iremos tratar adiante. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3- Vamos gerar a mesma tabela, porém para supervisor:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_03.jpg"&gt;&lt;IMG alt="" class="aligncenter jive-image wp-image-664 size-full" height="115" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_03.jpg" width="600" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;Repare que alterei o nome da conexão e o conteúdo do filtro é o valor do campo COD_SUPERVISOR &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4- Agora vamos tratar a linha duplicada do vendedor "YURI NICOLETT" e também gerar as demais informações necessárias para o cadastro de filtros:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_04.jpg"&gt;&lt;IMG alt="" class="aligncenter jive-image size-full wp-image-665" height="217" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_04.jpg" width="600" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Calma... vou explicar melhor, mas veja o resultado final:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_05.jpg"&gt;&lt;IMG alt="" class="wp-image-666 aligncenter jive-image size-full" height="107" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_05.jpg" style="width: 778px; height: 106.629px;" width="778" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;[%ChaveUsuarioNPrinting]&lt;/STRONG&gt;: Este campo não é usado no NPrinting, uso apenas de base guia para o painel do QlikSense.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Name]&lt;/STRONG&gt;: O nome do filtro receberá o tipo de filtro (Vendedor/Supervisor) e o nome do identificador único do usuário (e-mail)&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Description]&lt;/STRONG&gt;: Apenas um texto descritivo&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_App]&lt;/STRONG&gt;: Nome da App gerada no NPrinting&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Enabled]&lt;/STRONG&gt;: O filtro deve estar ativo&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Connection]&lt;/STRONG&gt;: O nome da conexão gerada no NPrinting&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Values]&lt;/STRONG&gt;: Não esta definido, pois aqui é para selecionar valores do tipo texto&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Numeric Values]&lt;/STRONG&gt;: É a definição do filtro que será realizado. Fique atento que "COD_VENDEDOR" deve ser o nome da coluna no QlikSense, em que o NPrinting vai selecionar ao gerar o relatório.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Formulas]&lt;/STRONG&gt;: Não esta definido, pois aqui é para selecionar valores com expressões&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Não esqueçam:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;O nome do filtro deve seguir um padrão, SER O MESMO, entre o cadastro de usuários e cadastro de filtro&lt;/LI&gt;&lt;LI&gt;Se determinado usuário vai receber mais de um filtro, todas as informações devem estar na mesma linha do cadastro de filtro. Maiores informações sobre cadastro de filtro &lt;A href="https://help.qlik.com/pt-BR/nprinting/June2018/Content/ReportsDevelopment/Static-dynamic-filters.htm" rel="noopener" target="_blank"&gt;clique aqui!&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;O nome da app deve ser o mesmo nome que gerou no NPrinting&lt;/LI&gt;&lt;LI&gt;O nome da conexão deve ser o mesmo nome que gerou no NPrinting e, não se esqueçam, aqui é o segredo para definirmos que o relatório de vendedor vai usar o filtro da conexão de vendedores.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;5- Vamos repetir o passo 4 para o supervisor:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_06.jpg"&gt;&lt;IMG alt="" class="wp-image-667 aligncenter jive-image size-full" height="205" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_06.jpg" width="600" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;Após a execução desse script, as tabelas serão auto-concatenadas (quando duas tabelas possuem as mesmas colunas, elas se concatenam automaticamente).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Para exibir a tabela, vou cria-la na "Visão Geral do Aplicativo":&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_07.jpg"&gt;&lt;IMG alt="" class="wp-image-668 aligncenter jive-image size-full" height="126" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_07.jpg" style="width: 790px; height: 126.297px;" width="790" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Show de bola! Agora tenho todos os meus filtros separados:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Se meu vendedor possui mais de um código, esses valores estarão listados em [Filter_Numeric Values]&lt;/LI&gt;&lt;LI&gt;Se o mesmo usuário, definido pelo e-mail, for um vendedor e um supervisor, este deverá ter definido um filtro pra cada&lt;UL&gt;&lt;LI&gt;Cada tipo de filtro esta separado em conexões diferentes, vendedores utilizarão a conexão: "Conexao_Vendedor" e supervisores utilizarão a conexão: "Conexao_Supervisor"&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Opa, mas peraí! Não faltou adicionar o nome do filtro lá na tabela de Usuário? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;6- Vamos preencher o campo "Filter" do cadastro de usuários. Note que vou apenas alterar o código passado no post anterior:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_08.jpg"&gt;&lt;IMG alt="" class="wp-image-671 aligncenter jive-image size-full" height="429" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_08.jpg" width="600" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;O comando Concat pode ter ficado estranho, mas ele seguirá o mesmo padrão:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Vendedores: FiltroVendedor:EMAIL&lt;/LI&gt;&lt;LI&gt;Supervisores: FiltroSupervisor:EMAIL&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Utilizando a coluna [Usuario.Filtro] para preencher a coluna [Filters]:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_09.jpg"&gt;&lt;IMG alt="" class="wp-image-672 aligncenter jive-image size-full" height="255" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_09.jpg" width="600" /&gt;&lt;/A&gt; &lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;Conclusão&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Agora temos toda a estrutura de Usuários, Filtros e Grupos desenvolvida dentro do QlikSense, podendo importa-la para dentro do NPrinting (mostrado no post anterior):&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_10.jpg"&gt;&lt;IMG alt="" class="aligncenter jive-image wp-image-673 size-full" height="310" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_10.jpg" style="width: 774px; height: 309.845px;" width="774" /&gt;&lt;/A&gt;Reparem que na tabela de usuários, caso este possua mais de um filtro, será listado com vírgulas! O que vai definir qual filtro será usado para o usuário "YURI NICOLETT"? A conexão!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mas Yuri, vou ter que criar várias conexões, do mesmo QVF, que possui as mesmas informações, só para que o NPrinting consiga fazer a escolha do filtro? Sim!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Também não acho o processo muito inteligente, mas foi o que consegui para atender as necessidades do projeto. Existe outra? Não sei, ainda não encontrei. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ok, ok... mas e agora? Como que faço o disparo? Hehe, vou explicar direito no próximo post!&lt;A href="https://ynicolett.files.wordpress.com/2018/08/pluto-triste.jpg"&gt;&lt;IMG alt="" class="alignnone jive-image size-full wp-image-674" height="300" src="https://ynicolett.files.wordpress.com/2018/08/pluto-triste.jpg" width="400" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No próximo post, além de explicar como será feita a distribuição dos relatórios, irei refazer toda a parte do NPrinting:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;App&lt;/LI&gt;&lt;LI&gt;Conexão&lt;/LI&gt;&lt;LI&gt;Construção do relatório de usuários, filtros e grupos&lt;/LI&gt;&lt;LI&gt;Construção da tarefa de geração do relatório de usuários, filtros e grupos&lt;/LI&gt;&lt;LI&gt;Construção da tarefa de importação dos usuários, filtros e grupos&lt;/LI&gt;&lt;LI&gt;Construção do relatório de vendedores&lt;/LI&gt;&lt;LI&gt;Construção do relatório de supervisores&lt;/LI&gt;&lt;LI&gt;Construção da tarefa de geração do relatório de vendedores&lt;/LI&gt;&lt;LI&gt;Construção da tarefa de geração do relatório de supervisores&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;Arquivos para download&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;O projeto esta sendo realizado em Qlik Sense, desta forma todos poderão ter acesso ao código fonte do QVF.Link para acesso ao diretório do projeto: &lt;A href="https://drive.google.com/drive/folders/1TM3uoRO-IPerM-MzgTziqwBWRWpdHfsm?usp=sharing" rel="noopener" target="_blank"&gt;AQUI&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No diretório existem os arquivos:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Modelo_Importacao_Nprinting.xlsx – Planilha modelo para importação dos usuários, filtros e grupos&lt;/LI&gt;&lt;LI&gt;Hierarquia.xlsx – Planilha com a hierarquia de Vendedores e Supervisores&lt;/LI&gt;&lt;LI&gt;CadastroUsuarios.xlsx – Relatório gerado no NPrinting, com os usuários e grupos já tratados&lt;/LI&gt;&lt;LI&gt;CadastroUsuarios_Parte02.xlsx – Relatório gerado no NPrinting, com os usuários e grupos já tratados. &lt;STRONG&gt;Arquivo gerado com filtros&lt;/STRONG&gt;&lt;/LI&gt;&lt;LI&gt;BlogNicolett – Projeto NPrinting – Parte 01.qvf – QVF com o código para tratar os usuários - App gerada na parte 01 do post&lt;/LI&gt;&lt;LI&gt;BlogNicolett – Projeto NPrinting – Parte 02.qvf – QVF com o código para tratar os usuários - App gerada na parte 02 do post&lt;/LI&gt;&lt;/UL&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 27 Aug 2018 00:46:00 GMT</pubDate>
    <dc:creator>nicolett_yuri</dc:creator>
    <dc:date>2018-08-27T00:46:00Z</dc:date>
    <item>
      <title>Um projeto Nprinting - Parte 02</title>
      <link>https://community.qlik.com/t5/Brasil/Um-projeto-Nprinting-Parte-02/m-p/1467184#M54061</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;Fala pessoal, tudo beleza?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Post de continuação do Projeto Nprinting. Para quem não leu o primeiro, &lt;A href="https://blogdonicolett.com.br/2018/08/20/projeto-nprinting-parte-01/"&gt;veja aqui para entender&lt;/A&gt;!&lt;/P&gt;&lt;P&gt;Link aqui da comunidade: &lt;A href="https://community.qlik.com/qlik-blogpost/5755"&gt;Um projeto Nprinting - Parte 01&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Neste post irei falar mais sobre os filtros, bora lá?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;IMPORTANTE&lt;/STRONG&gt;: Conforme solicitação de alguns leitores, abordarei em um próximo post os temas: "Criar Relatório", "Criar Destino" e "Criar Task de Publicação".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;No capítulo anterior&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No post anterior, conseguimos gerar a planilha com usuários únicos, por e-mail, e seus respectivos grupos, conforme lista abaixo:&lt;/P&gt;&lt;P&gt;&lt;A href="https://ynicolett.files.wordpress.com/2018/08/projetonprinting_codigo07.jpg"&gt;&lt;IMG alt="" class="wp-image-642 size-large aligncenter jive-image" height="123" src="https://ynicolett.files.wordpress.com/2018/08/projetonprinting_codigo07.jpg?w=600" width="600" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;O caso que nos preocupa é o "YURI NICOLETT", que receberá relatórios para o nível de vendedor e supervisor. Sei que posso tratar isso nos filtros, porém existe uma maneira de criar vários filtros, para o mesmo usuário, e identificar o filtro que será utilizado em cada relatório? &lt;STRONG&gt;Sim&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;Filtros&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tudo o que você precisa saber sobre filtros esta &lt;A href="https://help.qlik.com/pt-BR/nprinting/June2018/Content/ReportsDevelopment/Static-dynamic-filters.htm" rel="noopener" target="_blank"&gt;aqui&lt;/A&gt;!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Existem vários tipos de filtros:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Filtros de Tarefas&lt;/LI&gt;&lt;LI&gt;Filtros de Relatórios&lt;/LI&gt;&lt;LI&gt;Filtros de Objetos&lt;/LI&gt;&lt;LI&gt;Filtros de Usuários&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Os filtros são avaliados na seguinte sequência: tarefa, usuário, relatório e objeto.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;Em nosso exemplo, o tipo de filtro que trataremos será o de usuário. Para o cadastro de um filtro, serão solicitadas algumas informações (&lt;A href="https://help.qlik.com/pt-BR/nprinting/June2018/Content/DeployingQVNprinting/Import-Users-Filters.htm" rel="noopener" target="_blank"&gt;maiores informações no help da qlik&lt;/A&gt;&lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;Nome&lt;/STRONG&gt;: nome do filtro.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Descrição&lt;/STRONG&gt;: descrição (opcional).&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Aplicativo&lt;/STRONG&gt;: nome do aplicativo associado ao filtro. O aplicativo deve existir no servidor.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Habilitado&lt;/STRONG&gt;: defina como verdadeiro, caso deseje criar um filtro habilitado. Defina como falso para criar um filtro desabilitado que será ignorado durante a geração do relatório.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Conexão&lt;/STRONG&gt;: nome da conexão. Ao especificar isso, você pode criar filtros diferentes com base em campos com os mesmos nomes de conexões diferentes no mesmo aplicativo. A conexão deve existir no servidor.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Valores&lt;/STRONG&gt;: use essa coluna para filtrar os valores de string. Liste-os no formato [nome do campo]={value1,value2,...}. Para adicionar valores para mais de um campo, separe-os com uma vírgula. Por exemplo: [País]={Italy,Germany,Spain}, [CategoryName]={Babywear, Men´s Wear, Women's Wear}. Não insira espaços em branco antes e depois do símbolo de igual (=).&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Valores Numéricos&lt;/STRONG&gt;: use essa coluna para filtrar os valores numéricos. Liste-os no formato [nome do campo]={value1,value2,...}. Por exemplo, CategoryID={1.0,"5",8.2}. Não insira espaços em branco antes e depois do símbolo de igual (=).&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;Fórmulas&lt;/STRONG&gt;: use essa coluna para calcular valores para filtrar por meio do uso de fórmulas do &lt;SPAN class="CommonComponentsQlikView"&gt;QlikView&lt;/SPAN&gt;. Liste-os no formato [nome do campo]={formula1,formula2,...}. Por exemplo, Ano={Year(now()), Year(now())-1,Year(now())-2}. Não insira espaços em branco antes e depois do símbolo de igual (=). Se um valor ou uma fórmula incluir vírgulas, use aspas duplas como delimitadores. Exemplo: [SalemanName]={"Jeremy Martinson, Jr.", Tom Lindwall} em vez de [SalemanName]={Jeremy Martinson, Jr., Tom Lindwall}&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Lembram que no cadastro do usuário, também existe uma coluna de filtro? Não lembra? Veja a planilha que geramos no post anterior:&lt;/P&gt;&lt;P&gt;&lt;A href="https://ynicolett.files.wordpress.com/2018/08/mostrafiltroporusuario.jpg"&gt;&lt;IMG alt="" class="wp-image-660 aligncenter jive-image size-full" height="105" src="https://ynicolett.files.wordpress.com/2018/08/mostrafiltroporusuario.jpg" width="600" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Com a coluna "Filters", poderei cadastrar "N" filtros para cada um dos usuários.&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;Lembre-se&lt;/STRONG&gt;: A nomenclatura utilizada no cadastro do usuário deverá ser a mesma no cadastro do filtro.&lt;/SPAN&gt;&amp;nbsp; &lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;Sintaxe de filtros&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A sintaxe para criar filtros no NPrinting é simples, mas não custa reforçar! Todos os detalhes podem ser conferidos &lt;A href="https://help.qlik.com/pt-BR/nprinting/June2018/Content/DeployingQVNprinting/Import-Users-Filters.htm" rel="noopener" target="_blank"&gt;aqui&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sintaxe: [Nome do Campo]={Valor1, Valor2, Valor3}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Não inserir espaço em branco antes ou depois do =&lt;/LI&gt;&lt;LI&gt;Se o nome campo possui espaços, use colchetes []. Exemplo: [Código do Vendedor]={1}&lt;/LI&gt;&lt;LI&gt;Mais de um valor deve ser separado por virgula. Exemplo: [Código do Vendedor]={1,2,3,4}&lt;/LI&gt;&lt;LI&gt;Cada tipo de filtro deve respeitar a sua respectiva coluna:&lt;UL&gt;&lt;LI&gt;Texto - Value&lt;/LI&gt;&lt;LI&gt;Númeri - Numeric Value&lt;/LI&gt;&lt;LI&gt;Expressões - Formula&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;LI&gt;Textos não devem usar aspas, ao menos se tiver vírgula. Exemplo: [Nome do Vendedor]={YURI NICOLETT, JULIAN SCATAMACHIA, "ALEXANDRE, O GRANDE"}&lt;/LI&gt;&lt;LI&gt;Para a regra anterior, também será necessário usar aspas em caso de espaço no início ou fim do texto. Exemplo: [Nome do Vendedor]={" ESPAÇO ANTES","ESPAÇO DEPOIS"}&lt;/LI&gt;&lt;LI&gt;Filtros com mais de um campo devem ser separados por vírgula. Exemplo: [Filtro1]={1,2,3},[Filtro2]={YURI NICOLETT, JULIAN &lt;SPAN style="font-size: 13.3333px;"&gt;SCATAMACHIA&lt;/SPAN&gt;}&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;Voltando ao projeto&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;OK, posso criar vários filtros para o mesmo usuário, mas como posso definir quais filtro deve ser interpretado por relatório? Melhorando a pergunta: Como posso definir que no relatório de vendedores, o usuário "Yuri Nicolett" tenha o valor 1 para a coluna COD_VENDEDOR selecionado e para o relatório de supervisores, tenha o valor 100 para a coluna COD_SUPERVISOR?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Resposta simples: &lt;STRONG&gt;Conexões&lt;/STRONG&gt;!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;Conexão&lt;/STRONG&gt;: nome da conexão. Ao especificar isso, &lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;você pode criar filtros diferentes com base em campos com os mesmos nomes de conexões diferentes no mesmo aplicativo&lt;/STRONG&gt;&lt;/SPAN&gt;. A conexão deve existir no servidor.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A resposta estava ali o tempo todo? Pior que estava! Eu também demorei a perceber &lt;IMG src="https://community.qlik.com/legacyfs/online/emoticons/grin.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;OK, já sabemos o caminho das pedras, vamos criar a tabela de filtros, no Qlik Sense, e também preencher a coluna "Filters" para o relatório de usuários.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H1&gt;Criar tabela de filtros (Qlik Sense)&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1- Vou reutilizar a tabela de Hierarquia que foi gerada no post anterior (não se preocupe, tem um qvf com o código pronto) para gerar os filtros de vendedores:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_01.jpg"&gt;&lt;IMG alt="" class="wp-image-662 aligncenter jive-image size-full" height="119" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_01.jpg" width="600" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Estou mantendo a mesma regra, de usuários, para definir o e-mail, porém agora tenho duas diferenças: A conexão e o filtro.No caso do vendedor, estou chamando a conexão de "Conexao_Vendedor" e o filtro é o valor da coluna COD_VENDEDOR.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;IMPORTANTE&lt;/STRONG&gt;: Para criar a conexão do NPrinting, teremos que usar a mesma nomenclatura que estamos declarando aqui. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2- O resultado do código anterior será a tabela abaixo:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_02.jpg"&gt;&lt;IMG alt="" class="aligncenter wp-image-663 jive-image size-full" height="166" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_02.jpg" width="600" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sim, ainda esta duplicando a linha para o "YURI NICOLETT", iremos tratar adiante. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3- Vamos gerar a mesma tabela, porém para supervisor:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_03.jpg"&gt;&lt;IMG alt="" class="aligncenter jive-image wp-image-664 size-full" height="115" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_03.jpg" width="600" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;Repare que alterei o nome da conexão e o conteúdo do filtro é o valor do campo COD_SUPERVISOR &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4- Agora vamos tratar a linha duplicada do vendedor "YURI NICOLETT" e também gerar as demais informações necessárias para o cadastro de filtros:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_04.jpg"&gt;&lt;IMG alt="" class="aligncenter jive-image size-full wp-image-665" height="217" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_04.jpg" width="600" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Calma... vou explicar melhor, mas veja o resultado final:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_05.jpg"&gt;&lt;IMG alt="" class="wp-image-666 aligncenter jive-image size-full" height="107" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_05.jpg" style="width: 778px; height: 106.629px;" width="778" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;STRONG&gt;[%ChaveUsuarioNPrinting]&lt;/STRONG&gt;: Este campo não é usado no NPrinting, uso apenas de base guia para o painel do QlikSense.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Name]&lt;/STRONG&gt;: O nome do filtro receberá o tipo de filtro (Vendedor/Supervisor) e o nome do identificador único do usuário (e-mail)&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Description]&lt;/STRONG&gt;: Apenas um texto descritivo&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_App]&lt;/STRONG&gt;: Nome da App gerada no NPrinting&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Enabled]&lt;/STRONG&gt;: O filtro deve estar ativo&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Connection]&lt;/STRONG&gt;: O nome da conexão gerada no NPrinting&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Values]&lt;/STRONG&gt;: Não esta definido, pois aqui é para selecionar valores do tipo texto&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Numeric Values]&lt;/STRONG&gt;: É a definição do filtro que será realizado. Fique atento que "COD_VENDEDOR" deve ser o nome da coluna no QlikSense, em que o NPrinting vai selecionar ao gerar o relatório.&lt;/LI&gt;&lt;LI&gt;&lt;STRONG&gt;[Filter_Formulas]&lt;/STRONG&gt;: Não esta definido, pois aqui é para selecionar valores com expressões&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Não esqueçam:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;O nome do filtro deve seguir um padrão, SER O MESMO, entre o cadastro de usuários e cadastro de filtro&lt;/LI&gt;&lt;LI&gt;Se determinado usuário vai receber mais de um filtro, todas as informações devem estar na mesma linha do cadastro de filtro. Maiores informações sobre cadastro de filtro &lt;A href="https://help.qlik.com/pt-BR/nprinting/June2018/Content/ReportsDevelopment/Static-dynamic-filters.htm" rel="noopener" target="_blank"&gt;clique aqui!&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;O nome da app deve ser o mesmo nome que gerou no NPrinting&lt;/LI&gt;&lt;LI&gt;O nome da conexão deve ser o mesmo nome que gerou no NPrinting e, não se esqueçam, aqui é o segredo para definirmos que o relatório de vendedor vai usar o filtro da conexão de vendedores.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;5- Vamos repetir o passo 4 para o supervisor:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_06.jpg"&gt;&lt;IMG alt="" class="wp-image-667 aligncenter jive-image size-full" height="205" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_06.jpg" width="600" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;Após a execução desse script, as tabelas serão auto-concatenadas (quando duas tabelas possuem as mesmas colunas, elas se concatenam automaticamente).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Para exibir a tabela, vou cria-la na "Visão Geral do Aplicativo":&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_07.jpg"&gt;&lt;IMG alt="" class="wp-image-668 aligncenter jive-image size-full" height="126" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_07.jpg" style="width: 790px; height: 126.297px;" width="790" /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Show de bola! Agora tenho todos os meus filtros separados:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Se meu vendedor possui mais de um código, esses valores estarão listados em [Filter_Numeric Values]&lt;/LI&gt;&lt;LI&gt;Se o mesmo usuário, definido pelo e-mail, for um vendedor e um supervisor, este deverá ter definido um filtro pra cada&lt;UL&gt;&lt;LI&gt;Cada tipo de filtro esta separado em conexões diferentes, vendedores utilizarão a conexão: "Conexao_Vendedor" e supervisores utilizarão a conexão: "Conexao_Supervisor"&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Opa, mas peraí! Não faltou adicionar o nome do filtro lá na tabela de Usuário? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;6- Vamos preencher o campo "Filter" do cadastro de usuários. Note que vou apenas alterar o código passado no post anterior:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_08.jpg"&gt;&lt;IMG alt="" class="wp-image-671 aligncenter jive-image size-full" height="429" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_08.jpg" width="600" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;O comando Concat pode ter ficado estranho, mas ele seguirá o mesmo padrão:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Vendedores: FiltroVendedor:EMAIL&lt;/LI&gt;&lt;LI&gt;Supervisores: FiltroSupervisor:EMAIL&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Utilizando a coluna [Usuario.Filtro] para preencher a coluna [Filters]:&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_09.jpg"&gt;&lt;IMG alt="" class="wp-image-672 aligncenter jive-image size-full" height="255" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_09.jpg" width="600" /&gt;&lt;/A&gt; &lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;Conclusão&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Agora temos toda a estrutura de Usuários, Filtros e Grupos desenvolvida dentro do QlikSense, podendo importa-la para dentro do NPrinting (mostrado no post anterior):&lt;A href="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_10.jpg"&gt;&lt;IMG alt="" class="aligncenter jive-image wp-image-673 size-full" height="310" src="https://ynicolett.files.wordpress.com/2018/08/codigofiltrosqliksense_10.jpg" style="width: 774px; height: 309.845px;" width="774" /&gt;&lt;/A&gt;Reparem que na tabela de usuários, caso este possua mais de um filtro, será listado com vírgulas! O que vai definir qual filtro será usado para o usuário "YURI NICOLETT"? A conexão!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mas Yuri, vou ter que criar várias conexões, do mesmo QVF, que possui as mesmas informações, só para que o NPrinting consiga fazer a escolha do filtro? Sim!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Também não acho o processo muito inteligente, mas foi o que consegui para atender as necessidades do projeto. Existe outra? Não sei, ainda não encontrei. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ok, ok... mas e agora? Como que faço o disparo? Hehe, vou explicar direito no próximo post!&lt;A href="https://ynicolett.files.wordpress.com/2018/08/pluto-triste.jpg"&gt;&lt;IMG alt="" class="alignnone jive-image size-full wp-image-674" height="300" src="https://ynicolett.files.wordpress.com/2018/08/pluto-triste.jpg" width="400" /&gt;&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No próximo post, além de explicar como será feita a distribuição dos relatórios, irei refazer toda a parte do NPrinting:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;App&lt;/LI&gt;&lt;LI&gt;Conexão&lt;/LI&gt;&lt;LI&gt;Construção do relatório de usuários, filtros e grupos&lt;/LI&gt;&lt;LI&gt;Construção da tarefa de geração do relatório de usuários, filtros e grupos&lt;/LI&gt;&lt;LI&gt;Construção da tarefa de importação dos usuários, filtros e grupos&lt;/LI&gt;&lt;LI&gt;Construção do relatório de vendedores&lt;/LI&gt;&lt;LI&gt;Construção do relatório de supervisores&lt;/LI&gt;&lt;LI&gt;Construção da tarefa de geração do relatório de vendedores&lt;/LI&gt;&lt;LI&gt;Construção da tarefa de geração do relatório de supervisores&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;&lt;/H1&gt;&lt;H1&gt;Arquivos para download&lt;/H1&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;O projeto esta sendo realizado em Qlik Sense, desta forma todos poderão ter acesso ao código fonte do QVF.Link para acesso ao diretório do projeto: &lt;A href="https://drive.google.com/drive/folders/1TM3uoRO-IPerM-MzgTziqwBWRWpdHfsm?usp=sharing" rel="noopener" target="_blank"&gt;AQUI&lt;/A&gt;‌&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No diretório existem os arquivos:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Modelo_Importacao_Nprinting.xlsx – Planilha modelo para importação dos usuários, filtros e grupos&lt;/LI&gt;&lt;LI&gt;Hierarquia.xlsx – Planilha com a hierarquia de Vendedores e Supervisores&lt;/LI&gt;&lt;LI&gt;CadastroUsuarios.xlsx – Relatório gerado no NPrinting, com os usuários e grupos já tratados&lt;/LI&gt;&lt;LI&gt;CadastroUsuarios_Parte02.xlsx – Relatório gerado no NPrinting, com os usuários e grupos já tratados. &lt;STRONG&gt;Arquivo gerado com filtros&lt;/STRONG&gt;&lt;/LI&gt;&lt;LI&gt;BlogNicolett – Projeto NPrinting – Parte 01.qvf – QVF com o código para tratar os usuários - App gerada na parte 01 do post&lt;/LI&gt;&lt;LI&gt;BlogNicolett – Projeto NPrinting – Parte 02.qvf – QVF com o código para tratar os usuários - App gerada na parte 02 do post&lt;/LI&gt;&lt;/UL&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 Aug 2018 00:46:00 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Brasil/Um-projeto-Nprinting-Parte-02/m-p/1467184#M54061</guid>
      <dc:creator>nicolett_yuri</dc:creator>
      <dc:date>2018-08-27T00:46:00Z</dc:date>
    </item>
  </channel>
</rss>

