Ayuda para Finalizar Proceso

27/04/2004 - 21:04 por Cesar Ochica | Informe spam
Tengo Un store que recibe tres parametros, realiza unas operaciones y
actualiza 3 campos en la tabla, como debo hacer para ejecutar ese Store
desde un comando SQL en un DTS.

Lo que necesito es por ejemplo que en el dts yo pueda leer la tabla y por
cada registro pasarle los tres campos.

Tengo lo siguiente, pero muestra error:
Use Mostrador

Select dbo.StoretresCampos Campo1, Campo2, Campo3 From Tabla_Trabajada

En el store tengo:
CREATE PROCEDURE MT_P08A (@Numero as decimal,@Tto as decimal,@IVA as
decimal) AS
Declare @Cred as Decimal
Declare @TmpTotal as Decimal
Declare @Total as Decimal

/****************************************/
/* Varables que debo enviar
Declare @Tto as decimal
Declare @IVA as decimal
Declare @Numero as decimal
Set @Numero1713
Set @Tto=(select mm07_Val from Mt_m07
where MM07_Nro=@Numero and (MM07_Cta like '11%') and MM07_DC='D')
Set @IVA=(select mm08_Iva from mt_m08
where MM08_Nro=@Numero)
***************************************/

Set @Cred=(select top 1 mm07_Val from mt_m07
where (MM07_Cta like '1305%') and MM07_DC='D' and MM07_Nro=@Numero)
if (@Cred is null or @Cred<=0) and (@Tto>0)
Begin
Set @TmpTotal=@Tto-@Iva
/* Return @TmpTotal */
end
else
begin
if @Cred is null or @Cred<=0
begin
Set @Cred=0
end
If @Tto is null
Begin
Set @Tto=0
end

Set @TmpTotal=(@Cred+@Tto)-@IVA
end
If @Cred is null
begin
set @Cred=0
end
Set @Total=(@Cred+@Tto)
update MT_M08 set MM08_Sub=@TmpTotal,MM08_Cre=@Cred,MM08_Tot=@Total
where MM08_Nro=@Numero

GO

Preguntas similare

Leer las respuestas

#1 Maximiliano D. A.
27/04/2004 - 22:21 | Informe spam
hola, no te recomiendo eso!! ya que es lento!! porque hacer registro a
registro? esto debe ser asi si o si? de ser asi porque no hacerlo en el
Cliente?


Salu2
Maxi

Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET

MSN:
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Cesar Ochica" escribió en el mensaje
news:%
Tengo Un store que recibe tres parametros, realiza unas operaciones y
actualiza 3 campos en la tabla, como debo hacer para ejecutar ese Store
desde un comando SQL en un DTS.

Lo que necesito es por ejemplo que en el dts yo pueda leer la tabla y por
cada registro pasarle los tres campos.

Tengo lo siguiente, pero muestra error:
Use Mostrador

Select dbo.StoretresCampos Campo1, Campo2, Campo3 From Tabla_Trabajada

En el store tengo:
CREATE PROCEDURE MT_P08A (@Numero as decimal,@Tto as decimal,@IVA as
decimal) AS
Declare @Cred as Decimal
Declare @TmpTotal as Decimal
Declare @Total as Decimal

/****************************************/
/* Varables que debo enviar
Declare @Tto as decimal
Declare @IVA as decimal
Declare @Numero as decimal
Set @Numero1713
Set @Tto=(select mm07_Val from Mt_m07
where MM07_Nro=@Numero and (MM07_Cta like '11%') and MM07_DC='D')
Set @IVA=(select mm08_Iva from mt_m08
where MM08_Nro=@Numero)
***************************************/

Set @Cred=(select top 1 mm07_Val from mt_m07
where (MM07_Cta like '1305%') and MM07_DC='D' and MM07_Nro=@Numero)
if (@Cred is null or @Cred<=0) and (@Tto>0)
Begin
Set @TmpTotal=@
/* Return @TmpTotal */
end
else
begin
if @Cred is null or @Cred<=0
begin
Set @Cred=0
end
If @Tto is null
Begin
Set @Tto=0
end

