A Stored Procedure abaixo dá erro de Sintaxe. Alguem pode me ajudar?
Grato
create procedure Sp_consolidado
(Conta                            Varchar (16),
 Ano                              Numeric (10),
 Superior                         Varchar (16),
 Grau                             Numeric (01),
 Jan_deb                          Numeric (11,02),
 Jan_cred                         Numeric (11,02),
 Fev_deb                          Numeric (11,02),
 Fev_cred                         Numeric (11,02),
 Mar_deb                          Numeric (11,02),
 Mar_cred                         Numeric (11,02),
 Abr_deb                          Numeric (11,02),
 Abr_cred                         Numeric (11,02),
 Mai_deb                          Numeric (11,02),
 Mai_cred                         Numeric (11,02),
 Jun_deb                          Numeric (11,02),
 Jun_cred                         Numeric (11,02),
 Jul_deb                          Numeric (11,02),
 Jul_cred                         Numeric (11,02),
 Ago_deb                          Numeric (11,02),
 Ago_cred                         Numeric (11,02),
 Set_deb                          Numeric (11,02),
 Set_cred                         Numeric (11,02),
 Out_deb                          Numeric (11,02),
 Out_cred                         Numeric (11,02),
 Nov_deb                          Numeric (11,02),
 Nov_cred                         Numeric (11,02),
 Dez_deb                          Numeric (11,02),
 Dez_cred                         Numeric (11,02)) 
begin
  if (EXISTS(SELECT(conta_consolid,ano_consolid) from Consolidado
  where (conta_consolid,ano_consolid) = (Conta,Ano)
    update Consolidado 
    set
      Jan_deb_consolid = Jan_deb_consolid + Jan_deb,
      Jan_cred_consolid = Jan_cred_consolid + Jan_cred,
      Fev_deb_consolid = Fev_deb_consolid + Fev_deb,
      Fev_cred_consolid = Fev_cred_consolid + Fev_cred,
      Mar_deb_consolid = Mar_deb_consolid + Mar_deb,
      Mar_cred_consolid = Mar_cred_consolid + Mar_cred,
      Abr_deb_consolid = Abr_deb_consolid + Abr_deb,
      Abr_cred_consolid = Abr_cred_consolid + Abr_cred,
      Mai_deb_consolid = Mai_deb_consolid + Mai_deb,
      Mai_cred_consolid = Mai_cred_consolid + Mai_cred,
      Jun_deb_consolid = Jun_deb_consolid + Jun_deb, 
      Jun_cred_consolid = Jun_cred_consolid + Jun_cred,
      Jul_deb_consolid = Jul_deb_consolid + Jul_deb,
      Jul_cred_consolid = Jul_cred_consolid + Jul_cred,
      Ago_deb_consolid = Ago_deb_consolid + Ago_deb,
      Ago_cred_consolid = Ago_cred_consolid + Ago_cred,
      Set_deb_consolid = Set_deb_consolid + Set_deb,
      Set_cred_consolid = Set_cred_consolid + Set_cred, 
      Out_deb_consolid = Out_deb_consolid + Out_deb,
      Out_cred_consolid = Out_cred_consolid + Out_cred,
      Nov_deb_consolid = Nov_deb_consolid + Nov_deb,
      Nov_cred_consolid = Nov_cred_consolid + Nov_cred,
      Dez_deb_consolid = Dez_deb_consolid + Dez_deb,
      Dez_cred_consolid = Dez_cred_consolid + Dez_cred

    where Conta_consolid = Conta
      and Ano_consolid = Ano
ELSE
  INSERT into Consolidado 
    (Conta_consolid
    ano_consolid,
    superior_consolid,
    grau_consolid,
    Jan_deb_consolid,
    Jan_cred_consolid,
    Fev_deb_consolid,
    Fev_cred_consolid,
    Mar_deb_consolid,
    Mar_cred_consolid,
    Abr_deb_consolid,
    Abr_cred_consolid,
    Mai_deb_consolid,
    Mai_cred_consolid,
    Jun_deb_consolid, 
    Jun_cred_consolid,
    Jul_deb_consolid,
    Jul_cred_consolid,
    Ago_deb_consolid,
    Ago_cred_consolid,
    Set_deb_consolid,
    Set_cred_consolid, 
    Out_deb_consolid,
    Out_cred_consolid,
    Nov_deb_consolid,
    Nov_cred_consolid,
    Dez_deb_consolid,
    Dez_cred_consolid)
  VALUES 
    (Conta,
    Ano, 
    Superior,
    Grau,
    Jan_deb,
    Jan_cred,
    Fev_deb,
    Fev_cred,
    Mar_deb,
    Mar_cred,
    Abr_deb,
    Abr_cred,
    Mai_deb,
    Mai_cred,
    Jun_deb, 
    Jun_cred,
    Jul_deb,
    Jul_cred,
    Ago_deb,
    Ago_cred,
    Set_deb,
    Set_cred, 
    Out_deb,
    Out_cred,
    Nov_deb,
    Nov_cred,
    Dez_deb,
    Dez_cred);
         
end
 
 

[As partes desta mensagem que não continham texto foram removidas]

Responder a