Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Stored Procedure


robinhocne

Pergunta

Pessoal não sei se alguém ai pode me ajudar.....mas estava tenho um caso que ao deletar um produto de uma determinada entrada de estoque ele tem que ir na tabela entrada e diminuir a quantidade e valor ai estava ká comigo querendo deixar para o banco de dados fazer esse procedimento, sendo assim pensei na Stored procedure em vez até de criar uma função no sistema para isso....

eu uso o banco de dados firebird e estou tentando fazer essa stored procedure abaixo:

CREATE PROCEDURE P_PRD_ENTRADAS_AtuQtVlTotal
(
  vEmpCodigo      integer,
  vEntCodigo      Integer,
  vEntData        Integer,
  vCodProduto     INTEGER,
  vEntQtdTotal    Numeric (10,4),
  vEntVlTotalProd Numeric (10,6)
)

returns
(
    vEntQtdTotal    Numeric (10,4),
    vEntVlTotalProd Numeric (10,6)
)
as
begin
        Update Prd_Entradas Set EntQtdTotal = :vEntQtdTotal
        where EmpCodigo  = :vEmpCodigo and
           EntCodigo  = :vEmpCodigo and
           EntData    = :vEntData;
end
mas dá esse erro:
This operation is not defined for system tables.
unsuccessful metadata update.
STORE RDB$PROCEDURE_PARAMETERS failed.
attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_18".

alguém pode me ajudar ?

Editado por robinhocne
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
This operation is not defined for system tables.

unsuccessful metadata update.

STORE RDB$PROCEDURE_PARAMETERS failed.

attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_18".

Esta operação não é definida para tabelas do sistema

actualização mal sucedida dos metadata.

STORE RDB$PROCEDURE_PARAMETERS falhou.

tente armazenar o valor duplicado (visível às transações ativas) em um unico indice "RDB$INDEX_18".

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
This operation is not defined for system tables.

unsuccessful metadata update.

STORE RDB$PROCEDURE_PARAMETERS failed.

attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_18".

Esta operação não é definida para tabelas do sistema

actualização mal sucedida dos metadata.

STORE RDB$PROCEDURE_PARAMETERS falhou.

tente armazenar o valor duplicado (visível às transações ativas) em um unico indice "RDB$INDEX_18".

abraço

Consegui resolver :

CREATE PROCEDURE P_PRD_ENTRADAS_ATUQTVLTOTAL (
    vempcodigo integer,
    ventcodigo integer,
    ventdata date,
    ventqtdtotal numeric(10,4),
    ventvltotalprod numeric(10,6),
    ventvltotentrada numeric(10,6))
as
begin
    Update Prd_Entradas Set EntQtdTotal = :vEntQtdTotal,
                            EntVlTotalProd = :vEntVlTotalProd,
                            EntVlTotEntrada = :vEntVlTotEntrada
    where EmpCodigo  = :vEmpCodigo and
          EntCodigo  = :vEntCodigo and
          EntData    = :vEntData;
end

Editado por robinhocne
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,8k
×
×
  • Criar Novo...