Set @TmpTotal=(@Cred+@Tto)
end
If @Cred is null
begin
set @Cred=0
end
Set @Total=(@Cred+@Tto)
update MT_M08 set MM08_Sub=@TmpTotal,MM08_Cre=@Cred,MM08_Tot=@Total
where MM08_Nro=@Numero

GO









Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.661 / Virus Database: 424 - Release Date: 19/04/2004
Respuesta Responder a este mensaje
#2 Cesar Ochica
28/04/2004 - 15:42 | Informe spam
Lo que ocurre es que debo actualizar unos campos de la tabla partiendo de la
informacion de otros campos en la misma tabla y unos calculos, el store que
te mostre lo hace pero como lo hice pide la llave de regitro a modificar, y
los valores de los que se depende.

Alguna idea??

Gracias
Respuesta Responder a este mensaje
#3 Maximiliano D. A.
28/04/2004 - 17:52 | Informe spam
Hola y todos esos calculos no se pueden hacer con un Update? no conozco ni
las tablas ni el Store, lo cual se hace complicado poder ayudarte mejor :(

Suerte


Salu2
Maxi

Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET

MSN:
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Cesar Ochica" escribió en el mensaje
news:Oani%
Lo que ocurre es que debo actualizar unos campos de la tabla partiendo de


la
informacion de otros campos en la misma tabla y unos calculos, el store


que
te mostre lo hace pero como lo hice pide la llave de regitro a modificar,


y
los valores de los que se depende.

Alguna idea??

Gracias







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.661 / Virus Database: 424 - Release Date: 20/04/2004
Respuesta Responder a este mensaje
#4 Cesar Ochica
28/04/2004 - 19:07 | Informe spam
Hola Maxi,

Intentare darme a entender un poco mejor:
Estoy desarrollando los DTS que van a actualizar la informacion del sistema,
dado que por razones ajenas la informacion se debe traer de un programa en
DOS.

Al subir la informacion, en este caso la informacion sobre la facturacion,
hay tres campos que debo calcular, como son El valor a Credito (depende de
la factura, el valor en la cuenta contable 1305),El total en la cuenta
contable 11 y con estas se validan varias conbinaciones (si no hay nada en
la 1305 o el la11...) y al fina obtengo tres nuevos valores :
Subtotal que es @TmpTotal,
Valor a credito @cred y
Total de la factura @Total
y debo actualizar los tres campos en la tabla. mi problema esta en que como
entre las validaciones que hago esta traer el valor de la tabla de esa
factura en especifico. por ello pedia una manera de hacer algo como un
select a la tabla y que a medida que ese select se ejecutara enviara al
store los datos de la factura actual y asi en el store se actualizaria ese
registro con los tres valores faltantes.


CREATE PROCEDURE MT_P08A (@Numero as decimal,@Tto as decimal,@IVA as
decimal) AS
Declare @Cred as Decimal
Declare @TmpTotal as Decimal
Declare @Total as Decimal

Set @Cred=(select top 1 mm07_Val from mt_m07
where (MM07_Cta like '1305%') and MM07_DC='D' and MM07_Nro=@Numero)
if (@Cred is null or @Cred<=0) and (@Tto>0)
Begin
Set @TmpTotal=@
/* Return @TmpTotal */
end
else
begin
if @Cred is null or @Cred<=0
begin
Set @Cred=0
end
If @Tto is null
Begin
Set @Tto=0
end

Set @TmpTotal=(@Cred+@Tto)
end
If @Cred is null
begin
set @Cred=0
end
Set @Total=(@Cred+@Tto)
Update Mt_M08 Set MM08_Sub=@TmpTotal,MM08_Cre=@Cred,MM08_Tot=@Total
Where MM08_Nro=@Numero
GO
Respuesta Responder a este mensaje
#5 Cesar Ochica
28/04/2004 - 20:58 | Informe spam
Tienes razon Gracias
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida