Ver Mensaje Individual
  #5  
Antiguo 13-04-2010
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Reputación: 16
microbiano Va por buen camino
planteo mi consulta de otra manera

tengo las siguientes tablas

mcontratos (correspondiente al maestro de recibos)de la siguiente forma

Código SQL [-]
CREATE TABLE [dbo].[mcontratos] (
    [ID_RECIBO] [int] IDENTITY (1, 1) NOT FOR REPLICATION  NOT NULL ,
    [FOLIO] [numeric](18, 0) NULL ,
    [MES] [numeric](18, 0) NULL ,
    [ANIO] [numeric](18, 0) NULL ,
    [NO_CONTRATO] [nvarchar] (30) COLLATE Traditional_Spanish_CI_AS NULL ,
    [FECHA_PAGO] [smalldatetime] NULL ,
    [USUARIO] [numeric](16, 0) NULL ,
    [DESCUENTO] [numeric](6, 2) NULL ,
    [SUBTOTAL] [numeric](16, 2) NULL ,
    [TOTAL] [numeric](16, 2) NULL ,
    [NO_LICITACION] [nvarchar] (15) COLLATE Traditional_Spanish_CI_AS NULL ,
    [NUM_PROVEEDOR] [nvarchar] (8) COLLATE Traditional_Spanish_CI_AS NULL ,
    [FECHA_FIRMA] [smalldatetime] NULL ,
    [FECHA_TERMINACION] [smalldatetime] NULL ,
    [RFC_PROVEEDOR] [nvarchar] (15) COLLATE Traditional_Spanish_CI_AS NULL 
) ON [PRIMARY]
GO

y la tabla drecibos(correspondiente al detalle de recibos) de la siguiente forma

Código SQL [-]
CREATE TABLE [dbo].[dcontratos] (
    [ID_RECIBO] [int] IDENTITY (1, 1) NOT NULL ,
    [FOLIO] [numeric](18, 0) NULL ,
    [MES] [numeric](18, 0) NULL ,
    [ANIO] [numeric](18, 0) NULL ,
    [NO_CONTRATO] [nvarchar] (30) COLLATE Traditional_Spanish_CI_AS NULL ,
    [GPO] [nvarchar] (3) COLLATE Traditional_Spanish_CI_AS NULL ,
    [GEN] [nvarchar] (3) COLLATE Traditional_Spanish_CI_AS NULL ,
    [ESP] [nvarchar] (4) COLLATE Traditional_Spanish_CI_AS NULL ,
    [DIF] [nvarchar] (2) COLLATE Traditional_Spanish_CI_AS NULL ,
    [VAR] [nvarchar] (2) COLLATE Traditional_Spanish_CI_AS NULL ,
    [CONCEPTO] [nvarchar] (50) COLLATE Traditional_Spanish_CI_AS NULL ,
    [CANT_MAX] [numeric](10, 0) NULL ,
    [CANT_MIN] [numeric](10, 0) NULL ,
    [PRECIO_CLAVE] [float] NULL ,
    [DESCUENTO] [float] NULL ,
    [IMP_PENA_MAX] [numeric](16, 2) NULL ,
    [PRECIO_NETO] [float] NULL 
) ON [PRIMARY]
GO

ahora bien genero la siguiente consulta
Código SQL [-]
SELECT     dbo.mcontratos.ID_RECIBO, dbo.mcontratos.FOLIO, dbo.mcontratos.MES, dbo.mcontratos.ANIO,
 dbo.mcontratos.NO_CONTRATO, dbo.mcontratos.FECHA_PAGO, 
                      dbo.mcontratos.USUARIO, dbo.mcontratos.DESCUENTO, 
dbo.mcontratos.SUBTOTAL, dbo.mcontratos.TOTAL, dbo.dcontratos.CONCEPTO, 
                      dbo.dcontratos.PRECIO_CLAVE
FROM         dbo.mcontratos LEFT OUTER JOIN
                      dbo.dcontratos ON dbo.mcontratos.FOLIO = dbo.dcontratos.FOLIO 
AND dbo.mcontratos.MES = dbo.dcontratos.MES AND 
                      dbo.mcontratos.ANIO = dbo.dcontratos.ANIO

hasta aqui ningun problema pero cuando trato de agregar el campo de no_contrato y ponerle una condicion ya no me muestra el resultado.

esta es la consulta que ejecuto y no me regresa resultado alguien me podria ayudar
Código SQL [-]
SELECT     dbo.mccontratos.ID_RECIBO, dbo.mccontratos.FOLIO, dbo.mccontratos.MES, dbo.mccontratos.ANIO, dbo.mccontratos.NO_CONTRATO, dbo.mccontratos.FECHA_PAGO, 
                      dbo.mccontratos.USUARIO, dbo.mccontratos.DESCUENTO, dbo.mccontratos.SUBTOTAL, dbo.mccontratos.TOTAL, dbo.adq_clave_contrato.CONCEPTO, 
                      dbo.adq_clave_contrato.PRECIO_CLAVE
FROM         dbo.mccontratos LEFT OUTER JOIN
                      dbo.adq_clave_contrato ON dbo.mccontratos.NO_CONTRATO = dbo.adq_clave_contrato.NO_CONTRATO AND 
                      dbo.mccontratos.FOLIO = dbo.adq_clave_contrato.FOLIO AND dbo.mccontratos.MES = dbo.adq_clave_contrato.MES AND 
                      dbo.mccontratos.ANIO = dbo.adq_clave_contrato.ANIO
WHERE     (dbo.mccontratos.MES = 1) AND (dbo.mccontratos.ANIO = 2009) AND (dbo.mccontratos.FOLIO = 1) AND (dbo.mccontratos.NO_CONTRATO = N'SAP-C2009111104')
Responder Con Cita