Re: Actualizar registros en una tabla

From: raul andrez gutierrez alejo <raulandrez(at)gmail(dot)com>
To: Felipe Araoz Ramos <faraoz(at)gmail(dot)com>
Cc: PostgreSQL-foro <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Actualizar registros en una tabla
Date: 2014-07-23 21:06:08
Message-ID: CAHQFj71y-L048AxtRjsMzSEkSWWSu77wv0mXC+=HOWUYnyyj0w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola felipe.

puede agregar un RAISE NOTICE despues del update para mostrar en el log de
postgres el valor de la variables así:

RAISE NOTICE ' item % , stk %', fila_item.n_operac,stk;

El 23 de julio de 2014, 8:15, Felipe Araoz Ramos <faraoz(at)gmail(dot)com>
escribió:

> Ya lo solucioné
>
> Habia dos problemas 1) codi=fila_item.codiprod; se cambio por codi*:=*
> fila_item.codiprod
> 2) faltaba declarar RETURN stk al final del loop,
>
> Gracias amigos por su ayuda
>
>
> *Felipe Araoz Ramos*
> RPM #941990605 / 941990605
> RPC 992760385
> NXT 822*9500 / 998229500
>
>
> El 22 de julio de 2014, 9:43, Felipe Araoz Ramos <faraoz(at)gmail(dot)com>
> escribió:
>
>> Amigo Guillermo
>>
>> Si esta corregido, pero parece que eso no es el problema, voy a seguir
>> revisando.
>>
>> Saludos
>>
>> *Felipe Araoz Ramos*
>> RPM #941990605 / 941990605
>> RPC 992760385
>> NXT 822*9500 / 998229500
>>
>>
>> El 22 de julio de 2014, 8:21, Guillermo E. Villanueva <
>> guillermovil(at)gmail(dot)com> escribió:
>>
>> En
>>> codi=fila_item.codiprod;
>>> No te faltan los dos puntos?
>>> codi:=fila_item.codiprod;
>>>
>>> Guillermo Villanueva
>>>
>>>
>>>
>>> El 21 de julio de 2014, 16:04, Carlos Bazán <infobaz(at)vtr(dot)net> escribió:
>>>
>>>> Como yo lo veo a primeras, no se esta actualizando la variable codi en
>>>> codi=fila_item.codiprod;
>>>> creo que debería ser codi:=fila_item.codiprod;
>>>>
>>>> Saludos
>>>>
>>>>
>>>> El 21/07/14 13:29, Felipe Araoz Ramos escribió:
>>>>
>>>>> Amigos
>>>>>
>>>>> Estoy creando una funcion, para rrecorrer secuencialmente una tabla, de
>>>>> principio a fin, actualizando el campo de stock en cada registro,
>>>>> reinicializando la variable a cero cuando encuentra un nuevo producto
>>>>> y
>>>>> continuar hasta terminar con el ultimo registro de la tabla. No me
>>>>> muestra
>>>>> error, pero tampoco me esta actualizando el campo de la tabla. que
>>>>> podria
>>>>> estar mal?. Espero vuestra ayuda.
>>>>>
>>>>> CREATE Or REPLACE FUNCTION SALDOSTOCK()
>>>>> RETURNS INTEGER
>>>>> AS $$
>>>>> DECLARE
>>>>> codi character(12);
>>>>> stk numeric (20,5);
>>>>> fila_item infkrdx%ROWTYPE;
>>>>> BEGIN
>>>>> stk := 0;
>>>>> for fila_item in SELECT * FROM INFKRDX LOOP
>>>>> codi=fila_item.codiprod;
>>>>> /*Acumulo el stock en variable stk */
>>>>> stk := case when fila_item.cod_trans='I' then
>>>>> stk+fila_item.cantidad
>>>>> else stk-fila_item.cantidad end;
>>>>> UPDATE INFKRDX SET ST_FISICO=stk where
>>>>> n_operac=fila_item.n_operac;
>>>>> if fila_item.codiprod<>INFKRDX.codi then stk := 0;
>>>>> end if;
>>>>> end loop;
>>>>> end;
>>>>> $$
>>>>> language 'plpgsql'
>>>>>
>>>>> Gracias
>>>>>
>>>>> *Felipe Araoz Ramos*
>>>>>
>>>>> RPM #941990605 / 941990605
>>>>> RPC 992760385
>>>>> NXT 822*9500 / 998229500
>>>>>
>>>>>
>>>>
>>>> -
>>>> Enviado a la lista de correo pgsql-es-ayuda (
>>>> pgsql-es-ayuda(at)postgresql(dot)org)
>>>> Para cambiar tu suscripción:
>>>> http://www.postgresql.org/mailpref/pgsql-es-ayuda
>>>>
>>>
>>>
>>
>

--
Raul Andres Gutierrez Alejo

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Felipe Araoz Ramos 2014-07-23 21:55:14 Re: Actualizar registros en una tabla
Previous Message Felipe Araoz Ramos 2014-07-23 13:15:12 Re: Actualizar registros en una tabla