1 2 3 Previous Next

Qlik Brasil

130 posts
Yuri Nicolett

Qlik Master Class Brasil

Posted by Yuri Nicolett Jul 25, 2018

Olá galera, tudo beleza?

 

O Grupo Inteligência de Negócios (site) tem o prazer de anunciar, pela primeira vez no Brasil, o evento Qlik Master Class.

O Qlik Master Class é um treinamento hands-on avançado de QlikView ou Qlik Sense para desenvolvedores. Serão 3 dias de imersão com 8 horas diárias com as melhores práticas para levar suas habilidades de Qlik ao próximo nível.

 

O melhor de tudo, temos desconto da inscrição para leitores do Blog do Nicolett!

 

 

 

 

PALESTRANTES


Tenho o prazer de anunciar que o evento será ministrado pelo Oleg Troyansky, um dos integrantes do grupo Master Summit e por mim! Sim, uma honra estar ao lado de um nome tão renomado no mundo qlik.

 

Não sabe quem é o Oleg?

$hiygbup6joa

Melhor agora? rsrs

 

Oleg foi um dos pioneiros no uso do QlikView® em 2002. Em 2007, ele dirigiu a Natural Synergies, a primeira empresa de BI na América do Norte criada com 100% de foco no Qlik®.

Oleg Troyansky é um conhecido veterano do Qlik® e um renomado especialista.Como moderador inicial e um dos principais colaboradores de todos os tempos no Qlik® Community Forum, Oleg ajudou milhares de desenvolvedores do Qlik® em todo o mundo. A maioria dos profissionais do Qlik® está familiarizada com os aplicativos Qlik® compartilhados da Oleg, suas notas técnicas e sua participação ativa no Developer Forum. Os veteranos do Qlik® lembram-se da contribuição de Oleg para a popularização e propagação de conceitos de desenvolvimento do Qlik®, como tabelas de links, usando indicadores calculados e as várias maneiras de usar a análise de conjuntos. Oleg começou o QlikView® em 2002 como um dos primeiros a adotar os EUA. Desde 2007, Oleg lidera a Natural Synergies, a primeira empresa de BI na América do Norte que foi criada com 100% de foco no Qlik®.

Hoje, Oleg dedica a maior parte do tempo ao treinamento das equipes de desenvolvedores Qlik®, além de fornecer serviços especializados, como ajuste e otimização de desempenho, arquitetura de soluções e melhores práticas. E ele está ocupado escrevendo em Q-Tips. Em 2015, Oleg escreveu seu livro monumental "QlikView Your Business", publicado pela Wiley.

 

 

 

 

VOCÊ ESCOLHE! QLIKVIEW OU QLIK SENSE

 

Escolha sua trilha de conhecimento: QlikView ou Qlik Sense. Indique qual será sua trilha no momento de sua inscrição. Para participar do treinamento é necessário instalar a plataforma em seu notebook de acordo com a trilha escolhida.

A palestra do Oleg Troyansky será sobre Qlik Sense e com tradução simultânea.

 

 

 

 

 

CONTEÚDO

 

 

 

QUANDO SERÁ?

 

Dias: 11, 12 e 13 de Setembro

 

Horários:
Dia 1: das 08h às 18h
Dia 2: das 09h às 18h
Dia 3: das 09h às 18h

 

Local: Avenida Francisco Matarazzo, 1350 Edifício CGD - 7º Andar - São Paulo

 

 

 

 

VALORES EXCLUSIVOS PARA LEITORES DO BLOG

 

Para você que é leitor do Blog do Nicolett, preparamos uma oferta especial para facilitar suas inscrições no treinamento mais completo sobre BI e Qlik do Brasil.

INVESTIMENTO: R$ 2.700,00

 

O cadastro será avaliado individualmente, por esta razão sugiro que você entre em contato comigo após realizar a inscrição no site. Pode me enviar um e-mail contendo o título "Qlik Master Class Brasil".

E-mail: yuri.nicolett@in1.com.br

 

 

 

COMO SE INSCREVER?

 

Acesse o site e faça seu cadastro. Após realizar o cadastro, me envie um e-mail (yuri.nicolett@in1.com.br) dizendo que gostaria de receber o desconto do blog. Lembre-se de colocar o título do e-mail como: "Qlik Master Class Brasil"

