Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bruno Borba

[Resolvido] Stored Procedure dando erro !

Recommended Posts

Pessoal, Obrigado primeiramente por sua atenção.

 

Tenho uma Stored Procedure em FIREBIRD e encontrei uma dificuldade em colocar ela em SQL Server.

Colocarei ambas e vcs poderiam me ajudar por favor obrigado desde de ja

 

 

EM FIREBIRD :

CREATE PROCEDURE STPNPlanoContas (	Chave varchar(38))returns (	NumeroConta varchar(50))asdeclare variable ChaveAnt varchar(38) character set none;declare variable ContaAtual varchar(100) character set none;begin  Select	PLCT_IDMaster,	PLCT_Seq  From	PlanoContas  Where	Coalesce(PLCT_ID, '') = Coalesce(@Chave, '')  Into ChaveAnt, ContaAtual;  NumeroConta = ContaAtual;  if (not ChaveAnt is null) then  begin	select 	  NumeroConta	from STPNPlanoContas(:ChaveAnt)	into 	  NumeroConta;	NumeroConta = NumeroConta || '.' || ContaAtual;  end  suspend;end

EM SQL SERVER 2005:

Create Procedure STPNPlanoContas  @NumeroConta   varchar(50) OutPut,  @Chave		 varchar(38)As  Declare @ChaveAnt	VarChar(38)  Declare @ContaAtual  VarChar(38)Begin  Select	PLCT_IDMaster,	PLCT_Seq  From	PlanoContas  Where	Coalesce(PLCT_ID, '') = Coalesce(@Chave, '')  Into	@ChaveAnt, @ContaAtual  Set @NumeroConta = @ContaAtual  If Not IsNull(@ChaveAnt, '') = ''  Begin	Select	  NumeroConta	From	  STPNPlanoContas (@ChaveAnt)	Into	  @NumeroConta	Set @NumeroConta	= NumeroConta | '.' | @ContaAtual  EndEnd

 

Bem espero a ajuda de vcs Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bruno,

 

creio que seu problema inicial esteja na atribuição de valores às variáveis usando Into, que eu saiba não rola desta forma.

Tente substituir nestes dois pontos:

 

  Select
PLCT_IDMaster,
PLCT_Seq
 From
PlanoContas
 Where
Coalesce(PLCT_ID, '') = Coalesce(@Chave, '')
 Into
@ChaveAnt, @ContaAtual

 

por

 

  Select
@ChaveAnt   = PLCT_IDMaster,
@ContaAtual = PLCT_Seq
 From
PlanoContas
 Where
Coalesce(PLCT_ID, '') = Coalesce(@Chave, '')

 

E aqui ó:

 

	Select
  NumeroConta
From
  STPNPlanoContas (@ChaveAnt)
Into
  @NumeroConta

 

por

 

	Select
  @NumeroConta = NumeroConta
From
  STPNPlanoContas

 

Veja como ficou e fale pra gente.

[]tz ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

DAW " você é o Cara"Resolvido Brother, Muitooo obrigado.Valeu mesmo fuiiiiTOPICO RESOLVIDO

Bruno,creio que seu problema inicial esteja na atribuição de valores às variáveis usando Into, que eu saiba não rola desta forma.Tente substituir nestes dois pontos:

Select	PLCT_IDMaster,	PLCT_Seq  From	PlanoContas  Where	Coalesce(PLCT_ID, '') = Coalesce(@Chave, '')  Into	@ChaveAnt, @ContaAtual
por
Select	@ChaveAnt   = PLCT_IDMaster,	@ContaAtual = PLCT_Seq  From	PlanoContas  Where	Coalesce(PLCT_ID, '') = Coalesce(@Chave, '')
E aqui ó:
Select	  NumeroConta	From	  STPNPlanoContas (@ChaveAnt)	Into	  @NumeroConta
por
Select	  @NumeroConta = NumeroConta	From	  STPNPlanoContas
Veja como ficou e fale pra gente.[]tz ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Legal cara...

 

Valeu por fazer uso desta nova funcionalidade de "Resolvidos".

 

Precisando é só falar.

 

[]tz ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Legal cara...Valeu por fazer uso desta nova funcionalidade de "Resolvidos".Precisando é só falar.[]tz ;)

falai Daw bl, fui eu, o camarada Bruno escreveu topico resolvido mas não fez a marcação, dai marquei lá... espero que logo os todos users comecem a usar esse novo recurso que é bem bacanaabs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah!

 

Legal legal... é mto importante isso!

 

[]tz ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.