/*------ 20/07/2016 11:34:55 --------*/ SET TERM ^ ; ALTER PROCEDURE SPPESQDESPREC RETURNS ( CODMOVIMENTO INTEGER, DATA DATE, TIPO VARCHAR(2), SITUACAO VARCHAR(2), CODIGOCONTABIL VARCHAR(20), CODFUNCIONARIO INTEGER, NRDOCUMENTO VARCHAR(20), PLANODECONTAS VARCHAR(40), TIPOPESSOA VARCHAR(15), CODPESSOA INTEGER, NOMEPESSOA VARCHAR(70), VALOR FLOAT, CODFILIAL INTEGER) AS begin FOR SELECT M.codfilial, M.CODMOVIMENTO, M.DATA, M.TIPO, M.SITUACAO, M.CODIGOCONTABIL, M.CODFUNCIONARIO, DM.NRDOCUMENTO, PC.DESCRICAO AS PLANODECONTAS, CAST('Cliente' as VARCHAR(15)) AS TIPOPESSOA,CL.CODCLIENTE AS CODPESSOA, CAST(CL.NOME AS VARCHAR(70)) AS NOMEPESSOA, DR.VALOR FROM MOVIMENTOSPRODUTOS M LEFT JOIN DOCUMENTOMOV DM ON (DM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN CFOP CF ON (CF.CODCFOP = DM.CODCFOP) LEFT JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) LEFT JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN CLIENTES CL ON (CL.CODCLIENTE = CM.CODCLIENTE) JOIN DESPESASRECEITAS DR ON (DR.CODMOVIMENTO = M.CODMOVIMENTO) WHERE M.TIPO IN ('RE') union all SELECT M.codfilial, M.CODMOVIMENTO, M.DATA, M.TIPO, M.SITUACAO, M.CODIGOCONTABIL, M.CODFUNCIONARIO, DM.NRDOCUMENTO, PC.DESCRICAO AS PLANODECONTAS, CAST('Fornecedor' as VARCHAR(15)) AS TIPOPESSOA, FM.CODFORNECEDOR AS CODPESSOA, CAST(F.NOME AS VARCHAR(70)) NOMEPESSOA, DR.VALOR FROM MOVIMENTOSPRODUTOS M LEFT JOIN DOCUMENTOMOV DM ON (DM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN CFOP CF ON (CF.CODCFOP = DM.CODCFOP) LEFT JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) LEFT JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN FORNECEDORES F ON (F.CODFORNECEDOR = FM.CODFORNECEDOR) JOIN DESPESASRECEITAS DR ON (DR.CODMOVIMENTO = M.CODMOVIMENTO) WHERE M.TIPO IN ('DP') INTO CODFILIAL, CODMOVIMENTO, DATA, TIPO, SITUACAO, CODIGOCONTABIL, CODFUNCIONARIO, NRDOCUMENTO, PLANODECONTAS, TIPOPESSOA, CODPESSOA, NOMEPESSOA, VALOR DO suspend; end ^ SET TERM ; ^ /*------ 25/07/2016 13:52:20 --------*/ CREATE TABLE REPRESENTANTES( CODREPRESENTANTE CODIGO NOT NULL); /*------ 25/07/2016 13:52:20 --------*/ alter table REPRESENTANTES add primary key (CODREPRESENTANTE); /*------ 25/07/2016 13:52:34 --------*/ ALTER TABLE REPRESENTANTES ADD NOME VARCHAR_100; /*------ 25/07/2016 13:53:07 --------*/ ALTER TABLE REPRESENTANTES ADD CPF VARCHAR_14; /*------ 25/07/2016 13:53:48 --------*/ ALTER TABLE REPRESENTANTES ADD EMAIL VC250; /*------ 25/07/2016 13:54:19 --------*/ ALTER TABLE REPRESENTANTES ADD SENHA VC500; /*------ 25/07/2016 13:56:18 --------*/ CREATE TABLE REPRESENTANTESEMPRESA( ID CODIGO NOT NULL); /*------ 25/07/2016 13:56:18 --------*/ alter table REPRESENTANTESEMPRESA add primary key (ID); /*------ 25/07/2016 13:56:50 --------*/ ALTER TABLE REPRESENTANTESEMPRESA ADD CODREPRESENTANTE INTEIRO_NULL; /*------ 25/07/2016 13:57:04 --------*/ ALTER TABLE REPRESENTANTESEMPRESA ADD CODEMPRESA INTEIRO_NOTNULL NOT NULL ; /*------ 25/07/2016 13:57:32 --------*/ alter table REPRESENTANTESEMPRESA add constraint FK_REPRESENTANTESEMPRESA_EMPRES foreign key (CODEMPRESA) references EMPRESA(CODEMPRESA) on delete CASCADE on update CASCADE; /*------ 25/07/2016 13:58:20 --------*/ SET TERM ^ ; CREATE TRIGGER REPRESENTANTESEMPRESA_BI FOR REPRESENTANTESEMPRESA ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.ID IS NULL OR NEW.ID=0) THEN NEW.ID = GEN_ID(GENERATOR_GERAL,1); END ^ SET TERM ; ^ /*------ 25/07/2016 13:58:45 --------*/ CREATE GENERATOR GEN_REPRESENTANTES; /*------ 25/07/2016 13:58:45 --------*/ SET TERM ^ ; CREATE TRIGGER REPRESENTANTES_BI FOR REPRESENTANTES ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.CODREPRESENTANTE IS NULL OR NEW.CODREPRESENTANTE=0) THEN NEW.CODREPRESENTANTE = GEN_ID(GEN_REPRESENTANTES,1); END ^ SET TERM ; ^ /*------ 25/07/2016 14:05:33 --------*/ CREATE TABLE COTACOES( CODCOTACAO CODIGO NOT NULL); /*------ 25/07/2016 14:05:33 --------*/ alter table COTACOES add primary key (CODCOTACAO); /*------ 25/07/2016 14:05:47 --------*/ ALTER TABLE COTACOES ADD CODEMPRESA INTEIRO_NOTNULL NOT NULL ; /*------ 25/07/2016 14:05:55 --------*/ ALTER TABLE COTACOES ADD DATA DATA; /*------ 25/07/2016 14:06:08 --------*/ ALTER TABLE COTACOES ADD STATUS STATUS; /*------ 25/07/2016 14:06:45 --------*/ alter table COTACOES add constraint FK_COTACOES_EMPRESA foreign key (CODEMPRESA) references EMPRESA(CODEMPRESA) on delete CASCADE on update CASCADE; /*------ 25/07/2016 14:07:02 --------*/ CREATE TABLE ITENSCOTACAO( CODITENCOTACAO CODIGO NOT NULL); /*------ 25/07/2016 14:07:02 --------*/ alter table ITENSCOTACAO add primary key (CODITENCOTACAO); /*------ 25/07/2016 14:07:13 --------*/ ALTER TABLE ITENSCOTACAO ADD CODCOTACAO INTEIRO_NOTNULL NOT NULL ; /*------ 25/07/2016 14:07:28 --------*/ ALTER TABLE ITENSCOTACAO ADD CODPRODUTO INTEIRO_NOTNULL NOT NULL ; /*------ 25/07/2016 14:08:00 --------*/ ALTER TABLE ITENSCOTACAO ADD QTD INTEIRO_NULL; /*------ 25/07/2016 14:08:45 --------*/ alter table ITENSCOTACAO add constraint FK_ITENSCOTACAO_COTACAO foreign key (CODCOTACAO) references COTACOES(CODCOTACAO) on delete CASCADE on update CASCADE; /*------ 25/07/2016 14:09:15 --------*/ alter table ITENSCOTACAO add constraint FK_ITENSCOTACAO_PRODUTOS foreign key (CODPRODUTO) references PRODUTOS(CODPRODUTO) on update CASCADE; /*------ 25/07/2016 14:09:32 --------*/ CREATE GENERATOR GEN_ITENSCOTACAO; /*------ 25/07/2016 14:09:32 --------*/ SET TERM ^ ; CREATE TRIGGER ITENSCOTACAO_BI FOR ITENSCOTACAO ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.CODITENCOTACAO IS NULL OR NEW.CODITENCOTACAO=0) THEN NEW.CODITENCOTACAO = GEN_ID(GEN_ITENSCOTACAO,1); END ^ SET TERM ; ^ /*------ 25/07/2016 14:10:10 --------*/ CREATE TABLE VALORESITENSCOTACAO( IDVALOR CODIGO NOT NULL); /*------ 25/07/2016 14:10:10 --------*/ alter table VALORESITENSCOTACAO add primary key (IDVALOR); /*------ 25/07/2016 14:11:23 --------*/ ALTER TABLE VALORESITENSCOTACAO ADD CODREPRESENTANTE INTEIRO_NOTNULL NOT NULL ; /*------ 25/07/2016 14:11:36 --------*/ ALTER TABLE VALORESITENSCOTACAO ADD CODITENCOTACAO INTEIRO_NULL; /*------ 25/07/2016 14:11:52 --------*/ ALTER TABLE VALORESITENSCOTACAO ADD VALOR VALOR_10_2; /*------ 25/07/2016 14:12:06 --------*/ ALTER TABLE VALORESITENSCOTACAO ADD QTD INTEIRO_NULL; /*------ 25/07/2016 14:12:42 --------*/ alter table VALORESITENSCOTACAO add constraint FK_VALORESITENSCOTACAO__ITENS foreign key (CODITENCOTACAO) references ITENSCOTACAO(CODITENCOTACAO) on delete CASCADE on update CASCADE; /*------ 25/07/2016 14:13:11 --------*/ alter table VALORESITENSCOTACAO add constraint FK_VALORESITENSCOTACAO_REPRESEN foreign key (CODREPRESENTANTE) references REPRESENTANTES(CODREPRESENTANTE) on update CASCADE; /*------ 25/07/2016 14:13:53 --------*/ CREATE GENERATOR GEN_VALORESITENSCOTACAO; /*------ 25/07/2016 14:13:53 --------*/ SET TERM ^ ; CREATE TRIGGER VALORESITENSCOTACAO_BI FOR VALORESITENSCOTACAO ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.IDVALOR IS NULL OR NEW.IDVALOR=0) THEN NEW.IDVALOR = GEN_ID(GEN_VALORESITENSCOTACAO,1); END ^ SET TERM ; ^ /*------ 27/07/2016 12:52:36 --------*/ ALTER TABLE REPRESENTANTES ADD EMPRESA VARCHAR20; /*------ 28/07/2016 11:08:10 --------*/ ALTER TABLE REPRESENTANTES ADD STATUS STATUS; /*------ 28/07/2016 11:28:46 --------*/ ALTER TABLE REPRESENTANTES ADD AUTH VC500; /*------ 30/07/2016 02:10:47 --------*/ CREATE GENERATOR GEN_COTACOES; /*------ 30/07/2016 02:10:47 --------*/ SET TERM ^ ; CREATE TRIGGER COTACOES_BI FOR COTACOES ACTIVE BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.CODCOTACAO IS NULL) THEN NEW.CODCOTACAO = GEN_ID(GEN_COTACOES,1); END ^ SET TERM ; ^ /*------ 30/07/2016 02:40:00 --------*/ update RDB$RELATION_FIELDS set RDB$FIELD_SOURCE = 'CHAR1' where (RDB$FIELD_NAME = 'STATUS') and (RDB$RELATION_NAME = 'COTACOES') ; /*------ 01/08/2016 00:56:41 --------*/ SET TERM ^ ; ALTER PROCEDURE SPCAIXADETALHADO RETURNS ( CODFILIAL INTEGER, TIPO VARCHAR(30), DESCRICAO VARCHAR(70), DATA DATE, VALOR FLOAT, CD CHAR(1), OPERACAO CHAR(1)) AS begin TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('VENDAS A PRAZO'as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(P.VALORPARCELA)AS FLOAT) AS VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) LEFT JOIN FILIAIS F ON (F.CODFILIAL = M.CODFILIAL) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN PARCELASCONTAS P ON (P.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('VE') AND P.PAGO='N' GROUP BY M.CODFILIAL, C.NOME, M.DATA INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('RECEITAS A PRAZO'as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(P.VALORPARCELA)AS FLOAT) AS VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) LEFT JOIN FILIAIS F ON (F.CODFILIAL = M.CODFILIAL) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN PARCELASCONTAS P ON (P.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('RE') AND P.PAGO='N' GROUP BY M.CODFILIAL, C.NOME, M.DATA INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('SERVICOS A PRAZO'as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(P.VALORPARCELA)AS FLOAT) AS VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) LEFT JOIN FILIAIS F ON (F.CODFILIAL = M.CODFILIAL) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN PARCELASCONTAS P ON (P.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('S') AND P.PAGO='N' GROUP BY M.CODFILIAL, C.NOME, M.DATA INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('RECEB.DE PARCELAS EM DINHEIRO' as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, PG.DATA, PG.VALOR, CAST ('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM PARCELASPGTO PG JOIN PARCELASCONTAS PC ON (PC.CODPARCELA = PG.CODPARCELA) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODCONTA = PC.CODCONTA) JOIN MOVIMENTOSPRODUTOS M ON (M.CODMOVIMENTO = CPR.CODMOVIMENTO) JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) WHERE PG.TIPO='D' AND PG.CODPARCELAPGTO NOT IN (SELECT CHP.CODPARCELAPGTO FROM CHPARCELAS CHP) INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('RECEB.DE PARCELAS EM CARTAO' as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, PG.DATA, PG.VALOR, CAST ('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM PARCELASPGTO PG JOIN PARCELASCONTAS PC ON (PC.CODPARCELA = PG.CODPARCELA) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODCONTA = PC.CODCONTA) JOIN MOVIMENTOSPRODUTOS M ON (M.CODMOVIMENTO = CPR.CODMOVIMENTO) JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) WHERE PG.TIPO='K' INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('RECEB.DE PARCELAS EM CHEQUE' as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, PG.DATA, CH.VALOR, CAST ('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM CHPARCELAS CHP JOIN PARCELASPGTO PG ON (PG.CODPARCELAPGTO = CHP.CODPARCELAPGTO) JOIN CHEQUES CH ON (CH.CODCHEQUE = CHP.CODCHEQUE) JOIN PARCELASCONTAS PC ON (PC.CODPARCELA = PG.CODPARCELA) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODCONTA = PC.CODCONTA) JOIN MOVIMENTOSPRODUTOS M ON (M.CODMOVIMENTO = CPR.CODMOVIMENTO) JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) WHERE PG.TIPO ='C' INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('RECEB.DE PARCELAS MISTO' as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, PG.DATA, PG.VALOR, CAST ('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM PARCELASPGTO PG JOIN PARCELASCONTAS PC ON (PC.CODPARCELA = PG.CODPARCELA) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODCONTA = PC.CODCONTA) JOIN MOVIMENTOSPRODUTOS M ON (M.CODMOVIMENTO = CPR.CODMOVIMENTO) JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) WHERE PG.TIPO='D' AND PG.CODPARCELAPGTO IN (SELECT CHP.CODPARCELAPGTO FROM CHPARCELAS CHP) INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('RECEB PARCELAS MISTO-CHEQUES' as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, PG.DATA, CH.VALOR, CAST ('C' AS CHAR(1)) AS CD, CAST('' AS CHAR(1)) AS OPERACAO FROM CHPARCELAS CHP JOIN PARCELASPGTO PG ON (PG.CODPARCELAPGTO = CHP.CODPARCELAPGTO) JOIN CHEQUES CH ON (CH.CODCHEQUE = CHP.CODCHEQUE) JOIN PARCELASCONTAS PC ON (PC.CODPARCELA = PG.CODPARCELA) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODCONTA = PC.CODCONTA) JOIN MOVIMENTOSPRODUTOS M ON (M.CODMOVIMENTO = CPR.CODMOVIMENTO) JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) WHERE PG.TIPO ='D' GROUP BY M.CODFILIAL, C.NOME, PG.DATA, CH.VALOR INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('DINHEIRO'as varchar(30))as TIPO, CAST('VENDAS A VISTA' AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(D.VALOR)AS FLOAT) AS VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN DINHEIRO D ON (D.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('VE') GROUP BY M.CODFILIAL, M.DATA INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('DINHEIRO'as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(D.VALOR) AS FLOAT) AS VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) LEFT JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN DINHEIRO D ON (D.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('RE') AND NOT D.VALOR IS NULL GROUP BY M.CODFILIAL, M.DATA, C.NOME INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO BEGIN if (DESCRICAO IS NULL) then DESCRICAO = 'RECEITAS A VISTA'; suspend; END TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('DINHEIRO'as varchar(30))as TIPO, CAST('SERVICOS A VISTA' AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(D.VALOR) AS FLOAT) AS VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN DINHEIRO D ON (D.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('S') GROUP BY M.CODFILIAL, M.DATA INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('VENDAS EM CHEQUE' as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(CH.VALOR AS FLOAT) AS VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) LEFT JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CHCONTAS CC ON (CC.CODCONTA = CPR.CODCONTA) JOIN CHEQUES CH ON (CH.CODCHEQUE = CC.CODCHEQUE) WHERE M.TIPO IN ('VE', 'S') INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO BEGIN if (DESCRICAO IS NULL) then DESCRICAO = 'VENDAS RECEITAS OU SERV. EM CHEQUE'; suspend; END TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('RECEITAS EM CHEQUE' as varchar(30))as TIPO, CAST(C.NOME AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(CH.VALOR AS FLOAT) AS VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) LEFT JOIN CLIENTEMOVIMENTO CM ON (CM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN CLIENTES C ON (C.CODCLIENTE = CM.CODCLIENTE) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CHCONTAS CC ON (CC.CODCONTA = CPR.CODCONTA) JOIN CHEQUES CH ON (CH.CODCHEQUE = CC.CODCHEQUE) WHERE M.TIPO IN ('RE') INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO BEGIN if (DESCRICAO IS NULL) then DESCRICAO = 'RECEITAS EM CHEQUE'; suspend; END /*SUPRIMENTO*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT MV.CODFILIAL, cast('SUPRIMENTO'as varchar(30))as TIPO, CAST(MV.DESCRICAO AS VARCHAR(70)) AS DESCRICAO, MV.DATA, MV.VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('+' AS CHAR(1)) AS OPERACAO FROM MOVCAIXA MV WHERE MV.TIPO='SU' INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; FOR SELECT DP.CODFILIAL, Cast('DESCONTOS' as varchar(30))as TIPO, CAST('DESCONTO DE PAGAMENTO DE PARCELAS' AS VARCHAR(40)), DP.DATA, DP.VALOR, CAST('C' AS CHAR(1)) AS CD, CAST('' AS CHAR(1)) AS OPERACAO FROM DESCONTOPARCELA DP WHERE DP.TIPO='P' INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO SUSPEND; /*DEBITO*/ /*COMPRAS A PRAZO*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('COMPRAS A PRAZO'as varchar(30))as TIPO, CAST(F.NOME AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(P.VALORPARCELA)AS FLOAT) AS VALOR, CAST('D' AS CHAR(1)) AS CD, CAST('' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN FORNECEDORES F ON (F.CODFORNECEDOR = FM.CODFORNECEDOR) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN PARCELASCONTAS P ON (P.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('CO') AND P.PAGO='N' GROUP BY M.CODFILIAL, F.NOME, M.DATA INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; /*DESPESAS A PRAZO*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('DESPESAS A PRAZO' as varchar(30))as TIPO, CAST(F.NOME AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(P.VALORPARCELA)AS FLOAT) AS VALOR, CAST('D' AS CHAR(1)) AS CD, CAST('' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN FORNECEDORES F ON (F.CODFORNECEDOR = FM.CODFORNECEDOR) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN PARCELASCONTAS P ON (P.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('DP') AND P.PAGO='N' GROUP BY M.CODFILIAL, F.NOME, M.DATA INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; /*COMPRAS A VISTA*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('DINHEIRO'as varchar(30))as TIPO, CAST('COMPRAS A VISTA' AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(D.VALOR)AS FLOAT) AS VALOR, CAST('D' AS CHAR(1)) AS CD, CAST('-' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN DINHEIRO D ON (D.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('CO') GROUP BY M.CODFILIAL, M.DATA INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; /*DESPESAS A VISTA*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('DINHEIRO'as varchar(30))as TIPO, CAST(FO.NOME AS VARCHAR(70)) AS DESCRICAO, M.DATA, CAST(SUM(D.VALOR)AS FLOAT) AS VALOR, CAST('D' AS CHAR(1)) AS CD, CAST('-' AS CHAR(1)) AS OPERACAO FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) LEFT JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN FORNECEDORES FO ON (FO.CODFORNECEDOR = FM.CODFORNECEDOR) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN DINHEIRO D ON (D.CODCONTA = CPR.CODCONTA) WHERE M.TIPO IN ('DP') AND (NOT D.VALOR IS NULL) GROUP BY M.CODFILIAL, M.DATA, FO.NOME INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO BEGIN if (DESCRICAO IS NULL) then DESCRICAO = 'DESPESAS A VISTA'; suspend; END /*COMPRAS OU DESP EM CHEQUE*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, CAST(F.NOME AS VARCHAR(70)), M.DATA, CAST(SUM(CH.VALOR)AS FLOAT) FROM MOVIMENTOSPRODUTOS M JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) LEFT JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN FORNECEDORES F ON (F.CODFORNECEDOR = FM.CODFORNECEDOR) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODMOVIMENTO = M.CODMOVIMENTO) JOIN CHCONTAS CC ON (CC.CODCONTA = CPR.CODCONTA) JOIN CHEQUES CH ON (CH.CODCHEQUE = CC.CODCHEQUE) WHERE M.TIPO IN ('CO', 'DP') GROUP BY M.CODFILIAL, F.NOME, M.DATA INTO :CODFILIAL, :DESCRICAO, :DATA, :VALOR DO if (DESCRICAO IS NULL) then DESCRICAO = 'COMPRA OU DESP.EM CHEQUE'; TIPO = 'DEBITOS EM CHEQUE'; CD = 'D'; OPERACAO = '-'; suspend; /*PGTO DE PARCELAS EM DIN*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('PGTO DE PARCELAS EM DINHEIRO' as varchar(30))as TIPO, CAST(F.NOME AS VARCHAR(70)) AS DESCRICAO, PG.DATA, PG.VALOR, CAST ('D' AS CHAR(1)) AS CD, CAST('-'AS CHAR(1)) AS OPERACAO FROM PARCELASPGTO PG JOIN PARCELASCONTAS PC ON (PC.CODPARCELA = PG.CODPARCELA) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODCONTA = PC.CODCONTA) JOIN MOVIMENTOSPRODUTOS M ON (M.CODMOVIMENTO = CPR.CODMOVIMENTO) JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN FORNECEDORES F ON (F.CODFORNECEDOR = FM.CODFORNECEDOR) WHERE PG.TIPO='D' AND PG.CODPARCELAPGTO NOT IN (SELECT CHP.CODPARCELAPGTO FROM CHPARCELAS CHP) GROUP BY M.CODFILIAL, PG.CODPARCELAPGTO, F.NOME, PG.DATA, PG.VALOR INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; /*PGTO DE PARCELEAS EM CHEQUE*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('PGTO DE PARCELAS EM CHEQUE' as varchar(30))as TIPO, CAST(F.NOME AS VARCHAR(70)) AS DESCRICAO, PG.DATA, CH.VALOR, CAST ('D' AS CHAR(1)) AS CD, CAST('-'AS CHAR(1)) AS OPERACAO FROM CHPARCELAS CHP JOIN PARCELASPGTO PG ON (PG.CODPARCELAPGTO = CHP.CODPARCELAPGTO) JOIN CHEQUES CH ON (CH.CODCHEQUE = CHP.CODCHEQUE) JOIN PARCELASCONTAS PC ON (PC.CODPARCELA = PG.CODPARCELA) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODCONTA = PC.CODCONTA) JOIN MOVIMENTOSPRODUTOS M ON (M.CODMOVIMENTO = CPR.CODMOVIMENTO) JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN FORNECEDORES F ON (F.CODFORNECEDOR = FM.CODFORNECEDOR) WHERE PG.TIPO='C' INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; /*PGTO MISTO CHEQUES*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('PGTO DE PARCELAS MISTO-CHEQUES' as varchar(30))as TIPO, CAST(F.NOME AS VARCHAR(70)) AS DESCRICAO, PG.DATA, CH.VALOR, CAST ('D' AS CHAR(1)) AS CD, CAST(''AS CHAR(1)) AS OPERACAO FROM CHPARCELAS CHP JOIN PARCELASPGTO PG ON (PG.CODPARCELAPGTO = CHP.CODPARCELAPGTO) JOIN CHEQUES CH ON (CH.CODCHEQUE = CHP.CODCHEQUE) JOIN PARCELASCONTAS PC ON (PC.CODPARCELA = PG.CODPARCELA) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODCONTA = PC.CODCONTA) JOIN MOVIMENTOSPRODUTOS M ON (M.CODMOVIMENTO = CPR.CODMOVIMENTO) JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN FORNECEDORES F ON (F.CODFORNECEDOR = FM.CODFORNECEDOR) WHERE PG.TIPO='D' GROUP BY M.CODFILIAL, F.NOME, PG.DATA, CH.VALOR INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; /*PGTO MISTO*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT M.CODFILIAL, cast('PGTO DE PARCELAS MISTO' as varchar(30))as TIPO, CAST(F.NOME AS VARCHAR(70)) AS DESCRICAO, PG.DATA, PG.VALOR, CAST ('D' AS CHAR(1)) AS CD, CAST('-'AS CHAR(1)) AS OPERACAO FROM PARCELASPGTO PG JOIN PARCELASCONTAS PC ON (PC.CODPARCELA = PG.CODPARCELA) JOIN CONTASPAGARRECEBER CPR ON (CPR.CODCONTA = PC.CODCONTA) JOIN MOVIMENTOSPRODUTOS M ON (M.CODMOVIMENTO = CPR.CODMOVIMENTO) JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) JOIN FORNECEDORES F ON (F.CODFORNECEDOR = FM.CODFORNECEDOR) WHERE PG.TIPO='D' AND PG.CODPARCELAPGTO IN (SELECT CHP.CODPARCELAPGTO FROM CHPARCELAS CHP) GROUP BY M.CODFILIAL, PG.CODPARCELAPGTO, F.NOME, PG.DATA, PG.VALOR INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; /*SANGRIA*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT MV.CODFILIAL, cast('SANGRIA'as varchar(30))as TIPO, CAST(MV.DESCRICAO AS VARCHAR(70)) AS DESCRICAO, MV.DATA, MV.VALOR, CAST('D' AS CHAR(1)) AS CD, CAST('-' AS CHAR(1)) AS OPERACAO FROM MOVCAIXA MV WHERE MV.TIPO='SA' INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; /*DESCONTO*/ TIPO = ''; DESCRICAO = ''; DATA = NULL; VALOR = 0; CD = ''; OPERACAO = ''; FOR SELECT SP.CODFILIAL, cast('DESCONTOS'as varchar(30))as TIPO, CAST(SP.TIPO AS VARCHAR(70)) AS DESCRICAO, SP.DATA, SP.DESCDINHEIRO, CAST('D' AS CHAR(1)) AS CD, CAST('' AS CHAR(1)) AS OPERACAO FROM SPDESCONTOS SP INTO :CODFILIAL, :TIPO, :DESCRICAO, :DATA, :VALOR, :CD, :OPERACAO DO suspend; end ^ SET TERM ; ^ /*------ 01/08/2016 02:50:58 --------*/ SET TERM ^ ; ALTER PROCEDURE SPMOVDESPESAS RETURNS ( CODMOVIMENTO INTEGER, CODFORNECEDOR INTEGER, NOME VARCHAR(70), DATA DATE, TOTAL FLOAT, DESCRICAO VARCHAR(50), CODIGOCONTABIL VARCHAR(20), PLANODECONTAS VARCHAR(40), CODFUNCIONARIO INTEGER, FUNCIONARIO VARCHAR(40), CODFILIAL INTEGER) AS begin FOR SELECT M.CODMOVIMENTO, F.CODFORNECEDOR, F.NOME, M.DATA, DP.VALOR, DP.DESCRICAO, PC.CODIGOCONTABIL, PC.DESCRICAO, M.CODFUNCIONARIO, FU.NOME, M.codfilial FROM MOVIMENTOSPRODUTOS M JOIN DESPESASRECEITAS DP ON (DP.CODMOVIMENTO = M.CODMOVIMENTO) JOIN PLANOSDECONTAS PC ON (PC.CODIGOCONTABIL = M.CODIGOCONTABIL) LEFT JOIN FORNMOVIMENTO FM ON (FM.CODMOVIMENTO = M.CODMOVIMENTO) LEFT JOIN FORNECEDORES F ON (F.CODFORNECEDOR = FM.CODFORNECEDOR) LEFT JOIN FUNCIONARIOS FU ON (FU.CODFUNCIONARIO = M.CODFUNCIONARIO) WHERE M.TIPO IN('DP', 'DF') INTO :CODMOVIMENTO, :CODFORNECEDOR, :NOME, :DATA, :TOTAL, :DESCRICAO, :CODIGOCONTABIL, :PLANODECONTAS, :CODFUNCIONARIO, :FUNCIONARIO, :CODFILIAL DO suspend; end ^ SET TERM ; ^