ASP me duplica los registros

15/11/2004 - 12:49 por Isaias Mercado M | Informe spam
Hola a Todos,

Tengo un problema y es que cada que ves que
inserto desde mi pagina web un registro, en la BD lo
inserta DOS veces

el procedimineto almacenado al que llamo es :

CREATE PROCEDURE sp_adicionar_Pqr_Head
(
@Codigo_PQR int output
,@idCliente int
,@Fecha_ingreso datetime
,@Forma_ingreso int
,@Usuario_ingreso int
,@Motivo int
,@Submotivo int
,@Area int
,@Producto int
,@Localidad int
,@Tipo_PQR int
,@Observaciones varchar(100)
,@Estado_Caso int
,@Text1 varchar(30)
,@Tipo_Cliente int
,@Nombre_Usuario varchar(50)
,@EMail varchar(30)
,@Usuario_Caso int
,@Empresa int
,@Datos varchar(100)
,@Fax varchar(20)
,@Mobile varchar(20)
,@Usuario_Inicial_Caso int
,@TipoIngreso varchar(1)
,@TipoCliente varchar(1)

)
AS
insert into Pqr_Head (
idCliente
,Fecha_ingreso
,Forma_ingreso
,Usuario_ingreso
,Motivo
,Submotivo
,Area
,Producto
,Localidad
,Tipo_PQR
,Observaciones
,Estado_Caso
,Text1
,Tipo_Cliente
,Nombre_Usuario
,EMail
,Usuario_Caso
,Empresa
,Datos
,Fax
,Mobile
,Usuario_Inicial_Caso
,Tipo_Ingreso
,Tipo_Cliente_PQR
)
values(
@idCliente
,@Fecha_ingreso
,@Forma_ingreso
,@Usuario_ingreso
,@Motivo
,@Submotivo
,@Area
,@Producto
,@Localidad
,@Tipo_PQR
,@Observaciones
,@Estado_Caso
,@Text1
,@Tipo_Cliente
,@Nombre_Usuario
,@EMail
,@Usuario_Caso
,@Empresa
,@Datos
,@Fax
,@Mobile
,@Usuario_Inicial_Caso
,@TipoIngreso
,@TipoCliente
)
select @Codigo_PQR = @@identity
GO



las estructura de la tabla es :
if exists (select * from dbo.sysobjects where id =
object_id(N'[dbo].[FK_Pqr_Dato_Adjunto_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Dato_Adjunto] DROP CONSTRAINT
FK_Pqr_Dato_Adjunto_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id =
object_id(N'[dbo].[FK_Pqr_Det_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Det] DROP CONSTRAINT
FK_Pqr_Det_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id =
object_id(N'[dbo].[FK_Pqr_Llamada_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Llamada] DROP CONSTRAINT
FK_Pqr_Llamada_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id =
object_id(N'[dbo].[Pqr_Head]') and OBJECTPROPERTY(id,
N'IsUserTable') = 1)
drop table [dbo].[Pqr_Head]
GO

CREATE TABLE [dbo].[Pqr_Head] (
[Codigo_PQR] [numeric](18, 0) IDENTITY (0, 1) NOT
NULL ,
[idCliente] [numeric](18, 0) NOT NULL ,
[Fecha_ingreso] [datetime] NOT NULL ,
[Forma_ingreso] [numeric](18, 0) NOT NULL ,
[Usuario_ingreso] [numeric](18, 0) NOT NULL ,
[Motivo] [numeric](18, 0) NOT NULL ,
[Submotivo] [numeric](18, 0) NOT NULL ,
[Area] [numeric](18, 0) NOT NULL ,
[Producto] [numeric](18, 0) NULL ,
[Localidad] [numeric](18, 0) NOT NULL ,
[Tipo_PQR] [numeric](18, 0) NOT NULL ,
[Observaciones] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Estado_Caso] [numeric](18, 0) NOT NULL ,
[Text1] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente] [numeric](18, 0) NOT NULL ,
[Nombre_Usuario] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[EMail] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Caso] [numeric](18, 0) NOT NULL ,
[Empresa] [numeric](18, 0) NOT NULL ,
[Datos] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Fax] [varchar] (50) COLLATE Modern_Spanish_CI_AS
NULL ,
[Mobile] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Inicial_Caso] [numeric](18, 0) NOT NULL ,
[Tipo_Ingreso] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente_PQR] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL
) ON [PRIMARY]
GO



