Consulta Sql
Publicado por dario (321 intervenciones) el 04/11/2008 02:46:45
Me encuentro que la siguiente situacion.
Tengo una tabla de cabecera de comprobante, una de movimientos y de
proveedores.
En un primer momento realice la siguiente consulta
PROveedores
COC cabecera ordenes de compra
MOC movimientos de ordenes de compra
SELECT
pro.razsoc,coc.tipcp,coc.nrocp,coc.fecent,coc.transp,pro.telef,moc.nrocp,moc.cancelado
from coc,pro;
WHERE empty(coc.recibio) AND coc.codcli=pro.codcli AND coc.tipcp$'OC ' AND
coc.CODCLI#'ANULADO';
ORDER BY coc.tipcp,coc.nrocp,coc.fecent;
INTO CURSOR pp
La cual me dio los resultados deseados hasta ahora.
Pero necesito aun un filtro mas. En la tabla de movimientos tengo el campo
logico Cancelado, el que indica si dicha Orden de compra esta cancelada o
no, sin duda esta informacion deberia estar en la cabecera no en el
movimiento. No puedo modificar ninguna estructura de datos, programa
heredado.
Lo que necesito es que solo salgan en la consulta aquellas ordenes de compra
que no esten canceladas, que condicion deberia agregar?
Gracias
Tengo una tabla de cabecera de comprobante, una de movimientos y de
proveedores.
En un primer momento realice la siguiente consulta
PROveedores
COC cabecera ordenes de compra
MOC movimientos de ordenes de compra
SELECT
pro.razsoc,coc.tipcp,coc.nrocp,coc.fecent,coc.transp,pro.telef,moc.nrocp,moc.cancelado
from coc,pro;
WHERE empty(coc.recibio) AND coc.codcli=pro.codcli AND coc.tipcp$'OC ' AND
coc.CODCLI#'ANULADO';
ORDER BY coc.tipcp,coc.nrocp,coc.fecent;
INTO CURSOR pp
La cual me dio los resultados deseados hasta ahora.
Pero necesito aun un filtro mas. En la tabla de movimientos tengo el campo
logico Cancelado, el que indica si dicha Orden de compra esta cancelada o
no, sin duda esta informacion deberia estar en la cabecera no en el
movimiento. No puedo modificar ninguna estructura de datos, programa
heredado.
Lo que necesito es que solo salgan en la consulta aquellas ordenes de compra
que no esten canceladas, que condicion deberia agregar?
Gracias
Valora esta pregunta


0