Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. 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)