Estoy trabajando en ASP con VBscript e IIS 5.0 el
SO en que esta corriendo es Windows 2000 SErver con
SQL 2000

Preguntas similare

Leer las respuestas

#1 Adrian D. Garcia
15/11/2004 - 13:06 | Informe spam
Hola,
Por lo que he visto en el procedimiento almacenado y en la estructura de la
tabla esta correcto.
La unica forma en que se puede producir una doble insercion es:
a) Se llama al procedimiento almacenado 2 veces desde la pagina ASP.
Verifica el codigo ADO, ve si la pagina se esta llamando 2 veces, analiza si
esta repetido el codigo de invocacion del procedimiento almacenado en varias
partes de la pagina.
b) Verifica si la tabla no tiene un disparador/trigger de insert asociado a
la misma que este insertando los datos nuevamente sobre la misma tabla
(Quizas algun esquema de auditoria mal armado?)

Saludos
Adrian D. Garcia
NDSoft


"Isaias Mercado M" wrote in message
news:09f101c4cb09$330c8820$
Hola a Todos,

Tengo un problema y es que cada que ves que
inserto desde mi pagina web un registro, en la BD lo
inserta DOS veces

el procedimineto almacenado al que llamo es :

CREATE PROCEDURE sp_adicionar_Pqr_Head
(
@Codigo_PQR int output
,@idCliente int
,@Fecha_ingreso datetime
,@Forma_ingreso int
,@Usuario_ingreso int
,@Motivo int
,@Submotivo int
,@Area int
,@Producto int
,@Localidad int
,@Tipo_PQR int
,@Observaciones varchar(100)
,@Estado_Caso int
,@Text1 varchar(30)
,@Tipo_Cliente int
,@Nombre_Usuario varchar(50)
,@EMail varchar(30)
,@Usuario_Caso int
,@Empresa int
,@Datos varchar(100)
,@Fax varchar(20)
,@Mobile varchar(20)
,@Usuario_Inicial_Caso int
,@TipoIngreso varchar(1)
,@TipoCliente varchar(1)

)
AS
insert into Pqr_Head (
idCliente
,Fecha_ingreso
,Forma_ingreso
,Usuario_ingreso
,Motivo
,Submotivo
,Area
,Producto
,Localidad
,Tipo_PQR
,Observaciones
,Estado_Caso
,Text1
,Tipo_Cliente
,Nombre_Usuario
,EMail
,Usuario_Caso
,Empresa
,Datos
,Fax
,Mobile
,Usuario_Inicial_Caso
,Tipo_Ingreso
,Tipo_Cliente_PQR
)
values(
@idCliente
,@Fecha_ingreso
,@Forma_ingreso
,@Usuario_ingreso
,@Motivo
,@Submotivo
,@Area
,@Producto
,@Localidad
,@Tipo_PQR
,@Observaciones
,@Estado_Caso
,@Text1
,@Tipo_Cliente
,@Nombre_Usuario
,@EMail
,@Usuario_Caso
,@Empresa
,@Datos
,@Fax
,@Mobile
,@Usuario_Inicial_Caso
,@TipoIngreso
,@TipoCliente
)
select @Codigo_PQR = @@identity
GO



las estructura de la tabla es :
if exists (select * from dbo.sysobjects where id > object_id(N'[dbo].[FK_Pqr_Dato_Adjunto_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Dato_Adjunto] DROP CONSTRAINT
FK_Pqr_Dato_Adjunto_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id > object_id(N'[dbo].[FK_Pqr_Det_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Det] DROP CONSTRAINT
FK_Pqr_Det_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id > object_id(N'[dbo].[FK_Pqr_Llamada_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Llamada] DROP CONSTRAINT
FK_Pqr_Llamada_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id > object_id(N'[dbo].[Pqr_Head]') and OBJECTPROPERTY(id,
N'IsUserTable') = 1)
drop table [dbo].[Pqr_Head]
GO

CREATE TABLE [dbo].[Pqr_Head] (
[Codigo_PQR] [numeric](18, 0) IDENTITY (0, 1) NOT
NULL ,
[idCliente] [numeric](18, 0) NOT NULL ,
[Fecha_ingreso] [datetime] NOT NULL ,
[Forma_ingreso] [numeric](18, 0) NOT NULL ,
[Usuario_ingreso] [numeric](18, 0) NOT NULL ,
[Motivo] [numeric](18, 0) NOT NULL ,
[Submotivo] [numeric](18, 0) NOT NULL ,
[Area] [numeric](18, 0) NOT NULL ,
[Producto] [numeric](18, 0) NULL ,
[Localidad] [numeric](18, 0) NOT NULL ,
[Tipo_PQR] [numeric](18, 0) NOT NULL ,
[Observaciones] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Estado_Caso] [numeric](18, 0) NOT NULL ,
[Text1] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente] [numeric](18, 0) NOT NULL ,
[Nombre_Usuario] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[EMail] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Caso] [numeric](18, 0) NOT NULL ,
[Empresa] [numeric](18, 0) NOT NULL ,
[Datos] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Fax] [varchar] (50) COLLATE Modern_Spanish_CI_AS
NULL ,
[Mobile] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Inicial_Caso] [numeric](18, 0) NOT NULL ,
[Tipo_Ingreso] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente_PQR] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL
) ON [PRIMARY]
GO



Estoy trabajando en ASP con VBscript e IIS 5.0 el
SO en que esta corriendo es Windows 2000 SErver con
SQL 2000




Respuesta Responder a este mensaje
#2 Isaias Mercado
15/11/2004 - 14:55 | Informe spam
ya Hize lo que me emncionaste pero Nada ...

Bore las tablas las volvi a crear.
No hay trigger en la tabla
no hay doble llamado en la pagina de ASP


la diferencia entre los dos registros repetidos es
un segundo

Que podra ser ?


Isaias



Hola,
Por lo que he visto en el procedimiento almacenado y en


la estructura de la
tabla esta correcto.
La unica forma en que se puede producir una doble


insercion es:
a) Se llama al procedimiento almacenado 2 veces desde la


pagina ASP.
Verifica el codigo ADO, ve si la pagina se esta llamando


2 veces, analiza si
esta repetido el codigo de invocacion del procedimiento


almacenado en varias
partes de la pagina.
b) Verifica si la tabla no tiene un disparador/trigger de


insert asociado a
la misma que este insertando los datos nuevamente sobre


la misma tabla
(Quizas algun esquema de auditoria mal armado?)

Saludos
Adrian D. Garcia
NDSoft


"Isaias Mercado M"


wrote in message
news:09f101c4cb09$330c8820$
Hola a Todos,

Tengo un problema y es que cada que ves que
inserto desde mi pagina web un registro, en la BD




lo
inserta DOS veces

el procedimineto almacenado al que llamo es :

CREATE PROCEDURE sp_adicionar_Pqr_Head
(
@Codigo_PQR int output
,@idCliente int
,@Fecha_ingreso datetime
,@Forma_ingreso int
,@Usuario_ingreso int
,@Motivo int
,@Submotivo int
,@Area int
,@Producto int
,@Localidad int
,@Tipo_PQR int
,@Observaciones varchar(100)
,@Estado_Caso int
,@Text1 varchar(30)
,@Tipo_Cliente int
,@Nombre_Usuario varchar(50)
,@EMail varchar(30)
,@Usuario_Caso int
,@Empresa int
,@Datos varchar(100)
,@Fax varchar(20)
,@Mobile varchar(20)
,@Usuario_Inicial_Caso int
,@TipoIngreso varchar(1)
,@TipoCliente varchar(1)

)
AS
insert into Pqr_Head (
idCliente
,Fecha_ingreso
,Forma_ingreso
,Usuario_ingreso
,Motivo
,Submotivo
,Area
,Producto
,Localidad
,Tipo_PQR
,Observaciones
,Estado_Caso
,Text1
,Tipo_Cliente
,Nombre_Usuario
,EMail
,Usuario_Caso
,Empresa
,Datos
,Fax
,Mobile
,Usuario_Inicial_Caso
,Tipo_Ingreso
,Tipo_Cliente_PQR
)
values(
@idCliente
,@Fecha_ingreso
,@Forma_ingreso
,@Usuario_ingreso
,@Motivo
,@Submotivo
,@Area
,@Producto
,@Localidad
,@Tipo_PQR
,@Observaciones
,@Estado_Caso
,@Text1
,@Tipo_Cliente
,@Nombre_Usuario
,@EMail
,@Usuario_Caso
,@Empresa
,@Datos
,@Fax
,@Mobile
,@Usuario_Inicial_Caso
,@TipoIngreso
,@TipoCliente
)
select @Codigo_PQR = @@identity
GO



las estructura de la tabla es :
if exists (select * from dbo.sysobjects where id >> object_id(N'[dbo].[FK_Pqr_Dato_Adjunto_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Dato_Adjunto] DROP CONSTRAINT
FK_Pqr_Dato_Adjunto_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id >> object_id(N'[dbo].[FK_Pqr_Det_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Det] DROP CONSTRAINT
FK_Pqr_Det_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id >> object_id(N'[dbo].[FK_Pqr_Llamada_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Llamada] DROP CONSTRAINT
FK_Pqr_Llamada_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id >> object_id(N'[dbo].[Pqr_Head]') and OBJECTPROPERTY(id,
N'IsUserTable') = 1)
drop table [dbo].[Pqr_Head]
GO

CREATE TABLE [dbo].[Pqr_Head] (
[Codigo_PQR] [numeric](18, 0) IDENTITY (0, 1) NOT
NULL ,
[idCliente] [numeric](18, 0) NOT NULL ,
[Fecha_ingreso] [datetime] NOT NULL ,
[Forma_ingreso] [numeric](18, 0) NOT NULL ,
[Usuario_ingreso] [numeric](18, 0) NOT NULL ,
[Motivo] [numeric](18, 0) NOT NULL ,
[Submotivo] [numeric](18, 0) NOT NULL ,
[Area] [numeric](18, 0) NOT NULL ,
[Producto] [numeric](18, 0) NULL ,
[Localidad] [numeric](18, 0) NOT NULL ,
[Tipo_PQR] [numeric](18, 0) NOT NULL ,
[Observaciones] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Estado_Caso] [numeric](18, 0) NOT NULL ,
[Text1] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente] [numeric](18, 0) NOT NULL ,
[Nombre_Usuario] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[EMail] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Caso] [numeric](18, 0) NOT NULL ,
[Empresa] [numeric](18, 0) NOT NULL ,
[Datos] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Fax] [varchar] (50) COLLATE Modern_Spanish_CI_AS
NULL ,
[Mobile] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Inicial_Caso] [numeric](18, 0) NOT NULL ,
[Tipo_Ingreso] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente_PQR] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL
) ON [PRIMARY]
GO



Estoy trabajando en ASP con VBscript e IIS 5.0 el
SO en que esta corriendo es Windows 2000 SErver con
SQL 2000








.

Respuesta Responder a este mensaje
#3 Isaias Mercado
15/11/2004 - 15:02 | Informe spam
Les comento algo que observe ...

Cuando ingreso por medio de la pagina ASP el
registro me lo duplica, ya estando en la pagina de la
insercion le doy Click derecho actualizar pagina y NO me
lo duplica ...


Que podra ser ?


Hola a Todos,

Tengo un problema y es que cada que ves que
inserto desde mi pagina web un registro, en la BD lo
inserta DOS veces

el procedimineto almacenado al que llamo es :

