Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*$$IBEC$$
- ################################################################################
- # PROGRAMA LEOPARD REPORT
- # ANALISTA: CARLOS A. DIAS DA S. FILHO
- # DATA: 11/11/2020
- # OBJETIVO: CRIAR UM SISTEMA DE GATILHO PARA ALIMENTAR O
- # LIVRO DE MOVIMENTAÇAO DE ENTRADAS E SAÍDAS DO CAIXA DA EMPRESA
- # COM BASE NAS FORMAS DE PAGAMENTOS INFORMADAS NA VENDA
- #
- # 1 ) VERIFICAR SE O ESTADO É DE INSERÇÃO OU UPDATE
- # A LÓGICA DEFINE A FORMA COMO SERÁ INJETADA A INFORMAÇÃO
- # SE EM INSERTING , O SISTEMA DEVERÁ SE A VENDA ESTÁ COM SEU STATUS DE FECHADA
- # SE FOR FECHADA O SISTEMA IRÁ ALIMENTAR O LIVRO DE REGISTROS COM O VALOR 0
- DE ENTRADA.
- EM UPDATING O SISTEMA IRÁ ALIMENTAR O LIVRO COM A INFORMAÇÃO
- SE O STATUS DA VENDA ESTIVER COMO ESTORNADA SERA ADICIONADO
- NO LIVRO O REGISTRO COM VALOR 1 - SAÍDA
- # O SISTEMA DEVERÁ REGISTRAR O CNPJ DA EMPRESA NO LIVRO
- # O SISTEMA DEVERA ANALISAR SE A VENDA TEM CFE E DEVERÁ INJETAR OS VALORES
- # PARA O CFE
- # TO-DO
- 1 - INJETAR O SUPORTE A CNPJ DA EMPRESA NAS TABELAS DE TRANSFERÊNCIA DOS
- TERMINAIS PDV S
- 2 - INJETAR AS INFORMAÇÕES DO PLANO DE CONTAS
- ################################################################################
- $$IBEC$$*/
- AS
- DECLARE VARIABLE CONSOLIDA INTEGER;
- DECLARE VARIABLE CHAVESAT VARCHAR(44);
- DECLARE VARIABLE SITSAT VARCHAR(35);
- DECLARE VARIABLE SIGLA VARCHAR(4);
- DECLARE VARIABLE NRODOCFISCAL VARCHAR(10);
- DECLARE VARIABLE CNPJEMPRESA VARCHAR(35);
- DECLARE VARIABLE SITVENDA VARCHAR(35);
- BEGIN
- CONSOLIDA = 0;
- IF (INSERTING) THEN
- BEGIN
- SELECT VV.VENDA_CHAVESAT,
- VV.SAT_SITUACAO,
- IIF( VV.SAT_SITUACAO = 'EMITIDO','CFE','NA' ),
- IIF(VV.SAT_SITUACAO = 'EMITIDO',VV.VENDA_NUMSAT,0000),
- VV.VENDA_SITUACAO
- FROM MOVPDV_VENDAS VV
- WHERE VV.VENDA_NUMVENDA = NEW.VENDA_NUMERO
- AND ( ( VV.PDV_NUMPDV = NEW.PDV_NUMPDV ) )
- INTO
- :CHAVESAT,
- :SITSAT,
- :SIGLA,
- :NRODOCFISCAL,
- :SITVENDA;
- SELECT FIRST 1 P.CNPJ FROM CADEMPRESA P INTO :CNPJEMPRESA;
- /*$$IBEC$$
- #
- 01 - Dinheiro
- 02 - Cheque
- 03 - Cartão de Crédito
- 04 - Cartão de Débito
- 05 - Crédito Loja
- 10 - Vale Alimentação
- 11 - Vale Refeição
- 12 - Vale Presente
- 13 - Vale Combustível
- 99 - Outros
- #
- # Define um Padrão para que dinheiro seja consolidado.
- $$IBEC$$*/
- IF ( NEW.F019IND_PAG = 1 ) THEN
- BEGIN
- CONSOLIDA = 1;
- END
- IF (SITVENDA = 'FECHADA') THEN
- BEGIN
- INSERT INTO FINANC_REGMOVCAIXA
- (F001CNPJEMPRESA,
- F002DATA,
- F002AHORA,
- F003HISTORICO,
- F004VALOR,
- F005TIPOMOVIMENTO,
- F006ESPECIE,
- F007XESPECIEDESC,
- F008CONSOLIDADO,
- F009CODPLANOCONTAS,
- F010DESCPLANOCONTAS,
- F01SIGLADOCFISCAL,
- F012CHAVEDOCFISCAL,
- F013NRODOCFISCAL,
- F014SERIEDOCFISCAL)
- VALUES ( :CNPJEMPRESA ,
- NEW.VENDA_DATA,
- NEW.VENDA_HORA,
- 'VENDA EM '||NEW.FIN_DESCRICAO||' NO CAIXA '||NEW.PDV_NUMPDV||' REF A VENDA NRO.'||NEW.VENDA_NUMERO ,
- NEW.FIN_VALORREC,
- 0,
- CAST(NEW.F019IND_PAG AS VARCHAR(2)),
- NEW.FIN_DESCRICAO,
- :CONSOLIDA,
- NULL,
- '',
- :SIGLA,
- :CHAVESAT,
- :NRODOCFISCAL,1);
- END
- END
- /*$$IBEC$$
- ################################################################################
- ############### Inicia o bloco de update #######################################
- $$IBEC$$*/
- IF ( UPDATING ) THEN
- BEGIN
- SELECT VV.VENDA_CHAVESAT,
- VV.SAT_SITUACAO,
- IIF( VV.SAT_SITUACAO = 'ESTORNADO' OR ( VV.SAT_SITUACAO = 'EMITIDO' ) ,'CFE','NA' ),
- IIF( VV.SAT_SITUACAO = 'ESTORNADO' OR ( VV.SAT_SITUACAO = 'EMITIDO' ) ,VV.VENDA_NUMSAT,0000),
- VV.VENDA_SITUACAO
- FROM MOVPDV_VENDAS VV
- WHERE VV.VENDA_NUMVENDA = NEW.VENDA_NUMERO
- AND ( ( VV.PDV_NUMPDV = NEW.PDV_NUMPDV ) )
- INTO
- :CHAVESAT,
- :SITSAT,
- :SIGLA,
- :NRODOCFISCAL,
- :SITVENDA;
- SELECT FIRST 1 P.CNPJ FROM CADEMPRESA P INTO :CNPJEMPRESA;
- IF ( :SITVENDA = 'ESTORNADA' ) THEN
- BEGIN
- INSERT INTO FINANC_REGMOVCAIXA
- (F001CNPJEMPRESA,
- F002DATA,
- F002AHORA,
- F003HISTORICO,
- F004VALOR,
- F005TIPOMOVIMENTO,
- F006ESPECIE,
- F007XESPECIEDESC,
- F008CONSOLIDADO,
- F009CODPLANOCONTAS,
- F010DESCPLANOCONTAS,
- F01SIGLADOCFISCAL,
- F012CHAVEDOCFISCAL,
- F013NRODOCFISCAL,
- F014SERIEDOCFISCAL)
- VALUES ( :CNPJEMPRESA ,
- NEW.VENDA_DATA,
- NEW.VENDA_HORA,
- 'ESTORNO DO CAIXA EM '||NEW.FIN_DESCRICAO||' NO CAIXA '||NEW.PDV_NUMPDV||' REF A VENDA NRO.'||NEW.VENDA_NUMERO ,
- NEW.FIN_VALORREC,
- 1,
- CAST(NEW.F019IND_PAG AS VARCHAR(2)),
- NEW.FIN_DESCRICAO,
- :CONSOLIDA,
- NULL,
- '',
- :SIGLA,
- :CHAVESAT,
- :NRODOCFISCAL,1);
- END
- END
- END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement