Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

lista

pessoal eu estou trabalhando com um BI de ordem de serviços para minha empresa

eu quero fazer uma lista para servir de filtro das unidades organizacionais , sendo que nem todas fazem essas ordens de serviços(issue_id)

como eu poderia fazer um script, tipo um if, pra selecionar na minha lista apenas as unidades que tenham ordens de serviço?:

desde já agradecido

Labels (2)
9 Replies
Not applicable
Author

Ramon, sou novato no uso do Qlik então me perdoe se eu falar alguma bobagem.

Esses dados voce esta trazendo de um banco de dados ou de uma planilha Excel?

caso esteja trazendo do banco de dados tente utilizar um "where" SELECT campos from TABELA where issue_id is not null.

Abraço.

Not applicable
Author

Ramon, voce pode usar a função Isnull ela retorna -1 para null e 0 para not null.

sendo assim, no campo da lista adicione uma expressao:

if(

  IsNull(issue_id) = 0,/*se o valor for not null exibe o valor na lista*/

  CAMPO_A_SER_EXIBIDO

)

Not applicable
Author

não funcionou como eu esperava mas muito obrigado mesmo assim , e não se preocupe, todos estamos aqui para aprender, ninguém sabe de tudo, também sou iniciante , então sem problemas.

Not applicable
Author

Você está trazendo os dados via query?

Se estiver cole ela aqui por favor.

Not applicable
Author

sim , estou consultando a um banco mysql mas estou usando camadas

ou seja uma extrai os dados. a outra cria a nuvem e a outra eu monto o layout

eu to fazendo isso na layout pois a nuvem já ta feita

mas  vou mandar a query agora

Not applicable
Author

DBC CONNECT TO redmine;

[Issues]:

SQL

SELECT

trackers.`name` AS 'Tipo',

projects.`name` AS 'Projeto',

CONCAT(CONCAT(users.`firstname`, ' '), users.`lastname`) AS 'Autor',

users.`mail` AS 'E-mail',

`MATRICULA_EMAIL`.`MATRICULA` AS 'Matrícula',

`issue_statuses`.`name` AS 'Status',

issues.`subject` AS 'Assunto',

issues.`description` AS 'Detalhe',

issues.`start_date` AS 'Data de criação',

issues.`due_date` AS 'Data de inínio',

issues.`estimated_hours` AS 'Estimativa (h)',

issues.`updated_on` AS 'Data de Finalização',

`issue_categories`.`name` AS 'Categoria',

issues.id as 'issue_id'

FROM issues

LEFT JOIN trackers ON trackers.`id` = issues.`tracker_id`

LEFT JOIN `projects` ON projects.id = issues.`project_id`

LEFT JOIN issue_categories ON issue_categories.`id` = issues.`category_id`

LEFT JOIN `issue_statuses` ON `issue_statuses`.`id` = issues.`status_id`

LEFT JOIN users ON users.id = issues.`author_id`

LEFT JOIN `MATRICULA_EMAIL` ON users.`mail` = MATRICULA_EMAIL.`EMAIL`

GROUP BY issues.id;

STORE Issues into $(V_PATH_QVDs)\Issues.QVD;

DROP TABLE Issues;

//------------------------------------------------------------------------

//Conexão com o SIC

OLEDB CONNECT TO [Provider=OraOLEDB.Oracle.1;Persist Security Info=True;User ID=danilo_torres;Data Source=BLCMPROD;Extended Properties=""] (XPassword is BDNLZBdNNDcKWZFMSBMCTZAH);

[Funcionarios]:

SQL

SELECT 

FUNC.MATRICULA,

FUNC.ID_PESSOA,

PESS.NOME,

TPLT.NOME AS TIPO_LOTACAO,

POTR.ID_POSTO_TRABALHO,

POFX.ID_ELEME_ORGANIZACIONAL,

ELOR.CODLOTACAO,

ELOR.NOME AS UNID_OPER_OU_ORG,

EQUI.NOME AS EQUIPE,

EQUI.ID_ELEME_ORGANIZAC AS ID_ELEME_ORGANIZAC_EQUIPE,

ELO2.CODLOTACAO AS CODLOTACAO_EQUIPE,

ELO2.NOME AS UNID_OPER_OU_ORG_EQUIPE

FROM 

SIC.RH_FUNCIONARIO          FUNC

INNER JOIN  SIC.SIC_PESSOA              PESS ON (PESS.ID_PESSOA = FUNC.ID_PESSOA)

INNER JOIN  SIC.RH_TIPO_LOTACAO         TPLT ON (TPLT.ID_TIPO_LOTACAO = FUNC.ID_TIPO_LOTACAO)

LEFT JOIN  SIC.RH_POSTO_TRABALHO       POTR ON (POTR.ID_FUNCIONARIO = FUNC.ID_PESSOA)

LEFT JOIN  SIC.RH_POSTO_FIXO           POFX ON (POFX.ID_POSTO_TRABALHO = POTR.ID_POSTO_TRABALHO)

LEFT JOIN  SIC.RH_ELEME_ORGANIZACIONAL ELOR ON (ELOR.ID_ELEME_ORGANIZAC = POFX.ID_ELEME_ORGANIZACIONAL)

LEFT JOIN  SIC.RH_POSTO_VOLANTE        POVO ON (POVO.ID_POSTO_TRABALHO = POTR.ID_POSTO_TRABALHO)

LEFT JOIN  SIC.RH_EQUIPE               EQUI ON (EQUI.ID_EQUIPE = POVO.ID_EQUIPE)

LEFT JOIN  SIC.RH_ELEME_ORGANIZACIONAL ELO2 ON (ELO2.ID_ELEME_ORGANIZAC = EQUI.ID_ELEME_ORGANIZAC) ;

STORE Funcionarios into $(V_PATH_QVDs)\Funcionarios_Organizacao.qvd;

DROP Table Funcionarios;

Not applicable
Author

Tente usar inner join ao inves de left join para a parte de "INSSUES"

fernando_tonial
Partner - Specialist
Partner - Specialist

Olá,

Tente fazer assim no momento em que você faz a leitura dos arquivos QVDs.

Issues:

Load * from $(V_PATH_QVDs)\Issues.QVD (qvd);

Funcionarios:

Left Keep (Issues)

Load * from $(V_PATH_QVDs)\Funcionarios_Organizacao.qvd (qvd);

Espero ter ajudado.

Abraços.

Tonial.

Don't Worry, be Qlik.
Clever_Anjos
Employee
Employee

Tente usar a expressão abaixo como expressão da sua lista


Only({<Tipo={*}>}UNID_OPER_OU_ORG)

Sem título.png