CREATE PROCEDURE sp_adicionar_Pqr_Head
(
@Codigo_PQR int output
,@idCliente int
,@Fecha_ingreso datetime
,@Forma_ingreso int
,@Usuario_ingreso int
,@Motivo int
,@Submotivo int
,@Area int
,@Producto int
,@Localidad int
,@Tipo_PQR int
,@Observaciones varchar(100)
,@Estado_Caso int
,@Text1 varchar(30)
,@Tipo_Cliente int
,@Nombre_Usuario varchar(50)
,@EMail varchar(30)
,@Usuario_Caso int
,@Empresa int
,@Datos varchar(100)
,@Fax varchar(20)
,@Mobile varchar(20)
,@Usuario_Inicial_Caso int
,@TipoIngreso varchar(1)
,@TipoCliente varchar(1)

)
AS
insert into Pqr_Head (
idCliente
,Fecha_ingreso
,Forma_ingreso
,Usuario_ingreso
,Motivo
,Submotivo
,Area
,Producto
,Localidad
,Tipo_PQR
,Observaciones
,Estado_Caso
,Text1
,Tipo_Cliente
,Nombre_Usuario
,EMail
,Usuario_Caso
,Empresa
,Datos
,Fax
,Mobile
,Usuario_Inicial_Caso
,Tipo_Ingreso
,Tipo_Cliente_PQR
)
values(
@idCliente
,@Fecha_ingreso
,@Forma_ingreso
,@Usuario_ingreso
,@Motivo
,@Submotivo
,@Area
,@Producto
,@Localidad
,@Tipo_PQR
,@Observaciones
,@Estado_Caso
,@Text1
,@Tipo_Cliente
,@Nombre_Usuario
,@EMail
,@Usuario_Caso
,@Empresa
,@Datos
,@Fax
,@Mobile
,@Usuario_Inicial_Caso
,@TipoIngreso
,@TipoCliente
)
select @Codigo_PQR = @@identity
GO



las estructura de la tabla es :
if exists (select * from dbo.sysobjects where id =
object_id(N'[dbo].[FK_Pqr_Dato_Adjunto_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Dato_Adjunto] DROP CONSTRAINT
FK_Pqr_Dato_Adjunto_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id =
object_id(N'[dbo].[FK_Pqr_Det_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Det] DROP CONSTRAINT
FK_Pqr_Det_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id =
object_id(N'[dbo].[FK_Pqr_Llamada_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Llamada] DROP CONSTRAINT
FK_Pqr_Llamada_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id =
object_id(N'[dbo].[Pqr_Head]') and OBJECTPROPERTY(id,
N'IsUserTable') = 1)
drop table [dbo].[Pqr_Head]
GO

CREATE TABLE [dbo].[Pqr_Head] (
[Codigo_PQR] [numeric](18, 0) IDENTITY (0, 1) NOT
NULL ,
[idCliente] [numeric](18, 0) NOT NULL ,
[Fecha_ingreso] [datetime] NOT NULL ,
[Forma_ingreso] [numeric](18, 0) NOT NULL ,
[Usuario_ingreso] [numeric](18, 0) NOT NULL ,
[Motivo] [numeric](18, 0) NOT NULL ,
[Submotivo] [numeric](18, 0) NOT NULL ,
[Area] [numeric](18, 0) NOT NULL ,
[Producto] [numeric](18, 0) NULL ,
[Localidad] [numeric](18, 0) NOT NULL ,
[Tipo_PQR] [numeric](18, 0) NOT NULL ,
[Observaciones] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Estado_Caso] [numeric](18, 0) NOT NULL ,
[Text1] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente] [numeric](18, 0) NOT NULL ,
[Nombre_Usuario] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[EMail] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Caso] [numeric](18, 0) NOT NULL ,
[Empresa] [numeric](18, 0) NOT NULL ,
[Datos] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Fax] [varchar] (50) COLLATE Modern_Spanish_CI_AS
NULL ,
[Mobile] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Inicial_Caso] [numeric](18, 0) NOT NULL ,
[Tipo_Ingreso] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente_PQR] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL
) ON [PRIMARY]
GO



Estoy trabajando en ASP con VBscript e IIS 5.0 el
SO en que esta corriendo es Windows 2000 SErver con
SQL 2000




.

Respuesta Responder a este mensaje
#4 Adrian D. Garcia
15/11/2004 - 15:36 | Informe spam
1 segundo? en ese caso es seguro que el codigo de tu app. ASP esta
disparando 2 veces el procedimiento almacenado.

Para determinar el problema has lo siguiente:

1) Ejecuta el Profiler/Analizador y ejecuta la traza por omision. Luego
navega por tu pagina ASP y despues verifica cuantas veces se lanza el
procedimiento almacenado. Mi intuicion me dice que encontraras 2 llamadas.

