Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom dia Pessoal.
Alguém pode me auxiliar ?
Tenho o script abaixo que ao executar o mesmo diretamente no banco retorna os registros sem problemas. Todavia, ao executar o mesmo script dentro do Qlik View, dá erro de leitura ODBC. Alguma LUZ ?
Segue script.
LOAD *,
MONTH(dat_hor_emissao) as MES,
YEAR(dat_hor_emissao) as ano;
[FATURAMENTO]:
SELECT
FAT_NF_MESTRE.EMPRESA,
FAT_NF_MESTRE.NOTA_FISCAL,
FAT_NF_MESTRE.COND_PAGTO,
CAST(FAT_NF_MESTRE.DAT_HOR_EMISSAO AS DATE) AS DAT_HOR_EMISSAO,
FAT_NF_MESTRE.CLIENTE,
FAT_NF_MESTRE.PLACA_VEICULO,
FAT_NF_MESTRE.VAL_NOTA_FISCAL,
FAT_NF_MESTRE.CLIENTE,
FAT_NF_MESTRE.VAL_SEGURO_CLIENTE,
FAT_NF_MESTRE.VAL_FRETE_CLIENTE,
CIDADES.DEN_CIDADE,
CIDADES.COD_UNI_FEDER,
CLIENTES.NOM_CLIENTE,
CLIENTES.NUM_TELEFONE,
CLIENTES.NUM_FAX,
CLIENTES.NOM_CONTATO,
CLIENTES.END_CLIENTE,
FAT_NF_ITEM.ITEM,
FAT_NF_ITEM.DES_ITEM,
FAT_NF_ITEM.PEDIDO,
FAT_NF_ITEM.QTD_ITEM,
FAT_NF_ITEM.VAL_LIQUIDO_ITEM,
FAT_NF_ITEM.PRECO_UNIT_LIQUIDO,
FAT_NF_ITEM.VAL_MERC_ITEM,
REPRESENTANTE.NOM_REPRES,
ITEM.GRU_CTR_ESTOQ,
ITEM.COD_FAMILIA,
ITEM.COD_UNID_MED,
SUP_NF_DEVOL_CLI.QTD_ITEM AS QTD_DEVOLVIDA,
SUP_NF_DEVOL_CLI.PRECO_UNIT_ITEM AS PRECO_ITEM_DEVOLUCAO,
SUP_NF_DEVOL_CLI.AVISO_RECEBTO,
GRUPO_ITEM.DEN_GRUPO_ITEM,
LINHA_PROD.DEN_ESTR_LINPROD AS LINHA_PROD,
CASE WHEN item.cod_lin_prod = '1' THEN 'LINHA MECANICA'
WHEN item.cod_lin_prod = '2' THEN 'LINHA HIDRAULICA'
WHEN item.cod_lin_prod = '3' THEN 'LINHA VIRADEIRAS'
WHEN item.cod_lin_prod = '4' THEN 'LINHA MAZUTTI'
WHEN item.cod_lin_prod = '10' THEN 'LINHA REVENDA'
WHEN item.cod_lin_prod = '12' THEN 'LINHA LASER'
ELSE 'OUTROS'
END AS TIPO_LINHA
FROM FAT_NF_MESTRE
INNER JOIN FAT_NF_ITEM
ON FAT_NF_MESTRE.TRANS_NOTA_FISCAL = FAT_NF_ITEM.TRANS_NOTA_FISCAL
INNER JOIN CLIENTES
ON FAT_NF_MESTRE.CLIENTE = CLIENTES.COD_CLIENTE
INNER JOIN FAT_NF_REPR
ON FAT_NF_MESTRE.TRANS_NOTA_FISCAL = FAT_NF_REPR.TRANS_NOTA_FISCAL
INNER JOIN REPRESENTANTE
ON FAT_NF_REPR.REPRESENTANTE = REPRESENTANTE.COD_REPRES
INNER JOIN ITEM
ON FAT_NF_ITEM.ITEM = ITEM.COD_ITEM
INNER JOIN CIDADES
ON CLIENTES.COD_CIDADE = CIDADES.COD_CIDADE
LEFT JOIN SUP_NF_DEVOL_CLI
ON SUP_NF_DEVOL_CLI.NOTA_FISCAL_FATURA = FAT_NF_MESTRE.NOTA_FISCAL
AND SUP_NF_DEVOL_CLI.SEQ_NF_FATURA = FAT_NF_ITEM.SEQ_ITEM_PEDIDO
INNER JOIN ITEM_VDP
ON ITEM.COD_ITEM = ITEM_VDP.COD_ITEM
INNER JOIN GRUPO_ITEM
ON ITEM_VDP.COD_GRUPO_ITEM = GRUPO_ITEM.COD_GRUPO_ITEM
INNER JOIN LINHA_PROD
ON ITEM.COD_LIN_PROD = LINHA_PROD.COD_LIN_PROD
AND ITEM.COD_LIN_RECEI = LINHA_PROD.COD_LIN_RECEI
AND ITEM.COD_SEG_MERC = LINHA_PROD.COD_SEG_MERC
AND ITEM.COD_CLA_USO = LINHA_PROD.COD_CLA_USO
WHERE FAT_NF_MESTRE.COND_PAGTO <> '999'
AND FAT_NF_MESTRE.SIT_NOTA_FISCAL <> 'C'
AND FAT_NF_REPR.SEQ_REPRESENTANTE = '1'
ORDER BY FAT_NF_MESTRE.DAT_HOR_EMISSAO, FAT_NF_ITEM.PEDIDO;
Agradeço desde já a todos.
Pela atenção, obrigado.
Claudemir
O trecho do LOAD precisa estar abaixo do nome da tabela
[FATURAMENTO]:
LOAD *,
MONTH(dat_hor_emissao) as MES,
YEAR(dat_hor_emissao) as ano;
SQL SELECT
FAT_NF_MESTRE.EMPRESA,
FAT_NF_MESTRE.NOTA_FISCAL,
............
O trecho do LOAD precisa estar abaixo do nome da tabela
[FATURAMENTO]:
LOAD *,
MONTH(dat_hor_emissao) as MES,
YEAR(dat_hor_emissao) as ano;
SQL SELECT
FAT_NF_MESTRE.EMPRESA,
FAT_NF_MESTRE.NOTA_FISCAL,
............
Você está com o campo FAT_NF_MESTRE.CLIENTE repetido, remova um deles
FAT_NF_MESTRE.CLIENTE,
FAT_NF_MESTRE.PLACA_VEICULO,
FAT_NF_MESTRE.VAL_NOTA_FISCAL,
FAT_NF_MESTRE.CLIENTE,