Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Criar Tabela comparando com Outra.

Bom dia.

Pessoal, estou com um problema aqui, veja se alguem pode me ajudar.

Tenho um load que analisa as vendas

[ Movimento]

LOAD

          //TEXT(ID_EMPRESA)          AS ID_EMPRESA,

          TEXT(OPERACAO)                    AS ID_OPERACAO,

          TEXT(NOTA_FISCAL)   AS NR_NOTAFISCAL,

          TEXT(SERIE)                              AS NR_SERIE,

          TEXT(ID_FILIALMOV)           AS ID_FILIALMOV,

          ANO,

          MES,

          DIA,

          TEXT(ID_VENDEDOR)          AS ID_VENDEDOR,

          TEXT(ID_PRODUTO)          AS ID_PRODUTO,

          TEXT(ID_CLIENTE)          AS ID_CLIENTE,

          TEXT(ID_MUNICIPIO)          AS ID_MUNICIPIO,

          TEXT(ID_CULTURA)          AS ID_CULTURA,

          QUANT_V                                        AS QT_VENDA,

          VALOR_V                                        AS VL_VENDA,

          QUANT_D                         AS QT_DEVOLUCAO,

     VALOR_D                         AS VL_DEVOLUCAO,

     QUANT_VF                                   AS QT_VENDAFUTURA,

     VALOR_VF                        AS VL_VENDAFUTURA,

     VALOR_DVF                  AS VL_DEV_VENDAFUTURA,

     QUANT_SR                   AS QT_REMESSA,

          VALOR_SR                              AS VL_REMESSA,

          QUANT_PV                              AS QT_PEDIDO,

          VALOR_PV                              AS VL_PEDIDO

Essa tabela traz todo o movimento de vendas.

Preciso fazer uma para a parte do financeiro, porem só preciso trazer os titulos que estão com o saldo a receber maior que  0 .... Trabalho em agroindustria, esse load acima é apenas do setor de INSUMOS, porem no contas a receber traz titulos dos demais setores(cerais, adm)--> load abaixo

Fiz o Load abaixo do financeiro

[Financeiro]:

LOAD

TEXT(ID_FILIALMOV)           AS ID_FILIALMOV,

TEXT(NR_NOTAFISCAL) AS NR_NOTAFISCAL,

TEXT(NR_SERIE)            AS NR_SERIE,

TEXT(ID_CLIENTE)           AS ID_CLIENTE,

TIPO_TITULO,

ANO,

MES,

DIA,

ID_VENDEDOR,

VENCIMENTO,

SALDO_REC

;

Tem os campos NR_NOTAFISCAL, NR_SERIE que posso usar para comparar com o load [movimento], como eu posso fazer essa comparação ?

Tentei da seguinte forma, porem nao deu certo.

[MovimentoFinanceiro]:

LOAD

TEXT(NR_SERIE) AS NR_SERIE,TEXT(NR_NOTAFISCAL) AS NR_NOTAFISCAL,TEXT(ID_CLIENTE) AS ID_CLIENTE Resident [Financeiro];

Inner join

LOAD

TEXT(NR_SERIE) AS NR_SERIE, TEXT(NR_NOTAFISCAL) AS NR_NOTAFISCAL,TEXT(ID_CLIENTE) AS ID_CLIENTE Resident [Movimento]

;

Alguem me pode me dar uma dica de como fazer essa comparação ?

Obrigado.

1 Solution

Accepted Solutions
Not applicable
Author

Opa, Aderlan.

Eu fiz da seguinte forma e consegue oque eu queria(Está Batendo com os relatorios do Protheus).

LOAD

TEXT(NR_SERIE) AS NR_SERIE,

TEXT(NR_NOTAFISCAL) AS NR_NOTAFISCAL,

TEXT(ID_CLIENTE) AS ID_CLIENTE,

TEXT(ID_FILIALMOV)           AS ID_FILIALMOV

Resident [Movimento];

Inner join

  [Financeiro]:

LOAD

TEXT(ID_FILIALMOV)           AS ID_FILIALMOV,

TEXT(NR_NOTAFISCAL) AS NR_NOTAFISCAL,

TEXT(NR_SERIE)            AS NR_SERIE,

TEXT(ID_CLIENTE)           AS ID_CLIENTE,

TIPO_TITULO,

ANO,

MES,

DIA,

ID_VENDEDOR,

VENCIMENTO,

SALDO_REC

Vou fazer dessa forma que voce falou, vou comparar os resultados.

View solution in original post

5 Replies
fosuzuki
Partner - Specialist III
Partner - Specialist III

O que exatamente aconteceu quando vc escreve 'não deu certo'? O script falha? Ou a nuvem fica bagunçada? Ou a tabela fica zerada?

Not applicable
Author

Bom dia.

Ele não faz a comparação, nao altera os valores, listam todos como se nao tivesse feito esse JOIN.

Obrigado.

aderlanrm
Partner - Specialist
Partner - Specialist

Olá Carlos,

Olhando o seu script, por que usa o comando TEXT?

Você está usando o JOIN porque quer incluir os campos da tabela de baixo na tabela de cima ou para fazer a comparação?

Se voce simplismente fazer o LOAD da primeira tabela e depois o LOAD da segunda tabela, vai ter o resultado esperado, porém, o QlikView criará uma chave sintética de muitos campos, por estarem com os nomes iguais, para resolver isso, renomeie os campos usando o AS ou use o comando QUALIFY.

Exemplo:

QUALIFY ID_EMPRESA, ID_FILIALMOV, ID_CLIENTE;

Com isso, o QV vai colocar o nome da tabela antes dos nomes qualificados, ficando assim depois do LOAD:

Movimento.ID_EMPRESA

Movimento.ID_FILIALMOV

Movimento.ID_CLIENTE

Financeiro.ID_EMPRESA

Financeiro.ID_FILIALMOV

Financeiro.ID_CLIENTE

Espero que tenha ajudado, grande abraço.

*** Se foi útil, não esqueça de marcar como resposta/ajudou para também colaborar com toda a comunidade a esclarecer as dúvidas. ***

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Not applicable
Author

Opa, Aderlan.

Eu fiz da seguinte forma e consegue oque eu queria(Está Batendo com os relatorios do Protheus).

LOAD

TEXT(NR_SERIE) AS NR_SERIE,

TEXT(NR_NOTAFISCAL) AS NR_NOTAFISCAL,

TEXT(ID_CLIENTE) AS ID_CLIENTE,

TEXT(ID_FILIALMOV)           AS ID_FILIALMOV

Resident [Movimento];

Inner join

  [Financeiro]:

LOAD

TEXT(ID_FILIALMOV)           AS ID_FILIALMOV,

TEXT(NR_NOTAFISCAL) AS NR_NOTAFISCAL,

TEXT(NR_SERIE)            AS NR_SERIE,

TEXT(ID_CLIENTE)           AS ID_CLIENTE,

TIPO_TITULO,

ANO,

MES,

DIA,

ID_VENDEDOR,

VENCIMENTO,

SALDO_REC

Vou fazer dessa forma que voce falou, vou comparar os resultados.

aderlanrm
Partner - Specialist
Partner - Specialist

Maravilha Carlos,

Pode posta sua solução e marcar você mesmo como resposta, assim ajuda a comunidade a encontrar as respostas e a quem tenta ajudar não ficar abrindo e lendo um monte de dúvidas já respondidas. Rsrsrsrsr...

Grande abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)