2) Habilita el loging del IIS, y verifica cuantas veces se llama a la pagina
y a que paginas (algun Server.Transfer? Algun Response.Redirect?) y que
otras paginas estan involucradas

"Isaias Mercado" wrote in message
news:0c0301c4cb1a$d12f6930$
ya Hize lo que me emncionaste pero Nada ...

Bore las tablas las volvi a crear.
No hay trigger en la tabla
no hay doble llamado en la pagina de ASP


la diferencia entre los dos registros repetidos es
un segundo

Que podra ser ?


Isaias



Hola,
Por lo que he visto en el procedimiento almacenado y en


la estructura de la
tabla esta correcto.
La unica forma en que se puede producir una doble


insercion es:
a) Se llama al procedimiento almacenado 2 veces desde la


pagina ASP.
Verifica el codigo ADO, ve si la pagina se esta llamando


2 veces, analiza si
esta repetido el codigo de invocacion del procedimiento


almacenado en varias
partes de la pagina.
b) Verifica si la tabla no tiene un disparador/trigger de


insert asociado a
la misma que este insertando los datos nuevamente sobre


la misma tabla
(Quizas algun esquema de auditoria mal armado?)

Saludos
Adrian D. Garcia
NDSoft


"Isaias Mercado M"


wrote in message
news:09f101c4cb09$330c8820$
Hola a Todos,

Tengo un problema y es que cada que ves que
inserto desde mi pagina web un registro, en la BD




lo
inserta DOS veces

el procedimineto almacenado al que llamo es :

CREATE PROCEDURE sp_adicionar_Pqr_Head
(
@Codigo_PQR int output
,@idCliente int
,@Fecha_ingreso datetime
,@Forma_ingreso int
,@Usuario_ingreso int
,@Motivo int
,@Submotivo int
,@Area int
,@Producto int
,@Localidad int
,@Tipo_PQR int
,@Observaciones varchar(100)
,@Estado_Caso int
,@Text1 varchar(30)
,@Tipo_Cliente int
,@Nombre_Usuario varchar(50)
,@EMail varchar(30)
,@Usuario_Caso int
,@Empresa int
,@Datos varchar(100)
,@Fax varchar(20)
,@Mobile varchar(20)
,@Usuario_Inicial_Caso int
,@TipoIngreso varchar(1)
,@TipoCliente varchar(1)

)
AS
insert into Pqr_Head (
idCliente
,Fecha_ingreso
,Forma_ingreso
,Usuario_ingreso
,Motivo
,Submotivo
,Area
,Producto
,Localidad
,Tipo_PQR
,Observaciones
,Estado_Caso
,Text1
,Tipo_Cliente
,Nombre_Usuario
,EMail
,Usuario_Caso
,Empresa
,Datos
,Fax
,Mobile
,Usuario_Inicial_Caso
,Tipo_Ingreso
,Tipo_Cliente_PQR
)
values(
@idCliente
,@Fecha_ingreso
,@Forma_ingreso
,@Usuario_ingreso
,@Motivo
,@Submotivo
,@Area
,@Producto
,@Localidad
,@Tipo_PQR
,@Observaciones
,@Estado_Caso
,@Text1
,@Tipo_Cliente
,@Nombre_Usuario
,@EMail
,@Usuario_Caso
,@Empresa
,@Datos
,@Fax
,@Mobile
,@Usuario_Inicial_Caso
,@TipoIngreso
,@TipoCliente
)
select @Codigo_PQR = @@identity
GO



