[firebase-br] P/Carlos Cantu
Charles Silva
charles em streamsolucoes.com
Qui Out 4 18:39:24 -03 2007
Apesar de não ver diferença, teste dessa forma:
update carteira_parceiro set x.baixado = 'S' from carteira_parceiro x
where x.cod_parceiro = :icod_parceiro
and x.cod_vendedor = :icod_vendedor;
Outra coisa, tente debugar essa procedure ver se esta passando com os
valores que vc quer.
Qualquer dúvida entre em contato.
Charles Silva.
Samuel Duarte Matos wrote:
> O campo justificativa na tabela que vc quer atualizar é do mesmo tamanho da
> variável da SP?
>
> "HPensador" <hpensador em gmail.com> escreveu na
> mensagem news:fe376f$5gj$1 em sea.gmane.org...
> Boa tarde Carlos!
>
> Desculpa postar endereçada a você, mais já postei este problema antes e
> nenhum colega teve condição de mim ajudar, daí só recorrendo a você.
>
> Tenho uma SP para dar baixa de Cliente e Parceiros (automáticamente ou
> por solicitação) - em ambas são feitas 2 atualizações e em uma dessas
> atualizações são aterados os valores de 2 campos da tabela - porém não
> sei por que cargas d'agua neste caso a alteração só esta ocorrendo em
> um dos campos. Abaixo o codigo da SP, qual pecado estou cometendo?
>
> CREATE PROCEDURE BX_CARTEIRA_PARCEIRO (
> justificativa varchar(200))
> as
> declare variable icodico integer;
> declare variable icod_parceiro integer;
> declare variable icod_vendedor integer;
> declare variable vdatafim date;
> declare variable sbaixado varchar(1);
> begin
> for select n.codigo,
> n.cod_parceiro,
> n.cod_vendedor,
> n.data_fim,
> n.baixado
> from carteira_parceiro n
> where extract(year from n.data_fim) = extract(year from
> current_date)
> into :icodico, :icod_parceiro, :icod_vendedor, :vdatafim, :sbaixado
> do
> begin
> if ((justificativa = '') or (justificativa is null) ) then
> justificativa = 'Baixa automática';
> if ((:vDataFim < current_date) and (:sbaixado = 'N')) then
> begin
> update carteira_parceiro x set x.baixado = 'S', <--- neste
> update são alterados o valor de 2 campos, porém qdo executo
> x.motivo_baixa = :justificativa
> a SP apenas o primeiro campo tem seu valor modifica.
> where x.cod_parceiro = :icod_parceiro
> and x.cod_vendedor = :icod_vendedor;
> update parceiro c set c.cod_vendedor = null
> where c.cod_parceiro = :icod_parceiro;
> end
> end
> end
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
>
>
> ------------------------------------------------------------------------
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> __________ NOD32 2572 (20071004) Information __________
>
> This message was checked by NOD32 antivirus system.
> http://www.eset.com
>
Mais detalhes sobre a lista de discussão lista