[firebase-br] Estorno ***de loucos***

Mário Reis secretariadogeral em acra.pt
Qui Ago 21 09:58:53 -03 2008


Errado não estou a conseguir  embora me de erro apenas no 2.º insert
salta-me para When ANY Do ... End Nota desactivei todas a triggers etc..
Inclusive, criei agorinha mesmo um ficheiro imagem (trabalho) e nem nesse 
ficheiro
(s/triggers sem indices sem NOT NULL) se  estou a conseguir inserir esses 
registos
que coisa!' impressionante

"Isael Faria Junior" <isael em stetika.com.br> 
escreveu na mensagem news:48AD5C9F.5000904 em stetika.com.br...
você so consegue rodar uma vez essa rotina ? ou Ela só executa para o
primeiro registro ?

Mrio Reis escreveu:
> Bom dia,
>
> Estou há horas a tentar implementar o "Estorno de uma operação financeira"
> coisa que é termo conceptuais é muito simples. Temos uma ou várias linhas
> com indicação de "pagas" por erro que afinal não estão e é preciso 
> corrigir.
> O fisco exige e até por razões de transparencia da propria
> empresa/associação etc que se não se apaguem linhas mas, antes, que 
> repitam
> as mesmas linhas cada uma com os Valores *-1 uma, e que a mesma se repita
> c/sinal positivo mas agora sem por exemplo Data de pagamento, N.º de 
> Recibo
> e N.ºOperação(controla todos os registos de uma transacção) e estou a 
> fazer
> assim
>
> FOR SELECT  CB1.COBRANCA_ID, CB1.VALOR_PG, CB1.VALOR_IVA, CB1.VALOR_DISC,
> CB1.DT_PG_EFECTIVO, CB1.NORECIBO, CB1.NOOPERACAO
> FROM COBRANCAS CB1
> WHERE CB1.DT_PG_EFECTIVO=:IN_DT_PG_EFT AND CB1.CLIENTE_ID=:IN_CLI_ID
> INTO :WCOBRANCA_ID, :WVLR_PG, :WVLR_IVA, :WVLR_DISC, :WDT_PG_EFECTIVO,
> :WNORECIBO,:NOOPERACAO
> DO
>  BEGIN
>    /*      1. NEGATIVAR VALORES */
>   WVLR_PG=WVLR_PG*-1;
>   WVLR_IVA=WVLR_IVA*-1;
>   WVLR_DISC=WVLR_DISC*-1;
>  /* 2.  NOTA: NO MESMO FICHEIRO */
>   /* 2.1 ---------------------------------------> INSERE UMA LINHA 
> NEGATIVA
> */
>  INSERT INTO COBRANCAS
> (COBRANCA_ID, VALOR_PG, VALOR_IVA, VALOR_DISC, DT_PG_EFECTIVO,
> NORECIBO,NOOPERACAO)
>   VALUES(:WCOBRANCA_ID, :WVLR_PG, :WVLR_IVA, :WVLR_DISC, :WDT_PG_EFECTIVO,
> ORECIBO,:WNOOPERACAO);
>    /*     2.2 POSITIVAR VALORES DA MESMA LINHA E RE-INSERI-LOS*/
>    /* C/CONTROLOS DO PAGAMENTO A NULL INDICANDO O S/NÃO PAGAMENTO  */
>     WDT_PG_EFECTIVO=NULL;
>     WNORECIBO=NULL
>     WNOOPERACAO=NULL
>    WVLR_PG=WVLR_PG*-1;
>    WVLR_IVA=WVLR_IVA*-1;
>    WVLR_DISC=WVLR_DISC*-1;
>    /* NOTA: AINDA NO MESMO FICHEIRO */
>   /* 2.3------------------------------------------>INSERE UMA LINHA 
> POSITIVA
> MAS, NÃO PAGA  */
>   INSERT INTO COBRANCAS
> (COBRANCA_ID, VALOR_PG, VALOR_IVA, VALOR_DISC, DT_PG_EFECTIVO,
> NORECIBO,NOOPERACAO)
>   VALUES(:WCOBRANCA_ID, :WVLR_PG, :WVLR_IVA, :WVLR_DISC, :WDT_PG_EFECTIVO,
> ORECIBO,:WNOOPERACAO);
>
> END
> suspend,
>
> Só consigo uma 1.ª vez o negativar o 1.º insert O que há de errado neste
> codigo?
> Alguém já passou por isto que possa ajudar.
> Obrigado
>
>
>
>
>
>
>
>
> No virus found in this incoming message.
> Checked by AVG - http://www.avg.com
> Version: 8.0.138 / Virus Database: 270.6.6/1624 - Release Date: 20/8/2008 
> 19:11
>
>
> ------------------------------------------------------------------------
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: 
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa







Mais detalhes sobre a lista de discussão lista