Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa tarde a todos.
Estou com uma situação aqui, que não consegui sanar, e gostaria da ajuda dos senhores, como sempre, rs.
Estou anexando a tabela para caso queiram dar uma olhada...
Apenas para exemplificar:
Como está:
Como preciso que esteja:
ID_CONTROLE_ORCAMENTO | ID_ALMOXARIFADO | ID_GRUPO | ........ | DS CONTROLE
205 9 1 NIT
205 9 2 NIT
205 9 3 NIT
...
61 7 1 LAR
61 7 2 LAR
61 7 3 LAR
e assim, sucessivamente.....
Vejam, que estou separando os grupos (que estão sepadados por virgula na coluna ID_GRUPO, linha a linha...
Espero que de para entender....
Obrigado antecipadamente.
Marcos,
Olá Marcos,
Você pode utilizar a função Subfield(), mas lembrando que o campo de valor ficará conforme a quantidade de ID_GRUPO que tem em cada uma das linhas.
Dados:
LOAD ID_CONTROLE_ORCAMENTO,
ID_ALMOXARIFADO,
SubField(ID_GRUPO,',') AS ID_GRUPO,
VL_ORCAMENTO,
DT_INICIO_VIGENCIA,
DT_FIM_VIGENCIA,
DS_CONTROLE
FROM
CONTROLE_ORCAMENTOS.QVD
(qvd);
Qlikfique-se.
Tonial
Marcos, você vai ter que fazer alguns IFs e depois utilizar o recurso CrossTable. Os Ifs são para separar cada ID em uma coluna e depois o CrossTable é para transformar essas colunas novas que você criou em linhas. Basicamente esse é o caminho das pedras.
Caso necessite, posso te montar um exemplo!
Olá Marcos,
Você pode utilizar a função Subfield(), mas lembrando que o campo de valor ficará conforme a quantidade de ID_GRUPO que tem em cada uma das linhas.
Dados:
LOAD ID_CONTROLE_ORCAMENTO,
ID_ALMOXARIFADO,
SubField(ID_GRUPO,',') AS ID_GRUPO,
VL_ORCAMENTO,
DT_INICIO_VIGENCIA,
DT_FIM_VIGENCIA,
DS_CONTROLE
FROM
CONTROLE_ORCAMENTOS.QVD
(qvd);
Qlikfique-se.
Tonial
Obrigado mais uma vez meu amigo, show, foi na hora.
Abraços,
Marcos André.
Ótimo, quando tenho algum tempo posso ajudar.
Qlikfique-se.
Tonial.