Ver Mensaje Individual
  #8  
Antiguo 30-01-2015
Jose Carlos Rey Jose Carlos Rey is offline
Miembro
NULL
 
Registrado: may 2014
Posts: 26
Reputación: 0
Jose Carlos Rey Va por buen camino
Otra prueba
He estado realizando cambios en la estructura de la consulta(no gran cosa, redunda practicamente en la misma) con el mismo error.
el codigo es el siguiente:
Código SQL [-]
SELECT DISTINCT a.CVE_ART, b.DESCR, a.EXIST -
                          (SELECT     z.CVE_ART, SUM(z.CANT) AS Expr1
                            FROM          PAR_FACTP02 AS z LEFT OUTER JOIN
                                                   FACTP02 AS y ON z.CVE_DOC = y.CVE_DOC
                            WHERE      (y.STATUS <> 'C') AND (z.APAR <> 0)
                            GROUP BY z.CVE_ART, z.CANT) AS Expr1, c.PRECIO
FROM         MULT02 AS a LEFT OUTER JOIN
                      INVE02 AS b ON a.CVE_ART = b.CVE_ART LEFT OUTER JOIN
                      PRECIO_X_PROD02 AS c ON a.CVE_ART = c.CVE_ART LEFT OUTER JOIN
                      PAR_FACTP02 AS d ON a.CVE_ART = d.CVE_ART LEFT OUTER JOIN
                      FACTP02 AS e ON d.CVE_DOC = e.CVE_DOC
WHERE     (e.STATUS <> 'C') AND (a.CVE_ALM = 1) AND (c.CVE_PRECIO = 1) AND (a.EXIST <> 0)
ORDER BY a.CVE_ART

si se ejecuta la consulta individual funcionan, pero al incluirlas envia el error:
"Solo se puede especificar una expresion en la lista de seleccion cuando la subconsulta no se especifica con EXIST"

consulta individual (Subconsulta): OK
Código SQL [-]
SELECT     z.CVE_ART, SUM(z.CANT) AS Expr1
FROM         PAR_FACTP02 AS z LEFT OUTER JOIN
                      FACTP02 AS y ON z.CVE_DOC = y.CVE_DOC
WHERE     (y.STATUS <> 'C') AND (z.APAR <> 0)
GROUP BY z.CVE_ART, z.CANT

consulta individual: OK
Código SQL [-]
SELECT DISTINCT a.CVE_ART, b.DESCR, a.EXIST AS EXISTENCIA, c.PRECIO
FROM         MULT02 AS a LEFT OUTER JOIN
                      INVE02 AS b ON a.CVE_ART = b.CVE_ART LEFT OUTER JOIN
                      PRECIO_X_PROD02 AS c ON a.CVE_ART = c.CVE_ART LEFT OUTER JOIN
                      PAR_FACTP02 AS d ON a.CVE_ART = d.CVE_ART LEFT OUTER JOIN
                      FACTP02 AS e ON d.CVE_DOC = e.CVE_DOC
WHERE     (e.STATUS <> 'C') AND (a.CVE_ALM = 1) AND (c.CVE_PRECIO = 1) AND (a.EXIST <> 0)
ORDER BY a.CVE_ART

como les mencione funcionan bien, pero no he logrado enlazar el resultado de una y restarle el de la otra.

Alguien que se le ocurra el origen del problema.

Gracias & saludos
Responder Con Cita