Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
valmirMendes10
Contributor II
Contributor II

Duvida de como filtrar tais dados.

Bom dia, minha dúvida é bem complicada de ser escrita, mas vou tentar descrever. Possuo uma base de dados de Licitações e compras, nesses dados o que eu mais uso são os dados de licitações, ip para acesso(cada ip equivale a um acesso e um lance), nome de fornecedores, e o orgão. Um dos filtros que o meu dash deveria ter é um em que ele mostra em quais licitações houve um grupo de fornecedores que usaram o mesmo ip.  Com o seguinte código consigo um resultado quase satisfatório:

Count(Distinct FORNECEDOR)>1 AND Count(Distinct COD_LICITACAO)=1 -> Eu usei isso diretamente nos filtros do qlik para ver o que seria filtrado. Logicamente quero que seja contado os fornecedores diferentes que um ip de acesso possui e se ele está atribuído a uma licitação. usei essa linha no filtro de IPs de acesso:

valmirMendes10_0-1630562233720.png

 

O resultado é descente, porém existem alguns casos que ficam de fora e eu não entendo por que. Como por exemplo o ip 35.199.67.129:

Resultado legal:

valmirMendes10_1-1630562326651.png

 

Valor que escapa do filtro:

valmirMendes10_2-1630562359602.png

Ele corresponde EXATAMENTE como os outros, mas não entra no filtro. Só descobri ele e outro como ele procurando manualmente.

 

Queria saber como englobar melhor esse filtro, e se tinha uma forma mais fácil para fazer o mesmo.

 

15 Replies
valmirMendes10
Contributor II
Contributor II
Author

Essa ultima foto não foi um bom exemplo, mas mesmo assim posso garantir que esse ip possui mais de um fornecedor usando ele. E mesmo assim não foi listado após o filtro.

Thiago_Justen_

Bom dia meu nobre,

Receio que seja bacana você realizar alguma alteração no seu script para te dar mais flexibilidade na construção dos dashs. Baseado no que você escreveu, eu sugiro criar uma flag que aponte quando um IP é utilizado por mais de um fornecedor em uma licitação.

Exemplo:

Sua_Tabela:

Load

          seus_campos

From Sua_Base;

Left Join(sua_tabela)

Load 

        *,

        Dual(If(Previous(IP)=IP and Previous(Licitacao)=Licitacao and Previous(Fornecedor)<>Fornecedor,

                  'Mesmo IP',

                   'Ok'

          ),-1,1)                                as 'Flag_IP'

Resident sua_tabela;

 

Assim você poderá usar esse campo na construção de dashs e até mesmo em expressões com set analysis.

 

Espero ter fomentado alguma ideia.

Abs e Sucesso!!

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
valmirMendes10
Contributor II
Contributor II
Author

Eu não tinha pensado nisso, vou tentar, Obrigado.

Thiago_Justen_

Opa, então o meu objetivo de provocar novas ideais foi cumprido. 

Testa lá e retorna com o feedback aqui pra gente acompanhar a evolução dessa tua empreitada.

Abs e Sucesso!!

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
Clever_Anjos
Employee
Employee

Você pode subir uma base mascarada de dados? Tipo, somente ip e numeros de licitação?

Sem nomes de empresas ou algo que identifique alguma pessoa ou empresa

Clever_Anjos
Employee
Employee

Criei um modelo bem simples aqui, talvez atenda

//Geracao de massa de testes
Tabela:
Load '172.168.1.' &RecNo() as IP
AutoGenerate 32;

Dados:
Load
IP,
'Fornecedor ' & IterNo() as Fornecedor
Resident Tabela
While IterNo() < Floor(Rand() * 10);
Drop Table Tabela;
//Final da geração de massa de testes


//Calculo de Flag de repetição
Load
IP,
Fornecedor,
AutoNumber(Fornecedor,IP) as FlagOcorrencia
Resident Dados;
Drop table Dados;

 

Ai para mostrar em uma tabela, fica um set analisys desse jeito

Count(DISTINCT {<FlagOcorrencia={">1"}>}Fornecedor)+1

 

Estou anexando o app, se achar interessante

 

valmirMendes10
Contributor II
Contributor II
Author

Aqui um arquivo teste para você.

valmirMendes10
Contributor II
Contributor II
Author

Agradeço as duas respostas,  vou testar elas aqui, é que eu NUNCA mexi com essa parte de carga de dados via o script, ai ainda estou aprendendo. Mas uma direção é muito bom. OBRIGADO!

valmirMendes10
Contributor II
Contributor II
Author

Logo logo trago aqui resultados e duvidas