Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Problema consulta.. registro duplicado

Estas en el tema de Problema consulta.. registro duplicado en el foro de SQL Server en Foros del Web. Hola que tal, tengo un problema con la siguiente consulta: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código SQL: Ver original INSERT INTO CXPSituacion ( Empresa , Folio ,  FolioInt ...
  #1 (permalink)  
Antiguo 15/02/2011, 16:54
Avatar de Inicia  
Fecha de Ingreso: octubre-2010
Ubicación: Actualmente en GDL
Mensajes: 135
Antigüedad: 13 años, 6 meses
Puntos: 1
Problema consulta.. registro duplicado

Hola que tal, tengo un problema con la siguiente consulta:

Código SQL:
Ver original
  1. INSERT INTO CXPSituacion (Empresa, Folio,  FolioInt, Documento, Fecha, Vencimiento, ultimoabono, Proveedor, RazonSocial, Estatus, Cargo, Abono, Importe,
  2.             Aplicado, Saldo, Usuario, Banco, CondicionPago, Orden, DescripcionEmpresa, saldoinicial,totalcargos,totalabonos,saldofinal)
  3.  
  4. SELECT Fe.Empresa, '', Fe.Folio, P5d.Descripcion, Fecha = Fe.Fecha, FE.FechaVencimiento,'',
  5.     Fe.Proveedor, Cl.RazonSocial, 'ST', Fe.Total, 0, Fe.Total,
  6.     Aplicado = (Isnull((SELECT SUM(Cd.importe) FROM PagoDetalle CD, PagoEncabezado CE
  7.             WHERE Ce.Empresa = Cd.Empresa AND Ce.Folio = CD.Folio
  8.             AND FolioDocumento = Fe.Folio AND cd.Operacion = 'PFACTURA' AND Ce.Moneda = 'P' AND Cd.FechaAplicacion <= '2011-03-01'
  9.             AND Ce.Estatus = 'A' AND Ce.Proveedor = '02-003' AND Ce.Empresa = 'Emp1'), 0)-- por Pagos
  10.            + Isnull((SELECT SUM(Nc.importe) FROM CXPNCreditoDetalle NC, CXPNCreditoEncabezado NCE
  11.             WHERE NCe.Empresa = NC.Empresa AND NCe.Folio = NC.Folio
  12.             AND FolioDocumento = Fe.Folio AND Nc.Operacion = 'PFACTURA' AND NCe.Moneda = 'P' AND NC.FechaAplicacion <= '2011-03-01'
  13.             AND NCe.Estatus = 'A' AND NCe.Proveedor = '02-003' AND NCe.Empresa = 'Emp1'), 0) -- Esto es por Notas de Credito
  14.                 + Isnull((SELECT SUM(ANC.importe) FROM CxPAplicAnticipoDetalle ANC, CxPAplicAnticipoEncabezado ANCE
  15.             WHERE ANCe.Empresa = ANC.Empresa AND ANCe.Folio = AnC.Folio
  16.             AND FolioDocumento = Fe.Folio AND Anc.Operacion = 'PFACTURA' AND ANCe.Moneda = 'P' AND FechaAplicacion <= '2011-03-01'
  17.             AND ANCe.Estatus = 'A' AND ANCe.Proveedor = '02-003' AND ANCe.Empresa = 'Emp1'), 0)) -- Esto es por Anticipos
  18.     , 0, suser_sname(), '', Cl.CondicionPago, 1, 'ASC Parts',NULL,NULL,NULL,NULL
  19. FROM CXPFactura FE,  Proveedor Cl, P5SysDocumento P5d
  20. WHERE Fe.Proveedor = Cl.Clave AND Fe.Documento = P5d.Clave AND Fe.Empresa = P5d.Empresa AND FE.Proveedor = '02-003'
  21. AND Fecha <='2011-03-01' AND FE.Estatus = 'A' AND fe.Empresa = 'Emp1' AND Fe.Moneda = 'P'

El resultado que me arroja es este:

Msg 2627, Level 14, State 1, Line 2
Violation of PRIMARY KEY constraint 'PK_CXPSituacion'. Cannot insert duplicate key in object 'dbo.CXPSituacion'.
The statement has been terminated.


Espero me puedan ayudar, si no uso el insert... la consulta la genera correctamente ayudenme por favoooor q ya me dolio la cabeza q no pueda encontrar un error
  #2 (permalink)  
Antiguo 15/02/2011, 16:56
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Problema consulta.. registro duplicado

El mensaje es muy CLARO, estas tratando de VIOLAR la regla de registro unico (PRIMARY KEY), ¿cual es tu duda?
__________________
MCTS Isaias Islas
  #3 (permalink)  
Antiguo 15/02/2011, 17:02
Avatar de Inicia  
Fecha de Ingreso: octubre-2010
Ubicación: Actualmente en GDL
Mensajes: 135
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: Problema consulta.. registro duplicado

No entiendo como q "violar"?? si los campos son los mismos que mi tabla
  #4 (permalink)  
Antiguo 15/02/2011, 17:14
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Problema consulta.. registro duplicado

Ejecuta tu query, revisa que registro te da y buscalo en la tabla donde lo quieres insertar, te daras cuenta QUE YA EXISTE !!!.

Tu no puedes insertar 2 registros IGUALITOS, porque entonces te enviara el mensaje de:

Cannot insert duplicate key

No se puede insertar una llave duplicada
__________________
MCTS Isaias Islas
  #5 (permalink)  
Antiguo 15/02/2011, 17:28
Avatar de Inicia  
Fecha de Ingreso: octubre-2010
Ubicación: Actualmente en GDL
Mensajes: 135
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: Problema consulta.. registro duplicado

Cita:
Iniciado por iislas Ver Mensaje
Ejecuta tu query, revisa que registro te da y buscalo en la tabla donde lo quieres insertar, te daras cuenta QUE YA EXISTE !!!.

Tu no puedes insertar 2 registros IGUALITOS, porque entonces te enviara el mensaje de:

Cannot insert duplicate key

No se puede insertar una llave duplicada


Sabes tienes mil razón... es una babosada lo que puse tenía el folio como nulo y es un folio q necesitaba ingresar datos.. sorry por postear esto pero tenía 2 días en eso sabe tanta chamba me hicieron no fijarme :( sorry pero ya quedo :)
  #6 (permalink)  
Antiguo 15/02/2011, 19:38
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Problema consulta.. registro duplicado

DOS DIAS !!!, es mucho tiempo perdido, yo les digo a mis alumnos, "inviertanle 5 minutos, 10 minutos, si no encuentran una solucion, busquen a su alrededor y veran que alguien los ayudara"....

Saludos
__________________
MCTS Isaias Islas

Etiquetas: duplicado, registro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:52.