Após a realização e aprovação do cadastro, você receberá, por e-mail, um link para realizar o pagamento do evento através do PagSeguro.

 

 

 

 

VAGAS LIMITADAS

 

As vagas são limitadas, apenas 100 pessoas poderão fazer parte desse evento.

Não deixe para depois

Um dos recursos que mais me apaixona no Qlik Sense é a capacidade de facilmente podermos embarcar seus objetos em uma página HTML podendo criar uma solução totalmente amigável.

Alguns exemplos que gosto sempre de apresentar

 

Como isso funciona?

Através de API´s abertas o Qlik Sense pode disponibilizar um gráfico construído em uma app, uma lista para o usuário selecionar ou até mesmo um subconjunto de dados sumarizados (hipercubo)

 

Veja abaixo um exemplo super simples de como exibir utilizando-se a biblioteca QDT-Components . Essa lib disponibilizada em modelo Open Source pode ser usada em

  • HTML plano
  • Angular 6
  • React 16
  • Vue 2

 

Como faço?

Pre-requisito: Você precisa ter acesso a um Qlik Sense Enterprise (se não tiver, para aprender pode utilizar o PlayGround)

 

1 - Baixe a última versão do QTD Components (url)

2 - Embarque esse js na sua página HTML

<script type="text/javascript" src="qdt-components.js"></script>

3 - Configure a conexão com seu Qlik Sense Enterprise

<script type="text/javascript">
  var options = {
    config: {
      host: "sense-demo.qlik.com",
      secure: true,
      port: 443,
      prefix: "/",
      appId: "133dab5d-8f56-4d40-b3e0-a6b401391bde"
    },
    connections: {
      vizApi: true,
      engineApi: true
    }
    }
</script>

 

4 - Adicione um objeto à sua página

<divid="qdt1"></div>

 

5 - Agora basta "pedir" à API para exibir qualquer objeto da sua aplicação (passando o ID)

<script>
var qdtComponents = new QdtComponents(options.config, options.connections);
  var element = document.getElementById('qdt1');
  qdtComponents.render('QdtViz', {id: 'a5e0f12c-38f5-4da9-8f3f-0e4566b28398', height:'300px'}, element);
</script>

 

Dica: Se você estiver hospedando a sua página em outro servidor que não o Qlik Sense você deve liberar o "Access-Control-Allow-Origin" no seu Virtual-Proxy. Abaixo eu liberei qualquer host na minha máquina, no seu caso, provavelmente você vai querer colocar apenas o host de onde está sua página HTML

Cross.PNG

 

 

 

Documentação: Qlik Playground

Pessoal,

 

Vejam só as novidades da versão Junho 2018 do Qlik Sense!!

 

Alessandro Furtado

Qonnections 2018

Posted by Alessandro Furtado May 5, 2018

A Qlik tem um evento mundial aonde com quase 300 apresentações de temas variados, ela capacita parceiros e clientes e dá uma clara visão para aonde os produtos estão caminhando. Neste ano, o evento ocorreu em Orlando, Florida, do dia 23 a 26 de abril.


O evento chama-se Qonnections. Este ano com mais de 3.500 participantes.

 

Foi a primeira vez que vi e escutei o CEO Mike Capone. E deixou claro que está vindo para fazer acontecer.  De forma humorada, comparou o evento da Qlik que é menor do que alguns dos concorrentes em quantidade de participantes, mas maiores em alguns números de clientes:


2018-05-05 15_57_03-IMG_5634 - Windows Photo Viewer.png


Além da taxa de retenção de clientes de 94%, ano passado a Qlik conquistou mais de 3800 novos clientes.

 

Um amigo meu, que já trabalhou no mercado americano me avisou que com um CEO americano, agora o ritmo é outro. Melhor para nós, conforme alguns pontos do pronunciamento do Mike abaixo:

 

  1. A Qlik está totalmente comprometida com todo o portfólio de produtos - a migração é opcional. Reconhecem que alguns clientes adoram o QlikView e não querem migrar ainda;
  2. A Qlik está acelerando a entrega de alguns itens “must have” do Qlik Sense para este ano;
  3. Os clientes da Qlik não precisarão mais comprar licenças secundárias para o Qlik Sense. Uma licença para um pode ser uma licença para ambos com um aumento na taxa de manutenção. A regra ainda vai ser comunicada, pois querem fazer da forma certa e estão nos finalmentes.  Mas é uma ótima noticia para a base QlikView.


Antes de entrar um pouco na área técnica, foi muito explorado o tema “Alfabetização de Dados” (Data Literacy)


2018-05-05 16_00_50-IMG_5676 - Windows Photo Viewer.png

Várias salas contavam com palestras sobre Data Literacy, desde ensinar o caminho a boas práticas.

 

Fiquei muito feliz pois a um tempo temos autorização do Jordan Morrow para traduzir e publicar o seu blog no nosso.  Quer conhecer um pouco mais?  Visite :

 

http://farolbi.com.br/ascensao-da-alfabetizacao-de-dados/

 

http://farolbi.com.br/data-storytelling-conte-uma-historia-com-os-dados/

 

Fiquei impressionado com a apresentação da Elif Tutuk, Diretora de Pesquisas da Qlik. O Qlik Cognitive Engine, que com recursos de AI abrem novas oportunidades para os clientes Qlik inserindo a AI na avaliação de seus dados. Alguma coisa já esta na versão Abril 2018, mas pelo visto isto é só o começo.

 

Foi apresentado que ao ler uma base de dados, alguns insights dos dados, além de gráficos já são sugeridos pelo Sense, facilitando ao usuário “ver” o que possivelmente ficaria obscuro no meio dos dados. Particularmente esta evolução irá permitir analisar seus dados de outras maneiras, caminhando ao meu ver para Augmented Intelligence.

 

Muitas outras novidades, com o multi-cloud devendo ser anunciado na versão de Junho (ansioso por isto).

O beta do Qlik Core (Linux/ Docker), que leva o poder associativo do Qlik a outras aplicações. Vale a pena conferir o que está sendo feito em https://www.qlik.com/us/products/qlik-core

 

Rodando o Qlik Engine em dispositivos pequenos, como um Rasberry PI, temos muitos novos caminhos para explorar os dados (especialmente com a explosão dos IOTs). Literalmente levaremos o Qlik aos dados e não os dados ao Qlik.

 

Tivemos uma amostra do Qlik rodando em um Rasberry PI.

Ao se pedalar, atualizava um Dash. Exemplo simples mas eficiente.


2018-05-05 16_03_37-IMG_5702 - Windows Photo Viewer.png


Temos ainda o Big Data Index, serviço de nuvem que expandirá a experiência associativa da Qlik com big data, transferindo o poder da associação da interface do usuário para os dados. Esse novo recurso permitirá que o mecanismo Qlik indexe e armazene informações sobre dados residentes em fontes como Data Lake e Hadoop, sem a necessidade de carregar todos os dados na memória. O Índice de Big Data Associativo permitirá a descoberta de dados de forma rápida. Exemplos rodando em centenas de bilhões de dados em Haddop em respostas similares as que estamos acostumados. Ainda está no forno.

 

Não esquecer do que já temos, mais ainda pouco usado, como o ODAG (On Demand App  Generation), Advanced Analytics (integração com R e Phyton) que tive a oportunidade de fazer um workshop, e novos recursos do GeoAnalytics (que parte da versão paga agora está incorporada ao produto) entre outros recursos.

 

Haviam quase 300 apresentações e como tínhamos poucos dias e muitas alternativas, escolher uma para assistir, era perder outras... Mas o bom deste tipo de evento é que encontramos vários amigos e com isto, o compartilhamento do que estava sendo visto era constante.Isto me deixa feliz em saber (minha opinião) é que apostei no cavalo certo na corrida (Qlik X concorrentes) e que estou na comunidade certa.


E aproveitei e voltei de viagem com a ultima das 6 certificações Qlik (3 QlikView e 3 QlikSense). Um ótimo presente.






Olá Pessoal,

 

Tudo bem?

 

Compartilho com vocês o Quadrante de Gartner comparando os dados do ano anterior com o atual, o que vocês acharam a respeito dos dados e principalmente da evolução apresentada pela Qlik?

 

Gartner.jpeg

 

Abraços!

Pessoal,

 

Venho convidar a todos os desenvolvedores Qlik que residem/trabalham no estado do Rio de Janeiro a fazerem parte do nosso grupo através do link: Comunidade Qlik | Rio de Janeiro (Rio de Janeiro, Brazil) | Meetup

 

