Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DECLARE @idPagamentoVenda INT= 58663033;
- DECLARE @qtParcelas INT= 4;
- DECLARE @prTaxaAdministracao NUMERIC(9, 2)= 0.25;
- IF(
- (
- SELECT COUNT(*)
- FROM card.tbParcela
- WHERE idPagamentoVenda = @idPagamentoVenda
- AND idStatusParcela = 2
- ) = 0)
- BEGIN
- DECLARE @qtParcelasAtuais INT=
- (
- SELECT COUNT(*)
- FROM card.tbParcela
- WHERE idPagamentoVenda = @idPagamentoVenda
- );
- IF(@qtParcelasAtuais > @qtParcelas)
- BEGIN
- DECLARE @diferenca1 INT= @qtParcelasAtuais - @qtParcelas;
- WHILE @diferenca1 > 0
- BEGIN
- DELETE FROM card.tbParcela
- WHERE nrParcela =
- (
- SELECT MAX(nrParcela)
- FROM card.tbParcela
- WHERE idPagamentoVenda = @idPagamentoVenda
- )
- AND idPagamentoVenda = @idPagamentoVenda;
- DECLARE @vlParc DECIMAL=
- (
- SELECT COUNT(*)
- FROM card.tbParcela
- WHERE idPagamentoVenda = @idPagamentoVenda
- ) / @qtParcelas;
- UPDATE card.tbParcela
- SET
- vlParcela = @vlParc,
- vlTaxaAdministracao = @prTaxaAdministracao;
- SELECT *
- FROM card.tbParcela;
- SET @diferenca1 = @diferenca1 - 1;
- END;
- IF(@qtParcelasAtuais < @qtParcelas)
- BEGIN
- DECLARE @diferenca2 INT= @qtParcelas - @qtParcelasAtuais;
- WHILE @diferenca2 > 0
- BEGIN
- INSERT INTO card.tbParcela
- SELECT idPagamentoVenda,
- nrParcela + 1,
- idEmpresa,
- dtEmissao,
- dtVencimento,
- vlParcela,
- vlTaxaAdministracao,
- idContaCorrente,
- dtPagamento,
- vlPago,
- idStatusParcela,
- idMovimentoBanco
- FROM card.tbParcela
- WHERE idPagamentoVenda = @idPagamentoVenda
- AND nrParcela =
- (
- SELECT MAX(nrParcela)
- FROM card.tbParcela
- WHERE idPagamentoVenda = @idPagamentoVenda
- );
- DECLARE @vlParc2 DECIMAL=
- (
- SELECT COUNT(*)
- FROM card.tbParcela
- WHERE idPagamentoVenda = @idPagamentoVenda
- ) / @qtParcelas;
- END;
- END;
- END;
- END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement