Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Pessoal,
Preciso criar um gráfico que me indique ou gráfico tabela, que me indique a o tempo entre a Emissão da NF e a Entrada da NF (data digitação) no sistema, a fim de termos um indicador das áreas que entregam as NF's ao financeiro no período de pagamento.
Sds
Marcos Paulo
Bom dia Marcos.
Tens como postar um exemplo de sua aplicação?
Assim fica muito mais fácil ajudar.
Abs.
Tipo, você quer uma explicação do propósito da aplicação ou o exemplo acima já serve. Mas para entendimento só preciso agora da expressão ara calcular o número de dias entra a data de emissão e a data de digitação no sistema.
Sds
Marcos
Marcos.
Me refiro a um QVD exemplo para que possamos entender melhor a situação. Ele pode vir com dados fake mesmo.
OK Raphael, vou ver se populo um QVD com dados fakes, pois não posso enviar meu original.
Grato.
Marcos,
Pelo script enviado o link entre as tabelas está sendo feito pelo campo Num_Nota, correto?
Então utilize a função Lookup na carga da Digitação. Para obter a Data de Emissão, carregada anteriormente na tabela de emissão você pode utilizar: Lookup ('D1_EMISSAO', 'Num_Nota', Num_Nota 'Tab_Titulos_Pag') . Aplicando na fórmula que você passou: (D1_DTDIGIT - Lookup ('D1_EMISSAO', 'Num_Nota', Num_Nota 'Tab_Titulos_Pag')) as Emi_Dig.
Espero ter ajudado!
Está ocorrendo o seguinte erro, não consigo identificar: Quando eu comento :
(Dt_digitacao - Lookup (Dt_Emissao, 'Num_Nota', Num_Nota, 'Tab_Titulos_Pag')) as Emi_Dig
O Script roda, ele está reclamando de um campo que existe "Dt_digitacao" e já verificado no qvd. Não sei por que não está rodando,
Certo, mas pelo script que você passou este campo não existe mesmo. Veja o correto é D1_DTDIGIT que está no QVD.
Olhando mais atentamente seu script, vejo que você carrega o D1_DTDIGIT assim: Date(Date#(D1_DTDIGIT,'YYYYMMDD'),'DD/MM/YYYY')
Provavelmente por alguma conversão/formatação do arquivo. Pois bem, então tente
(Date(Date#(D1_DTDIGIT,'YYYYMMDD'),'DD/MM/YYYY') - Lookup (Dt_Emissao, 'Num_Nota', Num_Nota, 'Tab_Titulos_Pag')) as Emi_Dig
Agora acho que vai. QQ coisa estamos ai para ajudar
OK, mas eu tb fiz o tratamento das datas diretamente no campo e substituí, ficando assim: e mesmo assim não funcionou
Tab_Titulos_Pag:
LOAD
//Date(Date#(E2_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY') as [Data de Emissão],
//
// year( Date(Date#(E2_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as [Ano de EMISSAO],
// month( Date(Date#(E2_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as [Mês de EMISSAO],
// day( Date(Date#(E2_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as [Dia de EMISSAO],
// monthname(Date(Date#(E2_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as [Mês Ano de EMISSAO],
Date(Date#(E2_VENCTO,'YYYYMMDD'),'DD/MM/YYYY') as Dt_Vencimento,
year( Date(Date#(E2_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as Ano_Vencimento,
month( Date(Date#(E2_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as Mes_Vencimento,
day( Date(Date#(E2_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as Dia_Vencimento,
monthname(Date(Date#(E2_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as Mes_Ano_Vencimento,
E2_FILIAL as Filial,
E2_FILORIG,
E2_PREFIXO,
E2_NUM as Num_Nota,
E2_PARCELA,
E2_TIPO,
E2_VENCTO,
// E2_EMISSAO as Emissao,
E2_SALDO,
E2_VALOR,
E2_VALLIQ,
E2_FORNECE as Fornecedor,
E2_LOJA,
E2_HIST,
E2_PORTADO,
E2_NATUREZ,
E2_BAIXA,
Date(Date#(E2_BAIXA,'YYYYMMDD'),'DD/MM/YYYY') as Dt_Baixa,
year( Date(Date#(E2_BAIXA,'YYYYMMDD'),'DD/MM/YYYY')) as Ano_Baixa,
month( Date(Date#(E2_BAIXA,'YYYYMMDD'),'DD/MM/YYYY')) as Mes_Baixa,
day( Date(Date#(E2_BAIXA,'YYYYMMDD'),'DD/MM/YYYY')) as Dia_Baixa,
monthname(Date(Date#(E2_BAIXA,'YYYYMMDD'),'DD/MM/YYYY')) as Mes_Ano_Baixa,
E2_NOMFOR
FROM
$(dirQvdE)SE2010.qvd (qvd);
store Tab_Titulos_Pag into $(dirQvdT)Tab_Titulos_Pag.qvd(qvd);
//drop table Tab_Titulos_Pag;
Tab_NF_Entrada:
LOAD D1_FILIAL as Filial,
D1_VALIPI,
D1_NFORI,
D1_SERIORI,
D1_FORNECE as Fornecedor,
D1_LOJA,
D1_ITEMORI,
D1_DTDIGIT,
Date(Date#(D1_DTDIGIT,'YYYYMMDD'),'DD/MM/YYYY') as Dt_digitacao,
year( Date(Date#(D1_DTDIGIT,'YYYYMMDD'),'DD/MM/YYYY')) as Ano_digitacao,
month( Date(Date#(D1_DTDIGIT,'YYYYMMDD'),'DD/MM/YYYY')) as Mes_digitacao,
day( Date(Date#(D1_DTDIGIT,'YYYYMMDD'),'DD/MM/YYYY')) as Dia_digitacao,
monthname(Date(Date#(D1_DTDIGIT,'YYYYMMDD'),'DD/MM/YYYY')) as Mes_Ano_Digitacao,
D1_EMISSAO,
Date(Date#(D1_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY') as Dt_Emissao,
year( Date(Date#(D1_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as Ano_Emissao,
month( Date(Date#(D1_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as Mes_Emissao,
day( Date(Date#(D1_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as Dia_Emissao,
monthname(Date(Date#(D1_EMISSAO,'YYYYMMDD'),'DD/MM/YYYY')) as Mes_Ano_Emissao,
D1_CUSTO,
D1_ITEM,
D1_DOC as Num_Nota,
D1_RATEIO,
D1_SERIE,
D1_QUANT,
D1_VUNIT,
D1_TOTAL,
D1_ICMSRET,
D1_VALDESC,
D1_VALPIS,
D1_VALCOF,
D1_VALICM,
D1_TIPO,
D1_TES,
D1_CF,
D1_DESC,
D1_LOCAL,
D1_COD,
D1_VALFRE,
D1_DESPESA,
D1_SEGURO,
D1_CC,
D1_ITEMCTA,
D1_PEDIDO,
D1_ITEMPC
// (D1_DTDIGIT - Lookup ('D1_EMISSAO', 'Num_Nota', Num_Nota 'Tab_Titulos_Pag')) as Emi_Dig
//(Dt_digitacao - Lookup (Dt_Emissao, 'Num_Nota', Num_Nota, 'Tab_Titulos_Pag')) as Emi_Dig
FROM
$(dirQvdE)SD1010.qvd (qvd);
store Tab_NF_Entrada into $(dirQvdT)Tab_NF_Entrada.qvd(qvd);
//drop table Tab_NF_Entrada;
Já conseguiu a resposta? Se sim, escolha uma e marque como "Correta" para fechar o tópico e nos ajudar a manter a comunidade organizada
Have fun, be Qlik
Já chegou a uma resposta? Se sim, marque como respondida, por favor