Evidentemente nossa comunidade Qlik Brasil é o melhor canal para tiramos dúvidas e iniciarmos os contatos, mas nesse grupo a proposta é estreitar mais as relações e criar um belo networking entre os fanáticos pelo mundo Qlik no RJ.

 

Junte - se a mim e ao  mario.sergio.ti !

Bom dia pessoal !

 

Aqui vai meu convite para o curso de Introdução ao Set Analysis

 

O que você irá aprender


  • Vamos revisar os fundamentos da Teoria de Conjuntos
  • Vou te ensiar a decodificar a sintaxe do Set Analysis
  • Entenda como funcionam os Identificadore e quando usá-los
  • Reutilização de Marcadores em expressões de Set Analysis
  • Entenda como funcionam os modificadores e customize filtros por campo
  • Saiba utilizar operadores para combinar conjuntos

 

Segue o Link para inscrição no primeiro curso de introdução que será dia 11/4 das 20h as 22h. Ao final do curso irei divulgar o link para o curso avançado.

 

Curso online - Introdução ao Set Analysis de A-Z da Qlik Ingressos, Qua, 11/04/2018 às 20:00 | Eventbrite

Galera utilizei uma extensão para qlik sense que achei bem interessante.

 

Rodei e realmente funcionou, importou as imagens direitinho nos testes que fiz, então deixo a dica ai pra galera que quer conhecer mais!

 

No meu caso apliquei para uma lista de produtos, vinculei as fotos e nos rankings que eu faço consigo puxar as fotos dos mesmo.
Ficou bem legal!

 

Segue ai o link:

 

The Climber Cards Extension for Qlik Sense | Michael Nordström - YouTube

 

Abraço!

