Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Olá,
Em um projeto novo criei um dashboard que puxa as informações de um SharePoint (Conforme item 2 deste tutorial (Reading Data from Sharepoint lists into QlikView)), o problema é que precisei criar uma CrossTable para contabilizar uma seção de CheckBoxes e nisso os campos que estão sem preenchimento acabam sendo contados também, conforme imagem:
O que posso fazer para que esta coluna sem nome não seja contabilizada?
Consegui resolver!
Aparentemente, ao carregar campos em branco de uma lista do SharePoint, o QlikView acaba considerando estes campos de alguma forma.
Li em algum artigo que o comando EVALUATE() valida os campos para valores numéricos ou os torna null, caso sejam.
Então adicionei o comando EVALUATE() na CrossTable e assim ele passou a validar corretamente os campos.
1. Crosstable(QTD,Secundarias,3)
2.
3.
4. LOAD PLANT,
5. AREA,
6. ID,
7. EVALUATE(S1.1) as [1.1],
8. EVALUATE(S1.2) as [1.2],
9. EVALUATE(S1.3) as [1.3],
10. EVALUATE(S2.1) as [2.1],
11. EVALUATE(S2.2) as [2.2],
12. EVALUATE(S2.3) as [2.3],
13. EVALUATE(S2.4) as [2.4],
15. EVALUATE(S2.5) as [2.5],
16.
17. FROM
18. [Sharepoint.xml]
Obrigado a todos pela atenção e tempo usados para me ajudar!
Talvez isso:
Count({<QTD={"*"}>}QTD)
Não funcionou...
Lucas,
Tens várias opções:
- Validar na carga cada linha na carga, criando uma coluna apenas para contagem como abaixo:
If(IsNull(QTD, 0, 1) as ContaLinha;
Após isso, basta utilizar o SUM(ContaLinha) ou Count(ContaLinha)
- Utilizar a expressão no gráfico: Count(alt(QTDE))
Seria essa a necessidadde?
Caso não, compartilhe o QVW com exemplo de dados ficticios.
Tenta com =NumericCount(QTD)
Aproveitando o que o ricardogerhard bem suscitou, há uma possiblidade via UI.
Expressão:
Count(Aggr(If(Not IsNull(QTD),QTD,0),QTD))
Abs e Sucesso!
Exatamente, opções não faltam
Considero mais limpo de tratar na carga sempre, para a interface ficar mais "clean" e sacrificar menos o desempenho.
Não entendi muito bem como usar este comando que vc passou...
O meu script resumidamente está assim;
1. Crosstable(QTD,Secundarias,3)
2.
3.
4. LOAD PLANT,
5. AREA,
6. ID,
7. S1.1,
8. S1.2,
9. S1.3,
10. S2.1,
11. S2.2,
12. S2.3,
13. S2.4,
15. S2.5,
16.
17. FROM
18. [Sharepoint.xml]
E minha lista no SharePoint está assim
PLANT | AREA | S1.1 | S1.2 | S1.3 | S2.1 | S2.2 | S2.3 | S2.4 | S2.5 |
---|---|---|---|---|---|---|---|---|---|
A | 1 | 1.1 | 2.3 | ||||||
A | 2 | 1.2 | 2.1 | 2.5 | |||||
A | 3 | 1.1 | 1.3 | ||||||
A | 4 | 2.3 | |||||||
A | 1 | 2.1 | |||||||
A | 2 | 1.1 | 1.3 | 2.5 | |||||
A | 3 | 2.3 | |||||||
A | 4 | 2.1 | |||||||
A | 1 | 1.1 | 1.3 | 2.5 | |||||
B | 2 | 2.3 | |||||||
B | 3 | 2.1 | |||||||
B | 4 | 2.1 | |||||||
B | 1 | 1.3 | 2.3 | ||||||
B | 2 | 1.1 | 2.5 | ||||||
B | 3 | 2.1 | |||||||
B | 4 | 1.3 | 2.3 | ||||||
B | 1 | 2.1 | |||||||
B | 2 | 1.3 | |||||||
B | 3 | 1.3 |
Quando carrego ele pelo excel o COUNT(QTD) funciona como eu gostaria, o problema é quando carrego via SharePoint que aí os campos em branco acabam sendo contados também.
NumericCount não deu certo. Acho que porque os valores reportados são de texto.
Infelizmente não funcionou também.
Acho que apesar de os valores serem nulos (em branco) o SharePoint envia para o QlikView de alguma outra maneira que ele não considera valores nulos.