Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom dia,
Eu tinha criado vários consultas dentro do postgres.
Mas o pessoal de programação, disse para não mexer no banco de dados(risos).
Então começei a fazer todas as tabelas que uso direto pelo Qlikview.
Os valores estão batendo. O unico problema é que está gerando até $Syn 8.
Tiver que usar em todas as tabelas a função
AutoNumber(Text(mlid)) as p_recebimento,
AutoNumber(Text(produto)) as p_produto,
AutoNumber(Text(vendedor)) as p_vendedor,
AutoNumber(Text(empresa)) as p_empresa,
AutoNumber(Text(grid)) as p_lancto,
AutoNumber(Text(deposito)) as p_deposito,
AutoNumber(Text(grid)) as p_abastecimento,
AutoNumber(Text(bico)) as p_bico,
Pois o Postgres, estava gerando chaves primárias com até 20 caracteres.
Pergunta, isso está errado?
Eu consigo melhorar?
Alguma dica para eu tentar melhorar este relacionamentos, segue o script.
Let v_data = '2015-04-01' ;
Let v_dataf = '2016-12-01';
ODBC CONNECT32 TO fragata1;
//SQL select check_estoque_f();
CNX:
LOAD
empresa_nome ,
empresa_codigo ;
SQL SELECT *
FROM fragata."public"."empresa_local";
store CNX into C:\postos\qvd\CNX.qvd(qvd);
Informacao_A_Ser_Verificada:
LOAD * INLINE [
CampoDigitado
MATRIZ FRAGATA
];
Informacao_Do_Banco:
SQL SELECT
empresa_nome
FROM fragata."public"."empresa_local";
IF FieldValue('CampoDigitado',1) = FieldValue('empresa_nome',1) THEN
TRACE Carrega a tabela!;
Liberacao:
LOAD
empresa_nome ;
SQL SELECT *
FROM fragata."public"."empresa_local";
////************************************************************************
LET vHoje = Today();
LET vVencimento = Date(Today()-30, 'DD/MM/YYYY');
LET vDateMin=num(makedate(2015,01,01));
LET vDateMax=floor(monthend(today()));
LET vDateToday = num(today());
////************************************************************************
CLD:
LOAD
Distinct
Date($(vDateMin) + RowNo() - 1,'DD-MMM-YYYY') AS CalendarDate,
ceil(Month(Date($(vDateMin) + RowNo() - 1,'DD-MMM-YYYY'))/3) & 'Trim' as Trimestre,
month(Date($(vDateMin) + RowNo() - 1,'DD-MMM-YYYY')) AS Mês,
WeekDay(Date($(vDateMin) + RowNo() - 1,'DD-MMM-YYYY')) AS Semana,
Day(Date($(vDateMin) + RowNo() - 1,'DD-MMM-YYYY')) AS Dia,
year(Date($(vDateMin) + RowNo() - 1,'DD-MMM-YYYY')) AS Ano,
monthname(Date($(vDateMin) + RowNo() - 1,'DD-MMM-YYYY')) AS MesAno
AutoGenerate 1 While $(vDateMin) + IterNo() - 1 <=$(vDateMax);
store CLD into C:\postos\qvd\CLD.qvd(qvd);
////************************************************************************
PES:
//Vendedor_Pessoa
LOAD codigo as codigovendedor,
nome as nomevendedor,
AutoNumber(Text(grid)) as p_vendedor,
AutoNumber(Text(cargo)) as p_cargo,
SubField(nome,' ',1) as Apelido,
grid as nrcodigovendedor;
SQL SELECT *
FROM fragata."public".pessoa;
store PES into C:\postos\qvd\PES.qvd(qvd);
////************************************************************************
VND:
//Vendas_lancto
LOAD data,
turno,
hora,
seq,
produto,
operacao,
AutoNumber(Text(mlid)) as p_recebimento,
AutoNumber(Text(produto)) as p_produto,
AutoNumber(Text(vendedor)) as p_vendedor,
AutoNumber(Text(empresa)) as p_empresa,
AutoNumber(Text(grid)) as p_lancto,
AutoNumber(Text(deposito)) as p_deposito,
AutoNumber(Text(grid)) as p_abastecimento,
AutoNumber(Text(bico)) as p_bico,
abastecimento as nrabastecimento,
bico,
quantidade,
Date(Floor(data),'DD/MM/YYYY') as CalendarDate,
pessoa,
documento,
"preco_unit",
valor,
vendedor,
abastecimento,
usuario,
empresa,
mlid,
grid as gridvnd;
SQL SELECT *
FROM fragata."public".lancto
WHERE data>= '$(v_data)' and data <='$(v_dataf)';
store VND into C:\postos\qvd\VND.qvd(qvd);
////************************************************************************
EMP:
//Empresa
LOAD codigo AS codigofilial,
nome AS nomeempresa,
AutoNumber(Text(grid)) as p_empresa,
grid as gridemp;
SQL SELECT *
FROM fragata."public".empresa;
store EMP into C:\postos\qvd\EMP.qvd(qvd);
////************************************************************************
LCT:
LOAD lancto,
AutoNumber(Text(lancto)) as p_lancto,
AutoNumber(Text(empresa)) as p_empresa,
AutoNumber(Text(produto)) as p_produto,
data,
"custo_medio",
"ult_custo";
SQL SELECT *
FROM fragata."public"."estoque_lancto"
WHERE data>= '$(v_data)' and data <='$(v_dataf)';
store LCT into C:\postos\qvd\LCT.qvd(qvd);
////*************************************************
PRD:
LOAD codigo as codigoproduto,
nome as nomeproduto,
grupo,
subgrupo,
"unid_med",
comissao,
AutoNumber(Text(grupo)) as p_grupo,
AutoNumber(Text(grid)) as p_produto,
grid as gridprd;
SQL SELECT *
FROM fragata."public".produto;
store PRD into C:\postos\qvd\PRD.qvd(qvd);
////*************************************************
GRP:
LOAD codigo as codigogrupo,
nome as nomegrupo,
AutoNumber(Text(grid)) as p_grupo,
grid as gridgrp;
SQL SELECT *
FROM fragata."public"."grupo_produto";
store GRP into C:\postos\qvd\GRP.qvd(qvd);
////*************************************************
DEP:
LOAD codigo as codigodeposito,
nome as nomedeposito,
capacidade,
AutoNumber(Text(grid)) as p_deposito,
grid as griddpt;
SQL SELECT *
FROM fragata."public".deposito;
store DEP into C:\postos\qvd\DEP.qvd(qvd);
////*************************************************
ABT:
LOAD grid,
AutoNumber(Text(grid)) as p_abastecimento,
quantidade AS quantidadeabast,
valor AS valorabast,
Date(Floor(dia_fiscal),'DD/MM/YYYY') as dia_fiscal,
operacao,
codigo AS abastecimento;
SQL SELECT *
FROM fragata."public"."abastecimento_fiscal"
WHERE dia_fiscal>= '$(v_data)' and dia_fiscal <='$(v_dataf)';
store ABT into C:\postos\qvd\ABT.qvd(qvd);
////*************************************************
RCB:
LOAD
data as datarecebidas,
AutoNumber(Text(forma_pgto)) as p_formapgto,
AutoNumber(Text(mlid)) as p_recebimento,
"forma_pgto",
"valor_venda_rateio",
"valor_venda",
"valor_forma_pgto",
"total_forma_pgto",
troco,
pgto,
"conta_debitar";
SQL SELECT *
FROM fragata."public"."venda_pgto_view"
WHERE data>= '$(v_data)' and data <='$(v_dataf)';
store RCB into C:\postos\qvd\RCB.qvd(qvd);
////*************************************************
PGT:
LOAD codigo as codigoformapgto,
nome as nomeformapgto,
grid as gridpgt,
AutoNumber(Text(grid)) as p_formapgto;
SQL SELECT *
FROM fragata."public"."forma_pgto";
store PGT into C:\postos\qvd\PGT.qvd(qvd);
////*************************************************
CRG:
LOAD codigo as codigocargo,
nome as nomecargo,
AutoNumber(Text(grid)) as p_cargo,
grid as gridcrg;
SQL SELECT *
FROM fragata."public".cargo;
store CRG into C:\postos\qvd\CRG.qvd(qvd);
//-------- Start Multiple Select Statements ------
LOAD data as dataestoque,
AutoNumber(Text(produto)) as p_produto,
AutoNumber(Text(empresa)) as p_empresa,
estoque,
custo_medio as medioestoquex,
ult_custo;
SQL SELECT *
FROM fragata."public"."estoque_produto";
TRACE NÃO VAI CARREGAR NADA!;
END IF
DROP TABLE Informacao_A_Ser_Verificada, Informacao_Do_Banco;
Vir coisas repetidas e consertei
LCT:
LOAD lancto,
AutoNumber(Text(lancto)) as p_lancto,
AutoNumber(Text(empresa)) as p_empresa,
AutoNumber(Text(produto)) as p_produto,
data as datalancto,
"custo_medio",
"ult_custo";
SQL SELECT *
FROM fragata."public"."estoque_lancto"
WHERE data>= '$(v_data)' and data <='$(v_dataf)';
store LCT into C:\postos\qvd\LCT.qvd(qvd);
EST:
LOAD data as dataestoque,
AutoNumber(Text(produto)) as p_produto,
AutoNumber(Text(empresa)) as p_empresa,
estoque,
custo_medio as medioestoquex,
ult_custo as ult_custoestoquex;
SQL SELECT *
FROM fragata."public"."estoque_produto";
Vir coisas repetidas e consertei
LCT:
LOAD lancto,
AutoNumber(Text(lancto)) as p_lancto,
AutoNumber(Text(empresa)) as p_empresa,
AutoNumber(Text(produto)) as p_produto,
data as datalancto,
"custo_medio",
"ult_custo";
SQL SELECT *
FROM fragata."public"."estoque_lancto"
WHERE data>= '$(v_data)' and data <='$(v_dataf)';
store LCT into C:\postos\qvd\LCT.qvd(qvd);
EST:
LOAD data as dataestoque,
AutoNumber(Text(produto)) as p_produto,
AutoNumber(Text(empresa)) as p_empresa,
estoque,
custo_medio as medioestoquex,
ult_custo as ult_custoestoquex;
SQL SELECT *
FROM fragata."public"."estoque_produto";