las estructura de la tabla es :
if exists (select * from dbo.sysobjects where id >>> object_id(N'[dbo].[FK_Pqr_Dato_Adjunto_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Dato_Adjunto] DROP CONSTRAINT
FK_Pqr_Dato_Adjunto_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id >>> object_id(N'[dbo].[FK_Pqr_Det_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Det] DROP CONSTRAINT
FK_Pqr_Det_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id >>> object_id(N'[dbo].[FK_Pqr_Llamada_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Llamada] DROP CONSTRAINT
FK_Pqr_Llamada_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id >>> object_id(N'[dbo].[Pqr_Head]') and OBJECTPROPERTY(id,
N'IsUserTable') = 1)
drop table [dbo].[Pqr_Head]
GO

CREATE TABLE [dbo].[Pqr_Head] (
[Codigo_PQR] [numeric](18, 0) IDENTITY (0, 1) NOT
NULL ,
[idCliente] [numeric](18, 0) NOT NULL ,
[Fecha_ingreso] [datetime] NOT NULL ,
[Forma_ingreso] [numeric](18, 0) NOT NULL ,
[Usuario_ingreso] [numeric](18, 0) NOT NULL ,
[Motivo] [numeric](18, 0) NOT NULL ,
[Submotivo] [numeric](18, 0) NOT NULL ,
[Area] [numeric](18, 0) NOT NULL ,
[Producto] [numeric](18, 0) NULL ,
[Localidad] [numeric](18, 0) NOT NULL ,
[Tipo_PQR] [numeric](18, 0) NOT NULL ,
[Observaciones] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Estado_Caso] [numeric](18, 0) NOT NULL ,
[Text1] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente] [numeric](18, 0) NOT NULL ,
[Nombre_Usuario] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[EMail] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Caso] [numeric](18, 0) NOT NULL ,
[Empresa] [numeric](18, 0) NOT NULL ,
[Datos] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Fax] [varchar] (50) COLLATE Modern_Spanish_CI_AS
NULL ,
[Mobile] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Inicial_Caso] [numeric](18, 0) NOT NULL ,
[Tipo_Ingreso] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente_PQR] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL
) ON [PRIMARY]
GO



Estoy trabajando en ASP con VBscript e IIS 5.0 el
SO en que esta corriendo es Windows 2000 SErver con
SQL 2000








.

Respuesta Responder a este mensaje
#5 Isaias Mercado
15/11/2004 - 16:55 | Informe spam
Adrian Tienes algun Messeger para contactarte ...

Ayudame Please

Isaias

1 segundo? en ese caso es seguro que el codigo de tu app.


ASP esta
disparando 2 veces el procedimiento almacenado.

Para determinar el problema has lo siguiente:

1) Ejecuta el Profiler/Analizador y ejecuta la traza por


omision. Luego
navega por tu pagina ASP y despues verifica cuantas veces


se lanza el
procedimiento almacenado. Mi intuicion me dice que


encontraras 2 llamadas.

2) Habilita el loging del IIS, y verifica cuantas veces


se llama a la pagina
y a que paginas (algun Server.Transfer? Algun


Response.Redirect?) y que
otras paginas estan involucradas

"Isaias Mercado"


wrote in message
news:0c0301c4cb1a$d12f6930$
ya Hize lo que me emncionaste pero Nada ...

Bore las tablas las volvi a crear.
No hay trigger en la tabla
no hay doble llamado en la pagina de ASP


la diferencia entre los dos registros repetidos es
un segundo

Que podra ser ?


Isaias



Hola,
Por lo que he visto en el procedimiento almacenado y en


la estructura de la
tabla esta correcto.
La unica forma en que se puede producir una doble


insercion es:
a) Se llama al procedimiento almacenado 2 veces desde la


pagina ASP.
Verifica el codigo ADO, ve si la pagina se esta llamando


2 veces, analiza si
esta repetido el codigo de invocacion del procedimiento


almacenado en varias
partes de la pagina.
b) Verifica si la tabla no tiene un disparador/trigger






de
insert asociado a
la misma que este insertando los datos nuevamente sobre


la misma tabla
(Quizas algun esquema de auditoria mal armado?)

Saludos
Adrian D. Garcia
NDSoft


"Isaias Mercado M"


wrote in message
news:09f101c4cb09$330c8820$
Hola a Todos,

Tengo un problema y es que cada que ves que
inserto desde mi pagina web un registro, en la BD




lo
inserta DOS veces

el procedimineto almacenado al que llamo es :