Um problema para acessar os dados do Evernote , é que a API do Evernote (https://dev.evernote.com/doc) não possuí suporte para acessar os dados via REST.

 

Aqui vou apresentar de forma resumida os passos necessários para viabilizar o acesso do Evernote usando o Qlik Sense.


Encontrei um projeto denominado "Evernote REST Webapp", localizado em https://github.com/ttddyy/evernote-rest-webapp.


"Evernote REST Webapp" é um aplicativo baseado em java que se comporta como um proxy entre os servidores Evernote e seus aplicativos. Ele é construído sobre o Spring Boot , o Sprnig Social Evernote e o evernote-java-sdk.


Para testar, coloquei o aplicativo java em meu computador, criei um tokem no Evernote (https://dev.evernote.com/doc) e configurei o arquivo application.properties, conforme orientado na documentação do "Evernote REST Webapp" (https://github.com/ttddyy/evernote-rest-webapp/wiki/QuickStart).


Meu computador usa Windows 10, porém preferi então usar o Bash Linux do Windows (Isto mesmo o Windows possui um Shell Linux nativo. Vide https://docs.microsoft.com/en-us/windows/wsl/install-win10 para maiores detalhes). Você pode ter que instalar o java ou algum componente adicional, e sendo o caso use o comando "apt install...' 


Uma vez instalado o "Evernote REST Webapp" (arquivo evernote-rest-webapp-1.1.2.war) e configurado o arquivo "application.properties", é só executar o programa:


$ java -jar evernote-rest-webapp-1.1.2.war


Estando tudo OK, o "Evernote REST Webapp" vai ficar aguardando solicitações REST na porta 8080.


Lembrete: Você pode executar "Evernote REST Webapp" usando o Java no Windows, bem como instalar no mesmo servidor do Qlik Sense ou outros que desejar.


Para testar se tudo encontra-se OK, abra uma nova janela do Bash Linux e execute:


$ curl -X POST -H "Content-Type: application/json" http://localhost:8080/userStore/getUser


Se retornar um json com os dados do usuário Evernote, encontra-se funcionando tudo OK!


A API do Evernote possuí diversos métodos (Vide http://dev.evernote.com/doc/reference). Basicamente elas estão divididas em 2 módulos: NoteStore e UserStore.


Vamos falar apenas dos métodos necessários para identificar os Cadernos (Notebooks) e as Notas (Notes) existentes em cada um dos cadernos.


Todos os objetos (Ex: Cadernos e Notas), são identificados por seu GUID, um código único para cada objeto.


Para acessar os dados vamos usar o Conector REST do Qlik Sense (Também pode ser feito no Qlikview, bastando seguir os mesmos passos, com os ajustes necessários)


Vamos configurar uma conexão REST para cada método da API Evernote utilizado. Lembrando que sempre usaremos na configuração REST o "Method HTTP" POST:


EvernoteRest1.png


E uma entrada em Query Headers com "Content-Type: application/json":

EvernoteRest2.png


Nas chamadas REST que exigirem a passagem de parâmetros (ex: '{ "filter": { "notebookGuid": "984df245-4b20-4686-9ab9-57ad1018e0e0"}, "offset": 0, "maxNotes": 1000 }' o mesmo deverá ser feito no campo do conector REST "Request Body" .


EvernoteRest3.png


Inicialmente, podemos buscar os dados referente ao usuário corrente:


- Usar a chamada a API Evernote: http://localhost:8080/userStore/getUser


O Script ficará:


LIB CONNECT TO 'EvernoteUserInfo';


RestConnectorMasterTable:

SQL SELECT

"id",

"username",

"email",

"name",

"timezone",

"privilege",

"created",

"updated" AS "updated_u0",

"deleted",

"active",

"shardId",

"attributes",

"premiumInfo",

"businessUserInfo",

"__KEY_root",

(SELECT

"uploadLimit",

"uploadLimitEnd",

"uploadLimitNextMonth",

"premiumServiceStatus",

"premiumOrderNumber",

"premiumCommerceService",

"premiumServiceStart",

"premiumServiceSKU",

"lastSuccessfulCharge",

"lastFailedCharge",

"lastFailedChargeReason",

"nextPaymentDue",

"premiumLockUntil",

"updated",

"premiumSubscriptionNumber",

"lastRequestedCharge",

"currency",

"unitPrice",

"businessId",

"businessName",

"businessRole",

"unitDiscount",

"nextChargeDate",

"__FK_accounting"

FROM "accounting" FK "__FK_accounting")

FROM JSON (wrap on) "root" PK "__KEY_root";


[accounting]:

LOAD [uploadLimit] AS [uploadLimit],

[uploadLimitEnd] AS [uploadLimitEnd],

[uploadLimitNextMonth] AS [uploadLimitNextMonth],

[premiumServiceStatus] AS [premiumServiceStatus],

[premiumOrderNumber] AS [premiumOrderNumber],

[premiumCommerceService] AS [premiumCommerceService],

[premiumServiceStart] AS [premiumServiceStart],

[premiumServiceSKU] AS [premiumServiceSKU],

[lastSuccessfulCharge] AS [lastSuccessfulCharge],

[lastFailedCharge] AS [lastFailedCharge],

[lastFailedChargeReason] AS [lastFailedChargeReason],

[nextPaymentDue] AS [nextPaymentDue],

[premiumLockUntil] AS [premiumLockUntil],

[updated] AS [updated],

[premiumSubscriptionNumber] AS [premiumSubscriptionNumber],

[lastRequestedCharge] AS [lastRequestedCharge],

[currency] AS [currency],

[unitPrice] AS [unitPrice],

[businessId] AS [businessId],

[businessName] AS [businessName],

[businessRole] AS [businessRole],

[unitDiscount] AS [unitDiscount],

[nextChargeDate] AS [nextChargeDate],

[__FK_accounting] AS [__KEY_root]

RESIDENT RestConnectorMasterTable

WHERE NOT IsNull([__FK_accounting]);

 

[users]:

LOAD [id] AS [id],

[username] AS [username],

[email] AS [email],

[name] AS [name_user],

[timezone] AS [timezone],

[privilege] AS [privilege],

[created] AS [created],

[updated_u0] AS [updated_u0],

[deleted] AS [deleted],

[active] AS [active],

[shardId] AS [shardId],

[attributes] AS [attributes],

[premiumInfo] AS [premiumInfo],

[businessUserInfo] AS [businessUserInfo],

[__KEY_root] AS [__KEY_root]

RESIDENT RestConnectorMasterTable

WHERE NOT IsNull([__KEY_root]);


DROP TABLE RestConnectorMasterTable;


Para buscar os dados de cada nota, precisamos identificar inicialmente quais os Cadernos existentes, e em seguida, para cada caderno, identificar quais as notas existentes. No final então, para cada nota encontrada, precisamos buscar o conteúdo da Nota.


Sendo Assim, a sequencia de métodos da API do Evernote que usaremos, será:


    1. http://localhost:8080/noteStore/listNotebooks (Lista os Cadernos existentes)
    2. http://localhost:8080/noteStore/findNotes (Lista as notas existentes em cada Caderno)
    3. http://localhost:8080/noteStore/getNoteContent (Recebe o conteúdo de cada nota)

 

Nas chamadas dos métodos findNotes e getNoteContent, é necessário fazer um loop em todos GUID dos Cadernos/Notas e fazer a chamada do connector REST, usando a clausula WITH CONNECTION (URL "http://localhost:8080/noteStore/getNoteContent", HTTPHEADER "Content-Type" "application/json", BODY "$(vBody)" );


Exemplo:


Trace ##### CARREGANDO CONTEÚDO DAS NOTAS #####;


set ErrorMode=0;


Let v_regs = NoOfRows('notes'); // Recebe o número de Itens do Array

 

//Loop em todos os registros de notebooks

For v_i = 0 to v_regs-1

    let vGuidNota = peek('noteguid',v_i,'notes') ; //Pega GUID dos Cadernos

   

    v_PercExec = Num(((v_i+1)/v_regs)*100,'#.##0,00'); //Calcula o percentual de registros processados

    v_Qtde = v_i+1; //Quantidade de Regristros Processados

   

    Trace ========>[$(vGuidNota)] $(v_i)  $(v_PercExec)%<========;    //mostrar no script log)


    Let vBody = '{ "guid": "$(vGuidNota)"}';

    Let vBody = Replace(vBody,'"', chr(34)&chr(34));

   

    LIB CONNECT TO 'EvernoteNoteContent';


    RestConnectorMasterTable:

    SQL SELECT

        "col_1"

    FROM CSV (header off, delimiter "tab", quote """") "CSV_source"

    WITH CONNECTION(URL "http://localhost:8080/noteStore/getNoteContent",

                    HTTPHEADER "Content-Type" "application/json",

                    BODY "$(vBody)"

                  );


    [notescontents]:

    LOAD [col_1] AS [notecontent],

            '$(vGuidNota)' as [noteguid],

            RecNo() as [contentseq] 

    RESIDENT RestConnectorMasterTable;


    DROP TABLE RestConnectorMasterTable;

Next


Informações do Evernote no Qlik Sense:

EvernoteRest4.png

No final você vai conseguir ter as informações de cada uma das notas do Evernote.

 

A base deste texto serve como principio para chamar cada um dos métodos da API do Evernote.


Espero este post seja útil para aqueles que precisam acessar o Evernote. Até a proxima!!!!

! !Olá,

 

Tenho apresentado a solução para analisar grupos do Whatsapp para bastante gente. Estou usando para analisar diversos grupos que participo com boa aceitação. Essa solução foi descrita originalmente no blog Analisando mensagens de Grupos do Whatsapp e algumas pessoas fizeram sugestões que resolvi incorporar ao código, além de algumas melhorias.

 

Com isso, o código ficou mais complexo mas também mais cheio de novidades:

1) Cruzamento com informações de País, Estado,Cidade e Região.

Com base em uma planilha extraídas da Web, de DDD e DDI, é possível analisar agora a origem das mensagens, e foram criadas as dimensões País, UF, Cidade e Região.

Entretanto, há uma limitação, não funciona para aquelas pessoas que estão na agenda de contatos. Isso pq o WP envia o nome e não o número caso a pessoa esteja na agenda de contatos. Um contorno para isso, seria exportar a lista de contatos e carrega-la para dentro do painel.

 

2) Contagem de Participantes:

A contagem de participantes é feita com base nas mensagens. Entretanto, como todos que entram ou são adicionados, é possível descobrir quantos participantes existem.

Existe uma limitação que pode ocorrer para alguns participantes que podem não ver as mensagens anteriores a sua entrada no grupo.

 

3) Novos KPI´s

Foram adicionados KPIs melhorar a transmissão de informações.

 

Bem, segue as recomendações de instalação:

 

Pré-requisitos:

 

  1. Qlik Sense Desktop. Eu utilizo a versão november2017, mas acho que é compatível com todas as outras.
    • Baixar o Qlik Sense november2017.
    • Se você usar o Qlik Cloud, deverá substituir as extensões pelos gráficos padrões.
    • Se você quiser utilizar com o Qlik Enterprise, apenas importe essa app pelo QMC. Lembre-se que disponibilizar um conexão ao diretório de dados.
  2. Baixe essas extensões, apenas clicando. As extensões devem ser colocadas no diretório %homepath%\Documents\Qlik\Sense\Extensions
  3. Baixe os arquivos anexados e coloque-as no diretório C:\TEMP\WHATSAPP
    • DDDeDDI
  4. Baixe o App de análise e instale no diretório do Qlik Sense %homepath%\Documents\Qlik\Sense\Apps
    • Whatsapp V02 - PT-BR

 

Bem, agora as instruções para utilização:

 

Passo 1 - Extraia as mensagens de Grupo

  • No seu telefone celular, abra o Whasapp e entre no grupo que deseja extrair as mensagens
  • Clique nos 3 pontos na parte superior direita.
  • Selecione Mais...
  • Depois, Enviar por email...
  • Selecione SEM MÍDIA

 

Essa funcionalidade não está disponível no Whatsapp Web, então, você precisa acessar seu telefone celular, não pode ser feito pelo computador.

 

Passo 2 - Baixe os arquivos num diretório de trabalho

  • Crie um diretório chamado C:\TEMP\WHATSAPP
  • Acesse seu e-mail e clique em Salvar Anexos... para o diretório de trabalho C:\TEMP\WHATSAPP

 

Passo 3 - Abra o Qlik Sense e carregue os dados

  • Baixe a aplicação de exemplo
  • Coloque no diretório %homepath%\Documents\Qlik\Sense\Apps
  • Abra o Qlik Sense Desktop
  • Abra a app Whatsapp
  • Carregue os dados

 

Abs e Boas análises,

 

Pedro Bergo

Olá Comunidade !!

 

Este blog é destinado a compartilhar um pouco dos caminhos que "trilhamos" quando tivemos que integrar o QlikView Server com o MFA corporativo daqui da empresa...


O blog está dividido em 2 partes (Sign In e Sign Out), para uma melhor segmentação das atividades necessárias em cada fase (porém um terceiro foi criado para descrever a implementação de grupos). O ambiente era composto por:

 

ItemProduto utilizado
Sistema OperacionalWindows Server 2016 Datacenter
Web ServerIIS v10
QVSQlikView Server Enterprise Edition v12.10 (x64)
Banco de DadosPostgreSQL v10 / MySQL 5.7
Identity Provider (idP)MS Azure Active Directory



Sign In


Inicialmente foi selecionado no QMC (Qlik Management Console) o método de autorização DMS (Document Metadata Service), e também era necessário implementar Single Sign-On (SSO) como processo de autenticação no QVS para se aliar a utilização de Web Ticket. Para esta fase utilizamos como material de apoio o WordPress: Integrating Single Sign On in Qlikview – Part I | BI Experience, seguido das partes II e III, onde criamos as tabelas que comportariam os usuários a serem lidos pelo Directory Service Connector OBDC criado no Setup do QMC (pelo que entendemos, desta forma passava-se não-obrigatória a utilização de senhas pré-cadastradas para os usuários se logarem). Nos bancos de dados PostgreSQL e MySQL fizemos testes que funcionaram para esta finalidade (porém, no PostgreSQL as tabelas requerem declaração das aspas-duplas, conforme abaixo).

odbc_postgresql.png


Um projeto de MFA foi customizado na IDE Visual Studio, para se conectar a um idP Azure e configurado para utilizar o AppID criado para a aplicação. Exemplo pode ser obtido em: https://docs.microsoft.com/pt-br/azure/active-directory/develop/active-directory-code-samples. Também foi incorporado um módulo MVC escrito em asp.net (disponível em: https://github.com/braathen/qv-webticket) e adaptado dentro do projeto criado, seguindo as orientações presentes em README.md. Este último possui a finalidade de recuperar um webticket para o usuário/grupo (tendo concluído o processo de MFA), para logá-lo no AccessPoint.


No deploy IIS foram usados 2 sites: um criado para aplicação ASPNet (somente com os arquivos os arquivos binários publicados do VS) e outro para "rodar" o AccessPoint QVS (a porta do Web Server tem que ser idêntica no setup do QMC). Todos os componentes necessários (autenticação, protocolos, pools, etc.) foram instalados no IIS, como no exemplo:

IIS_resources_mfa2.JPG

Para "ativar" a autenticação via webticket no QVS, usamos a página postada na Comunidade: An introduction to QlikView Security using Web Tickets. Basicamente, os pontos de atenção aqui, foram configurar a autenticação anônima no web server (IIS) para a pasta QvAjaxZfc, e incluir os IP's na whitelist do arquivo config.xml (neste a tag GetWebTicket já existia, então o que fizemos foi expandí-la com a adição das outras linhas, abaixo):

 

<GetWebTicket url="/QvAjaxZfc/GetWebTicket.aspx">
    <TrustedIP>198.168.0.0</TrustedIP>
    <TrustedIP>20.300.40.50</TrustedIP>
    <TrustedIP>127.0.0.1</TrustedIP>
</GetWebTicket>




















Seguindo a ordem; 198.168.0.0: IP do host na rede privada (intranet). 20.300.40.50: IP público do host (internet). 127.0.0.1: a aplicação faz a solicitação do webticket que será usado, para o endereço local (localhost).


Outra ação que que nos ajudou, foi também incluir a página WebTicket.aspx (disponível para baixar no endereço acima), na mesma pasta do GetWebTicket.aspx - dentro de QvAjaxZfc, para testar a geração de tickets manualmente e incluir numa URL de teste diretamente no browser, no padrão descrito pelo Pablo Soto, aqui: Qlikview WebTicket Issue (lembrar depois de retirá-la da pasta usada, quando em Produção), e o uso do binário no projeto postado pelo Amiem Amiem: Tool which test QlikView Webtickets que gera o ticket e permite ver o resultado diretamente no browser padrão.



Sign Out

 

Uma vez que a solução MVC fora implementada, nesta fase era necessário que a rotina de logout do usuário redirecionasse para a página da solução asp.net novamente (ao invés da página default, FormLogin.htm). Assim foram necessárias duas ações:

1. adicionar um bloco de código na mesma página para que resolvesse a página da solução quando iniciada no browser do usuário;

2. customizar o arquivo "C:\Arquivos de Programas\QlikView\Web\js\accessPoint.js", incluindo um bloco de código para que ao usuário clicasse no link de Sign Out do portal, houvesse o redirecionamento para a aplicação, ao invés da página padrão do QVS (FormLogin.htm).


Na página padrão FormLogin.htm foi incluída a tag, na seção <head>:


<script type="text/javascript">
if(window.location.origin == "http://subdomain.domain:port"){
    window.location.replace("https://subdomain.domain/Home/Logout")
}
else {
    location.reload()
}
</script>

























 

Neste caso, o endereço de login padrão permaneceu inalterado (opção "Alternate login page web form", no Setup do QMC), mas a página redireciona diretamente para a aplicação MFA ao ser acessada, invés da coleta de credenciais.

 

 

Utilização de Grupos de Authorization

 

Por fim, foi necessária a criação de grupos de usuários de modo a melhorar a governança do AccessPoint. Para isso, além do insert dos grupos nas tabelas indicadas para o SSO, também precisamos "ajustar" a requisição do ticket no módulo MVC, informando junto com o usuário pesquisado no Banco de dados, o valor do grupo ao qual pertence (ou valores, se cadastrado em mais de um grupo), previamente recuperado do Banco de dados.

Pessoal,

 

Para quem está iniciando, como eu,  no mundo Qlik, eis um Webinar que vai rolar dia 15 de Fevereiro às 16:00 h (horário de Brasília).

 

Clique Aqui

 

Abs e Sucesso!

Excelente vídeo feito por Christof Schwarz.

 

 

Muito funcional!

Bom dia pessoal,

 

Sempre que estamos desenvolvendo algo, é importante colocarmos alguns comentários ou explicações, facilitando a vida dos nossos usuários.

Para aqueles que utilizam mashups ou QAP isso seria algo mais tranquilo de fazer, mas e quem possui apenas Sense, tem como? SIM, TEM COMO.

 

Dá uma olhada nesta solução encontrada!

Custom pop-up message at charts

 

Esses nossos colegas tem muita criatividade.

Pessoal,

 

A versão de Fevereiro promete! Vejam o que vem por aí.

 

 

mto

Filter Blog

By date:
By tag: