[firebase-br] erro insert em procedure

Daniel daniellcr em yahoo.com.br
Qui Set 23 10:20:52 -03 2010


Os ":" eu esqueci de colocar no exemplo que enviei pra lista, o oficial está 
com os pontos.  Se eu coloco um valor no lugar da variavel dá certo. Se uso 
a variavel dá erro. O erro acontece sempre nestas duas variaveis 
:conta_saida e :natureza_saida.


----- Original Message ----- 
From: "Newton" <ncsinfo em ibest.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, September 22, 2010 8:38 PM
Subject: Re: [firebase-br] erro insert em procedure


não está faltando os ":" (dois pontos) no parametro (natureza_saida) ?
----- Original Message ----- 
From: "Daniel" <daniellcr em yahoo.com.br>
To: <lista em firebase.com.br>
Sent: Wednesday, September 22, 2010 5:24 PM
Subject: [firebase-br] erro insert em procedure



Olá pessoal, dá uma ajuda aí se possível.

tenho a seguinte insert em uma procedure

insert into  MOV_BANCARIA (CODIGO               ,DATA  ,COD_EMPRESA
,COD_CONTA   ,VALOR  ,DOC ,HISTORICO ,OBSERVACOES ,COD_NATUREZA)
VALUES ((select max(codigo)+1 from
mov_bancaria),:data,:empresa_saida,:conta_saida,:valor
,:doc,:historico,:observacoes,natureza_saida);


nesta execução apresenta o seguinte erro:

violation of FOREIGN KEY constraint "".
violation of FOREIGN KEY constraint "FK_MOV_BANCARIA_CONTA" on table
"MOV_BANCARIA".
Foreign key reference target does not exist.
At procedure 'TRANSFERENCIA' line: 20, col: 1.



se eu informo diretamente os valores dos campos COD_CONTA E COD_NATUREZA ao
invés de usar a variavel não da erro algum sendo que o valor é o mesmo se eu
preencher a variável de INPUT.

insert into  MOV_BANCARIA (CODIGO               ,DATA  ,COD_EMPRESA
,COD_CONTA   ,VALOR  ,DOC ,HISTORICO ,OBSERVACOES ,COD_NATUREZA)
VALUES ((select max(codigo)+1 from mov_bancaria),:data,:empresa_saida,1
,:valor ,:doc,:historico,:observacoes,1);



CREATE PROCEDURE TRANSFERENCIA (
    NATUREZA_SAIDA   INTEGER,
    DATA             DATE,
    EMPRESA_SAIDA    INTEGER,
    CONTA_SAIDA      INTEGER,
    VALOR            DECIMAL(15,2),
    DOC              VARCHAR(20),
    HISTORICO        VARCHAR(50),
    OBSERVACOES      VARCHAR(32000),
    NATUREZA_ENTRADA INTEGER,
    CONTA_ENTRADA    INTEGER)
AS
begin
natureza_saida   = 0;
natureza_entrada = 0;
valor            = 0;
conta_saida      = 0;
conta_entrada    = 0;

insert into  MOV_BANCARIA (CODIGO               ,DATA  ,COD_EMPRESA
,COD_CONTA   ,VALOR  ,DOC ,HISTORICO ,OBSERVACOES ,COD_NATUREZA)
VALUES ((select max(codigo)+1 from
mov_bancaria),:data,:empresa_saida,:conta_saida,:valor
,:doc,:historico,:observacoes,natureza_saida);

  suspend;
end



______________________________________________
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