CREATE PROCEDURE sp_adicionar_Pqr_Head
(
@Codigo_PQR int output
,@idCliente int
,@Fecha_ingreso datetime
,@Forma_ingreso int
,@Usuario_ingreso int
,@Motivo int
,@Submotivo int
,@Area int
,@Producto int
,@Localidad int
,@Tipo_PQR int
,@Observaciones varchar(100)
,@Estado_Caso int
,@Text1 varchar(30)
,@Tipo_Cliente int
,@Nombre_Usuario varchar(50)
,@EMail varchar(30)
,@Usuario_Caso int
,@Empresa int
,@Datos varchar(100)
,@Fax varchar(20)
,@Mobile varchar(20)
,@Usuario_Inicial_Caso int
,@TipoIngreso varchar(1)
,@TipoCliente varchar(1)

)
AS
insert into Pqr_Head (
idCliente
,Fecha_ingreso
,Forma_ingreso
,Usuario_ingreso
,Motivo
,Submotivo
,Area
,Producto
,Localidad
,Tipo_PQR
,Observaciones
,Estado_Caso
,Text1
,Tipo_Cliente
,Nombre_Usuario
,EMail
,Usuario_Caso
,Empresa
,Datos
,Fax
,Mobile
,Usuario_Inicial_Caso
,Tipo_Ingreso
,Tipo_Cliente_PQR
)
values(
@idCliente
,@Fecha_ingreso
,@Forma_ingreso
,@Usuario_ingreso
,@Motivo
,@Submotivo
,@Area
,@Producto
,@Localidad
,@Tipo_PQR
,@Observaciones
,@Estado_Caso
,@Text1
,@Tipo_Cliente
,@Nombre_Usuario
,@EMail
,@Usuario_Caso
,@Empresa
,@Datos
,@Fax
,@Mobile
,@Usuario_Inicial_Caso
,@TipoIngreso
,@TipoCliente
)
select @Codigo_PQR = @@identity
GO



las estructura de la tabla es :
if exists (select * from dbo.sysobjects where id >>>> object_id(N'[dbo].[FK_Pqr_Dato_Adjunto_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Dato_Adjunto] DROP CONSTRAINT
FK_Pqr_Dato_Adjunto_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id >>>> object_id(N'[dbo].[FK_Pqr_Det_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Det] DROP CONSTRAINT
FK_Pqr_Det_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id >>>> object_id(N'[dbo].[FK_Pqr_Llamada_Pqr_Head]') and
OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[Pqr_Llamada] DROP CONSTRAINT
FK_Pqr_Llamada_Pqr_Head
GO

if exists (select * from dbo.sysobjects where id >>>> object_id(N'[dbo].[Pqr_Head]') and OBJECTPROPERTY(id,
N'IsUserTable') = 1)
drop table [dbo].[Pqr_Head]
GO

CREATE TABLE [dbo].[Pqr_Head] (
[Codigo_PQR] [numeric](18, 0) IDENTITY (0, 1) NOT
NULL ,
[idCliente] [numeric](18, 0) NOT NULL ,
[Fecha_ingreso] [datetime] NOT NULL ,
[Forma_ingreso] [numeric](18, 0) NOT NULL ,
[Usuario_ingreso] [numeric](18, 0) NOT NULL ,
[Motivo] [numeric](18, 0) NOT NULL ,
[Submotivo] [numeric](18, 0) NOT NULL ,
[Area] [numeric](18, 0) NOT NULL ,
[Producto] [numeric](18, 0) NULL ,
[Localidad] [numeric](18, 0) NOT NULL ,
[Tipo_PQR] [numeric](18, 0) NOT NULL ,
[Observaciones] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Estado_Caso] [numeric](18, 0) NOT NULL ,
[Text1] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente] [numeric](18, 0) NOT NULL ,
[Nombre_Usuario] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[EMail] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Caso] [numeric](18, 0) NOT NULL ,
[Empresa] [numeric](18, 0) NOT NULL ,
[Datos] [varchar] (100) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Fax] [varchar] (50) COLLATE Modern_Spanish_CI_AS
NULL ,
[Mobile] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Usuario_Inicial_Caso] [numeric](18, 0) NOT NULL ,
[Tipo_Ingreso] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL ,
[Tipo_Cliente_PQR] [varchar] (50) COLLATE
Modern_Spanish_CI_AS NOT NULL
) ON [PRIMARY]
GO



Estoy trabajando en ASP con VBscript e IIS 5.0








el
SO en que esta corriendo es Windows 2000 SErver








con
SQL 2000








.







.

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida