Esto es lo que quiero hacer Gracias amigos

05/03/2004 - 17:04 por Yovanny Rojas | Informe spam
Bueno

Lo que quiero es cuando modifique el campo peso_seco aumente o disminuya el
balance_seco de la misma tabla.

El campo balance_seco sera tambien aumentado o disminuido por otras tablas
tambien.

Gracia por tu ayuda amigo
Yovanny Rojas



"Maximiliano D. A." <maxi_accotto[arroba]speedy[.]com[.]ar> wrote in message
news:%23oeocRsAEHA.3456@TK2MSFTNGP09.phx.gbl...

Pero tienes mal el trigger, estas pensando mal la cosa!! porque no


escribis

que buscas del trigger y te ayudamos con la respuesta.

Gracias


Salu2
Maxi
Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET
[Maxi_accotto[arroba]speedy[punto]com[punto]ar
MSN: Maxi_adrogue@msn.com


"Yovanny Rojas" <yovannyrojas@hotmail.com> escribió en el mensaje
news:utSnKMsAEHA.4080@TK2MSFTNGP09.phx.gbl...
> Aquie lanza el error dice q no estan las columnas pes y orden pero


cuando

> hago una operacion desde otra tabla q afecta la tabla de pacas
>
> update pacas Set balanceseco =isnull(pac_balanceseco,0) + pes
> from #i Nuevas inner join pacas
> on Nuevas.orden=pacas.orden
>
> dice :
> [microsoft][odbc slq server driver]]sql server]invalid column name "pes"
> [microsoft][odbc slq server driver]]sql server]invalid column name


"orden"

>
> pero pes esta definido en el select de arriba y orden estan es un campo


de

> la tabla de pacas
>
>
> "Maximiliano D. A." <maxi_accotto[arroba]speedy[.]com[.]ar> wrote in
message
> news:u8iuz9rAEHA.3988@tk2msftngp13.phx.gbl...
> > a ver! vayamos por partes
> >
> > 1) empeza a dividir el Trigger en porciones, no intentes en uno solo
poner
> > todo.
> >
> > Vos por lo que veo queres actualizar una cabecera pero de la misma


tabla

> con
> > resgistros que no existen al momento de la insersion!! esto no me


queda

> > claro para nada.
> >
> > Luego veo que inertas en una tabla temporal, para que lo haces si ya
tenes
> > la inserted y la deleted?
> >
> > Otra cosa, si queres que el trigger cuando vos hagas un insert


suponete

> > sobre esta tabla haga algo en lugar del insert, debes utilizar


Triggers

