Estoy realizando una query que sume, el saldo de cuenta del cliente, los cheques recibidos pendientes por depositar, los pedidos autorizados y los pedidos pendientes de autorizar.
La query que tengo es la siguiente:
SELECT T0."Balance"+ T0."DNotesBal"+ T0."OrdersBal" + SUM (T1."DocTotal") +SUM (T2."CheckSum")
FROM OCRD T0
INNER JOIN ODRF T1 ON T0."CardCode" = T1."CardCode" and T1."WddStatus"='W'
INNER JOIN OCHH T2 ON T0."CardCode"= T2."CardCode" AND T2."Deposited"='N'
where T0."CardCode"= 'C00016'
group by T0."Balance", T0."DNotesBal", T0."OrdersBal"
El problema es que no me trae el resultado de forma correcta. Me podrían ayudar con esto?
¿Y si intentas haciendo un select anidado en lugar de hacer un Join en el select Principal?
algo así (Por Ejemplo):
Select (Select SUM(TX.DocTotal) FROM ORDR TX Where TX.WDDStatus = 'W' AND TX.CardCode = T0.CardCode) as facturas FROM OCRD T0
O bueno, en realidad no mencionas porque deduces que no te trae el resultado de forma correcta, sería buen dato a tomar en cuenta para darte algún tipo de orientación.
Seguimos pendientes.
Luego no tengo mucho tiempo disponible así que por favor, si alguien puede apoyar a la compañera, adelante, ayudémosla a solucionar su inconveniente @businessone.
Finalmente conseguí que funcione la query, al no tener documentos pendientes de autorización traía valor NULL.
La Query quedó así:
SELECT T0.“Balance”+ T0.“DNotesBal”+ T0.“OrdersBal” + ifnull(SUM(T1.“DocTotal”), 0) +SUM (T2.“CheckSum”)
FROM OCRD T0
left JOIN ODRF T1 ON T0.“CardCode” = T1.“CardCode” and T1.“WddStatus”=‘W’
INNER JOIN OCHH T2 ON T0.“CardCode”= T2.“CardCode” AND T2.“Deposited”=‘N’
where T0.“CardCode”= ‘C00016’
group by T0.“Balance”, T0.“DNotesBal”, T0.“OrdersBal”;