[firebase-br] Zerar generator em sp tem como ?

Eduardo Pombo eduardo em embras.net
Ter Maio 11 11:48:04 -03 2010


so retificando a 2a linha q faltou o final

select gen_id(<gen_name>, ( select  max( <campo> ) from <tabela> ) )
from RDB$DATABASE




Em 11 de maio de 2010 11:42, Eduardo Pombo <eduardo em embras.net> escreveu:
> bom dia,
>
> vc precisa mesmo de uma SP pra zera ???
> acredito q sua neccessidade se mais de atualizar ou corrigir a generator.
>
> pode fazer assim:
>
> set generator <gen_name> to 0
> ---
> select gen_id(<gen_name>, ( select  max( <campo> ) from <tabela> ) )
>
> Com a apenas a 1a linha vc zera e com as 2 vc seta o ultimo valor
> corrigindo o generator e ainda pega como retorno o valor q ele ficou.
>
> Espero ter ajudado
>
>
> Em 11 de maio de 2010 11:16, Mário Reis <mariodosreyx em gmail.com> escreveu:
>> Caio,
>>
>> Você tem sim Set <GENERATOR_NOME> = 0 mas V/ pode fazer isso
>> interactivamente de modo agradável
>> Procure EMS-SQLManager e baixe a versão Lite que é free e soberba!!!
>>
>> Abr. Mário
>>
>>
>>
>> 2010/5/10 NextCorp <nextcorp em nextcorp.com.br>
>>
>>> Olá
>>>
>>> Estou tentando zerar um generator em uma sp, já li em alguns post que não
>>> dá, mas será que não funciona mesmo ?
>>>
>>> Segue abaixo a sp que estou tentando fazer isto, mas está dando a seguinte
>>> mensagem:
>>>
>>> Unsuccessful execution caused by an unavailable resource.
>>> Wrong request type in EXECUTE STATEMENT 'set generator gen_os_sequencial'.
>>> At procedure 'SP_ZERA_SEQUENCIA_OS' line: 24, col: 1.
>>>
>>>
>>> ou seja o tipo de pedido está incorreto, mas por que ?
>>>
>>>
>>> CREATE OR ALTER PROCEDURE SP_ZERA_SEQUENCIA_OS (
>>>    wdata date)
>>> as
>>> declare variable wsql varchar(100);
>>> declare variable wgen integer;
>>> declare variable wcontrole integer;
>>> begin
>>>    select first 1 os_controle
>>>    from ordens_servicos
>>>    where (udf_copy(os_numero,7,2) = udf_copy(Cast(extract(year from :wdata)
>>> as varchar(4)),3,2))
>>>    into :wcontrole;
>>>
>>>    if (row_count = 0) then
>>>       begin
>>>          /* reseta generator para zero no inicio do ano */
>>>          wsql= 'set generator gen_os_sequencial to 0';
>>>
>>>          -- executa o sql retornando a variavel wgen
>>>          execute statement wsql into :wgen;
>>>
>>>          if (:wgen <> 0) then
>>>             exception exception_msg 'A sequência do número da OS não foi
>>> zerada. Informe !!!';
>>>       end
>>> end^
>>>
>>>
>>> Atenciosamente
>>>
>>> Washington André Muller da silva
>>>
>>> #######################
>>> NextCorp Informática Ltda
>>> www.nextcorp.com.br
>>> nextcorp em nextcorp.com.br
>>> 0xx-(51)-3037-6605
>>> #######################
>>> ______________________________________________
>>> 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
>>>
>>
>>
>>
>> --
>> C/Melhores cumprimentos
>> Mário Agostinho Reis
>>
>> Esta mensagem contém informação de natureza confidencial e é
>> exclusivamente dirigida ao(s) destinatário(s) indicado(s). Se, por engano,
>> receber este email agradecemos que não o copie nem o reenvie e que nos
>> notifique do ocorrido através do email de resposta.
>> ______________________________________________
>> 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
>>
>
>
>
> --
>
> Atenciosamente
>
> José Eduardo Pombo de Barros
> Gerente de Manutenção de Sistemas
>



-- 

Atenciosamente

José Eduardo Pombo de Barros
Gerente de Manutenção de Sistemas




Mais detalhes sobre a lista de discussão lista