En
> > lugar de (Instead OF)!!
> >
> > Explicate un poco mejor que buscas con ese trigger porque lo veo
bastante
> > mal :(
> >
> > Suerte
> >
> >
> >
> > Salu2
> > Maxi
> > Buenos Aires Argentina
> > Desarrollador Microsoft 3 Estrellas .NET
> > [Maxi_accotto[arroba]speedy[punto]com[punto]ar
> > MSN: Maxi_adrogue@msn.com
> >
> >
> > "Yovanny Rojas" <yovannyrojas@hotmail.com> escribió en el mensaje
> > news:%23vZ560rAEHA.1420@TK2MSFTNGP11.phx.gbl...
> > > Ok
> > >
> > > La estructura de la tabla es la siguiente
> > > Tabla de Pacas
> > > partida char 10
> > > orden char 10
> > > pesoseco float
> > > balanceseco float
> > > La Clave primaria es partida y paca. Lo extraño es que si agrego una
> nueva
> > > linea en la tabla funciona bien...
> > >
> > > Este es codigo se trigger
> > > CREATE trigger trg_pac_balseco on dbo.Pacas
> > > for insert,delete,update
> > > as
> > > begin
> > > select orden, pesoseco as pes
> > > into #i
> > > from inserted
> > >
> > > update pacas Set balanceseco =isnull (balanceseco,0) + pes
> > > from #i Nuevas inner join pacas
> > > on Nuevas.orden=pacas.orden
> > >
> > >
> > > insert into pacas (orden,balanceseco)
> > > select nuevas.orden, pes
> > > from #i Nuevas left join pacas
> > > on Nuevas.orden=pacas.orden
> > > where pacas.orden is null
> > >
> > > select orden, pesoseco as pes
> > > into #d
> > > from deleted
> > >
> > > update pacas Set balanceseco=isnull(balanceseco,0) - pes
> > > from #d Viejos inner join pacas
> > > on Viejos.orden=pacas.orden
> > >
> > > end
> > >
> > >
> > > "Maximiliano D. A." <maxi_accotto[arroba]speedy[.]com[.]ar> wrote in
> > message
> > > news:%23hxFRprAEHA.2036@TK2MSFTNGP12.phx.gbl...
> > > > Hola!! si nos pasaras la estructura de las tablas y el codigo del
> > Trigger
> > > > seria mucho mas facil poder darte una mano.
> > > >
> > > > Suerte
> > > >
> > > >
> > > > Salu2
> > > > Maxi
> > > > Buenos Aires Argentina
> > > > Desarrollador Microsoft 3 Estrellas .NET
> > > > [Maxi_accotto[arroba]speedy[punto]com[punto]ar
> > > > MSN: Maxi_adrogue@msn.com
> > > >
> > > >
> > > > "Yovanny Rojas" <yovannyrojas@hotmail.com> escribió en el mensaje
> > > > news:ucGFOdrAEHA.2448@TK2MSFTNGP12.phx.gbl...
> > > > > Hola amigos
> > > > >
> > > > > Estoy desarrollando un proyecto con sql server 2000 tengo un
trigger
> q
> > > se
> > > > > ejecunta en la misma tabla.
> > > > >
> > > > > Ejemplo tengo una campo cantidad y uno balance en una misma


tabla

la
> > > > > cantidad actualiza en campo balance...
> > > > >
> > > > > ahora bien este trigger en ocasiones me lanza error al hacer
> cualquier
> > > > > operacion en la tabla crear,modifcar o borrar.
> > > > >
> > > > > Si entro un registro nuevo en la tabla desde ese momento hacia
> delante
> > > no
> > > > me
> > > > > lanza error
> > > > >
> > > > > El error que lanza es como si las columnas no existen en las
> tablas..
> > > > >
> > > > > Si me pueden decir algo
> > > > > Gracias..
> > > > > Yovanny Rojas
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > > > Outgoing mail is certified Virus Free.
> > > > Checked by AVG anti-virus system (http://www.grisoft.com).
> > > > Version: 6.0.593 / Virus Database: 376 - Release Date: 21/02/2004
> > > >
> > > >
> > >
> > >
> >
> >
> >
> > Outgoing mail is certified Virus Free.
> > Checked by AVG anti-virus system (http://www.grisoft.com).
> > Version: 6.0.593 / Virus Database: 376 - Release Date: 21/02/2004
> >
> >
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.593 / Virus Database: 376 - Release Date: 21/02/2004


 

Leer las respuestas

#1 Maximiliano D. A.
05/03/2004 - 20:09 | Informe spam
Si pero no entiendo si en esa misma tabla tenes mas de un registro igual eso
es lo que no entiendo, o si solo hay un solo registro.

Hacemos una cosa, escribi bien la formula de como lo queres hacer, olvidate
del SQL y la pc, pensa como lo harias a mano y nos comentas eso si?

Bye


Salu2
Maxi
Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET
[Maxi_accotto[arroba]speedy[punto]com[punto]ar
MSN:


"Yovanny Rojas" escribió en el mensaje
news:
Mostrar la cita
el
Mostrar la cita
message
Mostrar la cita
"pes"
Mostrar la cita
campo
Mostrar la cita
una
Mostrar la cita
in
Mostrar la cita
del
Mostrar la cita
mensaje
Mostrar la cita
21/02/2004
Mostrar la cita
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.593 / Virus Database: 376 - Release Date: 21/02/2004

Preguntas similares