From 1713b2b4a947c0bca3eed69a139186b1c87ca410 Mon Sep 17 00:00:00 2001 From: roberto Date: Tue, 29 Jul 2008 11:57:02 +0000 Subject: [PATCH] git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES/trunk@274 c93665c3-c93d-084d-9b98-7d5f4a9c3376 --- Database/Script.txt | 957 +++++++------------------------------------- 1 file changed, 138 insertions(+), 819 deletions(-) diff --git a/Database/Script.txt b/Database/Script.txt index 095178f7..4f915f68 100644 --- a/Database/Script.txt +++ b/Database/Script.txt @@ -1,828 +1,147 @@ -CREATE TABLE IMPRESIONES( -ID TIPO_ID NOT NULL, -ID_TABLA TIPO_ID, -TABLA VARCHAR(50) COLLATE ES_ES, -NUM_COPIAS SMALLINT -); +DROP VIEW V_PED_PROV_ART_SIN_ALBARAN; +DROP VIEW V_PED_CLI_ART_SIN_ALBARAN; -/* Create generator... */ -CREATE GENERATOR GEN_IMPRESIONES_ID; - -CREATE PROCEDURE PRO_ANADIR_MARCA_IMPRESION ( - tabla varchar(255), - id_tabla integer) -as -declare variable id integer; -begin - select ID - from IMPRESIONES - where ID_TABLA = :ID_TABLA - and TABLA = UPPER(:TABLA) - into :ID; - - /*En el caso de que ya exista se modifica la cantidad en caso contrario se anade el elemetno*/ - if (ID > 0) then - begin - update IMPRESIONES - set NUM_COPIAS = NUM_COPIAS + 1 - where ID = :ID; - end - else - begin - insert into IMPRESIONES (ID, TABLA, ID_TABLA, NUM_COPIAS) - values (GEN_ID(GEN_IMPRESIONES_ID, 1), UPPER(:TABLA), :ID_TABLA, 1); - end - suspend; -end; - - -DROP VIEW V_ALBARANES_CLIENTE; - -/* Create altered view: V_ALBARANES_CLIENTE */ -/* Create view: V_ALBARANES_CLIENTE (ViwData.CreateDependDef) */ -CREATE VIEW V_ALBARANES_CLIENTE( -ID, -ID_EMPRESA, -ID_CLIENTE, -NOMBRE, -FECHA_ALBARAN, -REFERENCIA, -REFERENCIA_CLIENTE, -TIPO, -SITUACION, -ID_ALMACEN, -NOMBRE_ALMACEN, -ID_PEDIDO, -REF_PEDIDO, -ID_FACTURA, -REF_FACTURA, -CALLE, -CODIGO_POSTAL, -POBLACION, -PROVINCIA, -PERSONA_CONTACTO, -TELEFONO, -IMPORTE_NETO, -IMPORTE_PORTE, -DESCUENTO, -IMPORTE_DESCUENTO, -BASE_IMPONIBLE, -IVA, -IMPORTE_IVA, -IMPORTE_TOTAL, -OBSERVACIONES, -INCIDENCIAS, -INCIDENCIAS_ACTIVAS, -FECHA_ALTA, -FECHA_MODIFICACION, -USUARIO, -ID_FORMA_PAGO, -FECHA_PREVISTA_ENVIO, -FECHA_ENVIO, -FECHA_RECEPCION, -ID_AGENTE, -AGENTE, -NUM_COPIAS) - AS +CREATE VIEW V_PED_CLI_ART_SIN_ALBARAN( + ID, + ID_PEDIDO, + ID_EMPRESA, + REFERENCIA_PEDIDO, + REFERENCIA_CLI_PEDIDO, + FECHA_PEDIDO, + FECHA_PREVISTA_PEDIDO, + ID_CLIENTE, + CALLE, + CODIGO_POSTAL, + POBLACION, + PROVINCIA, + PERSONA_CONTACTO, + TELEFONO, + IVA, + ID_FORMA_PAGO, + CLIENTE, + ID_ARTICULO, + FAMILIA, + REFERENCIA, + REFERENCIA_PROVEEDOR, + DESCRIPCION, + CANTIDAD_PEDIDA, + CANTIDAD_RESERVADA, + CANTIDAD_ENVIADA, + CANTIDAD_SERVIDA, + CANTIDAD_PENDIENTE, + PRECIO_COSTE, + DESCUENTO, + PRECION_NETO) +AS SELECT - ALBARANES_CLIENTE.ID, - ALBARANES_CLIENTE.ID_EMPRESA, - ALBARANES_CLIENTE.ID_CLIENTE, - CLIENTES.NOMBRE, - ALBARANES_CLIENTE.FECHA_ALBARAN, - ALBARANES_CLIENTE.REFERENCIA, - ALBARANES_CLIENTE.REFERENCIA_CLIENTE, - ALBARANES_CLIENTE.TIPO, - V_ALB_CLI_SITUACION.SITUACION, - ALBARANES_CLIENTE.ID_ALMACEN, - ALMACENES.NOMBRE AS NOMBRE_ALMACEN, - ALBARANES_CLIENTE.ID_PEDIDO, - PEDIDOS_CLIENTE.REFERENCIA AS REF_PEDIDO, - ALBARANES_CLIENTE.ID_FACTURA, - FACTURAS_CLIENTE.REFERENCIA AS REF_FACTURA, - ALBARANES_CLIENTE.CALLE, - ALBARANES_CLIENTE.CODIGO_POSTAL, - ALBARANES_CLIENTE.POBLACION, - ALBARANES_CLIENTE.PROVINCIA, - ALBARANES_CLIENTE.PERSONA_CONTACTO, - ALBARANES_CLIENTE.TELEFONO, - ALBARANES_CLIENTE.IMPORTE_NETO, - ALBARANES_CLIENTE.IMPORTE_PORTE, - ALBARANES_CLIENTE.DESCUENTO, - ALBARANES_CLIENTE.IMPORTE_DESCUENTO, - ALBARANES_CLIENTE.BASE_IMPONIBLE, - ALBARANES_CLIENTE.IVA, - ALBARANES_CLIENTE.IMPORTE_IVA, - ALBARANES_CLIENTE.IMPORTE_TOTAL, - ALBARANES_CLIENTE.OBSERVACIONES, - ALBARANES_CLIENTE.INCIDENCIAS, - ALBARANES_CLIENTE.INCIDENCIAS_ACTIVAS, - ALBARANES_CLIENTE.FECHA_ALTA, - ALBARANES_CLIENTE.FECHA_MODIFICACION, - ALBARANES_CLIENTE.USUARIO, - ALBARANES_CLIENTE.ID_FORMA_PAGO, - ALBARANES_CLIENTE.FECHA_PREVISTA_ENVIO, - ALBARANES_CLIENTE.FECHA_ENVIO, - ALBARANES_CLIENTE.FECHA_RECEPCION, - CLIENTES_DATOS.ID_AGENTE, - AGENTES.NOMBRE, - IMPRESIONES.NUM_COPIAS - -FROM - ALBARANES_CLIENTE - INNER JOIN V_ALB_CLI_SITUACION ON (V_ALB_CLI_SITUACION.ID = ALBARANES_CLIENTE.ID) - INNER JOIN CONTACTOS CLIENTES ON (CLIENTES.ID = ALBARANES_CLIENTE.ID_CLIENTE) - LEFT OUTER JOIN CLIENTES_DATOS ON (CLIENTES_DATOS.ID_CLIENTE = ALBARANES_CLIENTE.ID_CLIENTE) - LEFT OUTER JOIN CONTACTOS AGENTES ON (AGENTES.ID = CLIENTES_DATOS.ID_AGENTE) - LEFT OUTER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = ALBARANES_CLIENTE.ID_PEDIDO) - LEFT OUTER JOIN FACTURAS_CLIENTE ON (FACTURAS_CLIENTE.ID = ALBARANES_CLIENTE.ID_FACTURA) - LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = ALBARANES_CLIENTE.ID_ALMACEN) - LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = ALBARANES_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'ALBARANESCLIENTE')); -; + V_PED_CLI_ARTICULOS.ID_PEDIDO || 0 || V_PED_CLI_ARTICULOS.ID_ARTICULO as ID, /*Para tener un ID unico sobre el que poder consultar en la sentencia de selección del grid*/ + V_PED_CLI_ARTICULOS.ID_PEDIDO, + PEDIDOS_CLIENTE.ID_EMPRESA, + PEDIDOS_CLIENTE.referencia, + PEDIDOS_CLIENTE.referencia_cliente, + PEDIDOS_CLIENTE.fecha_pedido, + PEDIDOS_CLIENTE.fecha_prevista_envio, + PEDIDOS_CLIENTE.id_cliente, + PEDIDOS_CLIENTE.CALLE, + PEDIDOS_CLIENTE.CODIGO_POSTAL, + PEDIDOS_CLIENTE.POBLACION, + PEDIDOS_CLIENTE.PROVINCIA, + PEDIDOS_CLIENTE.PERSONA_CONTACTO, + PEDIDOS_CLIENTE.TELEFONO, + PEDIDOS_CLIENTE.IVA, + PEDIDOS_CLIENTE.ID_FORMA_PAGO, + CONTACTOS.nombre, + V_PED_CLI_ARTICULOS.ID_ARTICULO, + articulos.familia, + articulos.referencia, + articulos.referencia_prov, + articulos.descripcion, + V_PED_CLI_ARTICULOS.CANTIDAD_PEDIDA, + V_PED_CLI_ARTICULOS.CANTIDAD_RESERVADA, + V_PED_CLI_ARTICULOS.CANTIDAD_ENVIADA, + V_PED_CLI_ARTICULOS.CANTIDAD_SERVIDA, + V_PED_CLI_ARTICULOS.CANTIDAD_PENDIENTE, + ARTICULOS.PRECIO_COSTE, + CLIENTES_DTOS_PROVEEDORES.DESCUENTO, + (ARTICULOS.PRECIO_COSTE * CLIENTES_DTOS_PROVEEDORES.DESCUENTO)/100 as PRECIO_NETO + +from V_PED_CLI_ARTICULOS +left join PEDIDOS_CLIENTE on (PEDIDOS_CLIENTE.id = V_PED_CLI_ARTICULOS.id_pedido) +left join CONTACTOS on (contactos.id = PEDIDOS_CLIENTE.id_cliente) +left join articulos on (articulos.id = V_PED_CLI_ARTICULOS.ID_ARTICULO) + +LEFT OUTER JOIN CLIENTES_DTOS_PROVEEDORES +ON ((CLIENTES_DTOS_PROVEEDORES.ID_PROVEEDOR = ARTICULOS.ID_PROVEEDOR) +AND (CLIENTES_DTOS_PROVEEDORES.ID_CLIENTE = contactos.id)) + +where cantidad_pendiente > 0; -/* Drop altered view: V_ALBARANES_PROVEEDOR */ -DROP VIEW V_ALBARANES_PROVEEDOR; - -/* Create altered view: V_ALBARANES_PROVEEDOR */ -/* Create view: V_ALBARANES_PROVEEDOR (ViwData.CreateDependDef) */ -CREATE VIEW V_ALBARANES_PROVEEDOR( -ID, -ID_EMPRESA, -ID_PROVEEDOR, -NOMBRE, -FECHA_ALBARAN, -REFERENCIA, -REFERENCIA_PROVEEDOR, -TIPO, -ID_ALMACEN, -NOMBRE_ALMACEN, -ID_PEDIDO, -REF_PED_PROVEEDOR, -ID_FACTURA, -REF_FACTURA, -REF_FACTURA_PROV, -CALLE, -CODIGO_POSTAL, -POBLACION, -PROVINCIA, -PERSONA_CONTACTO, -TELEFONO, -IMPORTE_NETO, -IMPORTE_PORTE, -DESCUENTO, -IMPORTE_DESCUENTO, -BASE_IMPONIBLE, -IVA, -IMPORTE_IVA, -IMPORTE_TOTAL, -OBSERVACIONES, -INCIDENCIAS, -INCIDENCIAS_ACTIVAS, -FECHA_ALTA, -FECHA_MODIFICACION, -USUARIO, -ID_FORMA_PAGO, -NUM_COPIAS) - AS +CREATE VIEW V_PED_PROV_ART_SIN_ALBARAN( + ID, + ID_PEDIDO, + ID_EMPRESA, + REFERENCIA_PEDIDO, + FECHA_PEDIDO, + FECHA_CONFIRMACION, + ID_PROVEEDOR, + CALLE, + CODIGO_POSTAL, + POBLACION, + PROVINCIA, + PERSONA_CONTACTO, + TELEFONO, + IVA, + ID_FORMA_PAGO, + PROVEEDOR, + ID_ARTICULO, + FAMILIA, + REFERENCIA, + REFERENCIA_PROVEEDOR, + DESCRIPCION, + CANTIDAD_PEDIDA, + CANTIDAD_RECIBIDA, + CANTIDAD_PENDIENTE, + PRECIO_COSTE, + DESCUENTO, + PRECIO_NETO, + PRECIO_PORTE) +AS SELECT - ALBARANES_PROVEEDOR.ID, - ALBARANES_PROVEEDOR.ID_EMPRESA, - ALBARANES_PROVEEDOR.ID_PROVEEDOR, - CONTACTOS.NOMBRE, - ALBARANES_PROVEEDOR.FECHA_ALBARAN, - ALBARANES_PROVEEDOR.REFERENCIA, - ALBARANES_PROVEEDOR.REFERENCIA_PROVEEDOR, - ALBARANES_PROVEEDOR.TIPO, - ALBARANES_PROVEEDOR.ID_ALMACEN, - ALMACENES.NOMBRE AS NOMBRE_ALMACEN, - ALBARANES_PROVEEDOR.ID_PEDIDO, - PEDIDOS_PROVEEDOR.REFERENCIA AS REF_PED_PROVEEDOR, - ALBARANES_PROVEEDOR.ID_FACTURA, - FACTURAS_PROVEEDOR.REFERENCIA AS REF_FACTURA, - ALBARANES_PROVEEDOR.REF_FACTURA_PROV, - ALBARANES_PROVEEDOR.CALLE, - ALBARANES_PROVEEDOR.CODIGO_POSTAL, - ALBARANES_PROVEEDOR.POBLACION, - ALBARANES_PROVEEDOR.PROVINCIA, - ALBARANES_PROVEEDOR.PERSONA_CONTACTO, - ALBARANES_PROVEEDOR.TELEFONO, - ALBARANES_PROVEEDOR.IMPORTE_NETO, - ALBARANES_PROVEEDOR.IMPORTE_PORTE, - ALBARANES_PROVEEDOR.DESCUENTO, - ALBARANES_PROVEEDOR.IMPORTE_DESCUENTO, - ALBARANES_PROVEEDOR.BASE_IMPONIBLE, - ALBARANES_PROVEEDOR.IVA, - ALBARANES_PROVEEDOR.IMPORTE_IVA, - ALBARANES_PROVEEDOR.IMPORTE_TOTAL, - ALBARANES_PROVEEDOR.OBSERVACIONES, - ALBARANES_PROVEEDOR.INCIDENCIAS, - ALBARANES_PROVEEDOR.INCIDENCIAS_ACTIVAS, - ALBARANES_PROVEEDOR.FECHA_ALTA, - ALBARANES_PROVEEDOR.FECHA_MODIFICACION, - ALBARANES_PROVEEDOR.USUARIO, - ALBARANES_PROVEEDOR.ID_FORMA_PAGO, - IMPRESIONES.NUM_COPIAS -FROM - ALBARANES_PROVEEDOR - INNER JOIN CONTACTOS ON (CONTACTOS.ID = ALBARANES_PROVEEDOR.ID_PROVEEDOR) - LEFT OUTER JOIN PEDIDOS_PROVEEDOR ON (PEDIDOS_PROVEEDOR.ID = ALBARANES_PROVEEDOR.ID_PEDIDO) - LEFT OUTER JOIN FACTURAS_PROVEEDOR ON (FACTURAS_PROVEEDOR.ID = ALBARANES_PROVEEDOR.ID_FACTURA) - LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = ALBARANES_PROVEEDOR.ID_ALMACEN) - LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = ALBARANES_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'ALBARANESPROVEEDOR')); -; + V_PED_PROV_ARTICULOS.ID_PEDIDO || 0 || V_PED_PROV_ARTICULOS.ID_ARTICULO as ID, /*Para tener un ID unico sobre el que poder consultar en la sentencia de selección del grid*/ + V_PED_PROV_ARTICULOS.ID_PEDIDO, + PEDIDOS_PROVEEDOR.ID_EMPRESA, + PEDIDOS_PROVEEDOR.referencia, + PEDIDOS_PROVEEDOR.fecha_pedido, + PEDIDOS_PROVEEDOR.fecha_confirmacion, + PEDIDOS_PROVEEDOR.id_proveedor, + PEDIDOS_PROVEEDOR.CALLE, + PEDIDOS_PROVEEDOR.CODIGO_POSTAL, + PEDIDOS_PROVEEDOR.POBLACION, + PEDIDOS_PROVEEDOR.PROVINCIA, + PEDIDOS_PROVEEDOR.PERSONA_CONTACTO, + PEDIDOS_PROVEEDOR.TELEFONO, + PEDIDOS_PROVEEDOR.IVA, + PEDIDOS_PROVEEDOR.ID_FORMA_PAGO, + CONTACTOS.nombre, + V_PED_PROV_ARTICULOS.ID_ARTICULO, + articulos.familia, + articulos.referencia, + articulos.referencia_prov, + articulos.descripcion, + V_PED_PROV_ARTICULOS.CANTIDAD_PEDIDA, + V_PED_PROV_ARTICULOS.CANTIDAD_RECIBIDA, + V_PED_PROV_ARTICULOS.CANTIDAD_PENDIENTE, + ARTICULOS.PRECIO_COSTE, + ARTICULOS.DESCUENTO, + ARTICULOS.PRECIO_NETO, + ARTICULOS.PRECIO_PORTE - - - -/* Drop altered view: V_FACTURAS_CLIENTE */ -DROP VIEW V_AGENTES_COMISIONES_DET_FAC; - -DROP VIEW V_FACTURAS_CLIENTE; - -/* Create altered view: V_FACTURAS_CLIENTE */ -/* Create view: V_FACTURAS_CLIENTE (ViwData.CreateDependDef) */ -CREATE VIEW V_FACTURAS_CLIENTE( -ID, -ID_EMPRESA, -REFERENCIA, -TIPO, -ID_COMISION_LIQUIDADA, -FECHA_FACTURA, -SITUACION, -BASE_IMPONIBLE, -DESCUENTO, -IMPORTE_DESCUENTO, -IVA, -IMPORTE_IVA, -RE, -IMPORTE_RE, -IMPORTE_TOTAL, -OBSERVACIONES, -ID_CLIENTE, -NIF_CIF, -NOMBRE, -CALLE, -POBLACION, -PROVINCIA, -CODIGO_POSTAL, -FECHA_ALTA, -FECHA_MODIFICACION, -USUARIO, -ID_FORMA_PAGO, -RECARGO_EQUIVALENCIA, -ID_TIPO_IVA, -IMPORTE_NETO, -IMPORTE_PORTE, -ID_AGENTE, -REFERENCIA_COMISION, -NUM_COPIAS) - AS -SELECT FACTURAS_CLIENTE.ID, - FACTURAS_CLIENTE.ID_EMPRESA, - FACTURAS_CLIENTE.REFERENCIA, - CASE WHEN (FACTURAS_CLIENTE.IMPORTE_TOTAL < 0) THEN 'A' ELSE 'F' END AS TIPO, - FACTURAS_CLIENTE.ID_COMISION_LIQUIDADA, - FACTURAS_CLIENTE.FECHA_FACTURA, - V_FAC_CLI_SITUACION.SITUACION, - FACTURAS_CLIENTE.BASE_IMPONIBLE, - FACTURAS_CLIENTE.DESCUENTO, - FACTURAS_CLIENTE.IMPORTE_DESCUENTO, - FACTURAS_CLIENTE.IVA, - FACTURAS_CLIENTE.IMPORTE_IVA, - FACTURAS_CLIENTE.RE, - FACTURAS_CLIENTE.IMPORTE_RE, - FACTURAS_CLIENTE.IMPORTE_TOTAL, - FACTURAS_CLIENTE.OBSERVACIONES, - FACTURAS_CLIENTE.ID_CLIENTE, - FACTURAS_CLIENTE.NIF_CIF, - FACTURAS_CLIENTE.NOMBRE, - FACTURAS_CLIENTE.CALLE, - FACTURAS_CLIENTE.POBLACION, - FACTURAS_CLIENTE.PROVINCIA, - FACTURAS_CLIENTE.CODIGO_POSTAL, - FACTURAS_CLIENTE.FECHA_ALTA, - FACTURAS_CLIENTE.FECHA_MODIFICACION, - FACTURAS_CLIENTE.USUARIO, - FACTURAS_CLIENTE.ID_FORMA_PAGO, - FACTURAS_CLIENTE.RECARGO_EQUIVALENCIA, - FACTURAS_CLIENTE.ID_TIPO_IVA, - FACTURAS_CLIENTE.IMPORTE_NETO, - FACTURAS_CLIENTE.IMPORTE_PORTE, - CLIENTES_DATOS.ID_AGENTE, - COMISIONES_LIQUIDADAS.REFERENCIA, - IMPRESIONES.NUM_COPIAS - FROM V_FAC_CLI_SITUACION - LEFT JOIN FACTURAS_CLIENTE - ON (FACTURAS_CLIENTE.ID = V_FAC_CLI_SITUACION.ID_FACTURA) - LEFT JOIN COMISIONES_LIQUIDADAS - ON (COMISIONES_LIQUIDADAS.ID = FACTURAS_CLIENTE.ID_COMISION_LIQUIDADA) - LEFT JOIN CLIENTES_DATOS - ON (CLIENTES_DATOS.ID_CLIENTE = FACTURAS_CLIENTE.ID_CLIENTE) - LEFT JOIN IMPRESIONES - ON ((IMPRESIONES.ID_TABLA = FACTURAS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'FACTURASCLIENTE')); -; - - -/* Drop altered view: V_FACTURAS_PROVEEDOR */ -DROP VIEW V_FACTURAS_PROVEEDOR; - -/* Create altered view: V_FACTURAS_PROVEEDOR */ -/* Create view: V_FACTURAS_PROVEEDOR (ViwData.CreateDependDef) */ -CREATE VIEW V_FACTURAS_PROVEEDOR( -ID, -ID_EMPRESA, -REFERENCIA, -TIPO, -REFERENCIA_PROVEEDOR, -FECHA_FACTURA, -SITUACION, -BASE_IMPONIBLE, -DESCUENTO, -IMPORTE_DESCUENTO, -IVA, -IMPORTE_IVA, -RE, -IMPORTE_RE, -IMPORTE_TOTAL, -OBSERVACIONES, -ID_PROVEEDOR, -NIF_CIF, -NOMBRE, -CALLE, -POBLACION, -PROVINCIA, -CODIGO_POSTAL, -FECHA_ALTA, -FECHA_MODIFICACION, -USUARIO, -ID_FORMA_PAGO, -RECARGO_EQUIVALENCIA, -ID_TIPO_IVA, -IMPORTE_NETO, -IMPORTE_PORTE, -NUM_COPIAS) - AS -SELECT FACTURAS_PROVEEDOR.ID, - FACTURAS_PROVEEDOR.ID_EMPRESA, - FACTURAS_PROVEEDOR.REFERENCIA, - CASE WHEN (FACTURAS_PROVEEDOR.IMPORTE_TOTAL < 0) THEN 'A' ELSE 'F' END AS TIPO, - FACTURAS_PROVEEDOR.REFERENCIA_PROVEEDOR, - FACTURAS_PROVEEDOR.FECHA_FACTURA, - V_FAC_PRO_SITUACION.SITUACION, - FACTURAS_PROVEEDOR.BASE_IMPONIBLE, - FACTURAS_PROVEEDOR.DESCUENTO, - FACTURAS_PROVEEDOR.IMPORTE_DESCUENTO, - FACTURAS_PROVEEDOR.IVA, - FACTURAS_PROVEEDOR.IMPORTE_IVA, - FACTURAS_PROVEEDOR.RE, - FACTURAS_PROVEEDOR.IMPORTE_RE, - FACTURAS_PROVEEDOR.IMPORTE_TOTAL, - FACTURAS_PROVEEDOR.OBSERVACIONES, - FACTURAS_PROVEEDOR.ID_PROVEEDOR, - FACTURAS_PROVEEDOR.NIF_CIF, - FACTURAS_PROVEEDOR.NOMBRE, - FACTURAS_PROVEEDOR.CALLE, - FACTURAS_PROVEEDOR.POBLACION, - FACTURAS_PROVEEDOR.PROVINCIA, - FACTURAS_PROVEEDOR.CODIGO_POSTAL, - FACTURAS_PROVEEDOR.FECHA_ALTA, - FACTURAS_PROVEEDOR.FECHA_MODIFICACION, - FACTURAS_PROVEEDOR.USUARIO, - FACTURAS_PROVEEDOR.ID_FORMA_PAGO, - FACTURAS_PROVEEDOR.RECARGO_EQUIVALENCIA, - FACTURAS_PROVEEDOR.ID_TIPO_IVA, - FACTURAS_PROVEEDOR.IMPORTE_NETO, - FACTURAS_PROVEEDOR.IMPORTE_PORTE, - IMPRESIONES.NUM_COPIAS - FROM V_FAC_PRO_SITUACION - LEFT JOIN FACTURAS_PROVEEDOR - ON (FACTURAS_PROVEEDOR.ID = V_FAC_PRO_SITUACION.ID_FACTURA) - LEFT JOIN PROVEEDORES_DATOS - ON (PROVEEDORES_DATOS.ID_PROVEEDOR = FACTURAS_PROVEEDOR.ID_PROVEEDOR) - LEFT JOIN IMPRESIONES - ON ((IMPRESIONES.ID_TABLA = FACTURAS_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'FACTURASPROVEEDOR')); -; - - - -/* Drop altered view: V_PEDIDOS_CLIENTE */ -DROP VIEW V_PEDIDOS_CLIENTE; - -/* Create altered view: V_PEDIDOS_CLIENTE */ -/* Create view: V_PEDIDOS_CLIENTE (ViwData.CreateDependDef) */ -CREATE VIEW V_PEDIDOS_CLIENTE( -ID, -ID_EMPRESA, -ID_CLIENTE, -NOMBRE, -REFERENCIA, -REFERENCIA_CLIENTE, -SITUACION, -FECHA_PEDIDO, -CALLE, -CODIGO_POSTAL, -POBLACION, -PROVINCIA, -PERSONA_CONTACTO, -TELEFONO, -OBSERVACIONES, -INCIDENCIAS, -INCIDENCIAS_ACTIVAS, -FECHA_ALTA, -FECHA_MODIFICACION, -USUARIO, -IMPORTE_NETO, -IMPORTE_PORTE, -DESCUENTO, -IMPORTE_DESCUENTO, -BASE_IMPONIBLE, -IVA, -IMPORTE_IVA, -IMPORTE_TOTAL, -ID_FORMA_PAGO, -REF_TIENDA_WEB, -FECHA_PREVISTA_ENVIO, -NUM_COPIAS) - AS -SELECT - PEDIDOS_CLIENTE.ID, - PEDIDOS_CLIENTE.ID_EMPRESA, - PEDIDOS_CLIENTE.ID_CLIENTE, - V_CLIENTES.NOMBRE, - PEDIDOS_CLIENTE.REFERENCIA, - PEDIDOS_CLIENTE.REFERENCIA_CLIENTE, - V_PED_CLI_SITUACION.SITUACION, - PEDIDOS_CLIENTE.FECHA_PEDIDO, - PEDIDOS_CLIENTE.CALLE, - PEDIDOS_CLIENTE.CODIGO_POSTAL, - PEDIDOS_CLIENTE.POBLACION, - PEDIDOS_CLIENTE.PROVINCIA, - PEDIDOS_CLIENTE.PERSONA_CONTACTO, - PEDIDOS_CLIENTE.TELEFONO, - PEDIDOS_CLIENTE.OBSERVACIONES, - PEDIDOS_CLIENTE.INCIDENCIAS, - PEDIDOS_CLIENTE.INCIDENCIAS_ACTIVAS, - PEDIDOS_CLIENTE.FECHA_ALTA, - PEDIDOS_CLIENTE.FECHA_MODIFICACION, - PEDIDOS_CLIENTE.USUARIO, - PEDIDOS_CLIENTE.IMPORTE_NETO, - PEDIDOS_CLIENTE.IMPORTE_PORTE, - PEDIDOS_CLIENTE.DESCUENTO, - PEDIDOS_CLIENTE.IMPORTE_DESCUENTO, - PEDIDOS_CLIENTE.BASE_IMPONIBLE, - PEDIDOS_CLIENTE.IVA, - PEDIDOS_CLIENTE.IMPORTE_IVA, - PEDIDOS_CLIENTE.IMPORTE_TOTAL, - PEDIDOS_CLIENTE.ID_FORMA_PAGO, - PEDIDOS_CLIENTE.REF_TIENDA_WEB, - PEDIDOS_CLIENTE.FECHA_PREVISTA_ENVIO, - IMPRESIONES.NUM_COPIAS -FROM - V_PED_CLI_SITUACION - INNER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = V_PED_CLI_SITUACION.ID_PEDIDO) - INNER JOIN V_CLIENTES ON (PEDIDOS_CLIENTE.ID_CLIENTE = V_CLIENTES.ID) - LEFT JOIN IMPRESIONES - ON ((IMPRESIONES.ID_TABLA = PEDIDOS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'PEDIDOSCLIENTE')); -; - -/* Drop altered view: V_PEDIDOS_PROVEEDOR */ -DROP VIEW V_PEDIDOS_PROVEEDOR; - -/* Create altered view: V_PEDIDOS_PROVEEDOR */ -/* Create view: V_PEDIDOS_PROVEEDOR (ViwData.CreateDependDef) */ -CREATE VIEW V_PEDIDOS_PROVEEDOR( -ID, -ID_EMPRESA, -ID_PROVEEDOR, -NOMBRE, -REFERENCIA, -SITUACION, -FECHA_ENVIO, -FECHA_PEDIDO, -FECHA_CONFIRMACION, -FECHA_ENTREGA, -ID_ALMACEN, -NOMBRE_ALMACEN, -OBSERVACIONES, -IMPORTE_TOTAL, -INCIDENCIAS, -INCIDENCIAS_ACTIVAS, -CALLE, -POBLACION, -PROVINCIA, -CODIGO_POSTAL, -PERSONA_CONTACTO, -TELEFONO, -FECHA_ALTA, -FECHA_MODIFICACION, -USUARIO, -ID_PEDIDO_CLIENTE, -REF_PED_CLIENTE, -IMPORTE_NETO, -IMPORTE_PORTE, -DESCUENTO, -IMPORTE_DESCUENTO, -BASE_IMPONIBLE, -IVA, -IMPORTE_IVA, -ID_FORMA_PAGO, -NUM_COPIAS) - AS -SELECT - PEDIDOS_PROVEEDOR.ID, - PEDIDOS_PROVEEDOR.ID_EMPRESA, - PEDIDOS_PROVEEDOR.ID_PROVEEDOR, - V_PROVEEDORES.NOMBRE, - PEDIDOS_PROVEEDOR.REFERENCIA, - V_PED_PROV_SITUACION.SITUACION, - PEDIDOS_PROVEEDOR.FECHA_ENVIO, - PEDIDOS_PROVEEDOR.FECHA_PEDIDO, - PEDIDOS_PROVEEDOR.FECHA_CONFIRMACION, - PEDIDOS_PROVEEDOR.FECHA_ENTREGA, - PEDIDOS_PROVEEDOR.ID_ALMACEN, - ALMACENES.NOMBRE AS NOMBRE_ALMACEN, - PEDIDOS_PROVEEDOR.OBSERVACIONES, - PEDIDOS_PROVEEDOR.IMPORTE_TOTAL, - PEDIDOS_PROVEEDOR.INCIDENCIAS, - PEDIDOS_PROVEEDOR.INCIDENCIAS_ACTIVAS, - PEDIDOS_PROVEEDOR.CALLE, - PEDIDOS_PROVEEDOR.POBLACION, - PEDIDOS_PROVEEDOR.PROVINCIA, - PEDIDOS_PROVEEDOR.CODIGO_POSTAL, - PEDIDOS_PROVEEDOR.PERSONA_CONTACTO, - PEDIDOS_PROVEEDOR.TELEFONO, - PEDIDOS_PROVEEDOR.FECHA_ALTA, - PEDIDOS_PROVEEDOR.FECHA_MODIFICACION, - PEDIDOS_PROVEEDOR.USUARIO, - PEDIDOS_PROVEEDOR.ID_PEDIDO_CLIENTE, - PEDIDOS_CLIENTE.REFERENCIA AS REF_PED_CLIENTE, - PEDIDOS_PROVEEDOR.IMPORTE_NETO, - PEDIDOS_PROVEEDOR.IMPORTE_PORTE, - PEDIDOS_PROVEEDOR.DESCUENTO, - PEDIDOS_PROVEEDOR.IMPORTE_DESCUENTO, - PEDIDOS_PROVEEDOR.BASE_IMPONIBLE, - PEDIDOS_PROVEEDOR.IVA, - PEDIDOS_PROVEEDOR.IMPORTE_IVA, - PEDIDOS_PROVEEDOR.ID_FORMA_PAGO, - IMPRESIONES.NUM_COPIAS -FROM - PEDIDOS_PROVEEDOR - INNER JOIN V_PROVEEDORES ON (PEDIDOS_PROVEEDOR.ID_PROVEEDOR = V_PROVEEDORES.ID) - INNER JOIN V_PED_PROV_SITUACION ON (V_PED_PROV_SITUACION.ID_PEDIDO = PEDIDOS_PROVEEDOR.ID) - LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = PEDIDOS_PROVEEDOR.ID_ALMACEN) - LEFT OUTER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = PEDIDOS_PROVEEDOR.ID_PEDIDO_CLIENTE) - LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = PEDIDOS_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'PEDIDOSPROVEEDOR')); -; - - -/* Drop altered view: V_RECIBOS_CLIENTE */ -DROP VIEW V_RECIBOS_CLIENTE; - -/* Create altered view: V_RECIBOS_CLIENTE */ -/* Create view: V_RECIBOS_CLIENTE (ViwData.CreateDependDef) */ -CREATE VIEW V_RECIBOS_CLIENTE( -ID, -ID_RECIBO_COMPENSADO, -REFERENCIA_REC_COMPENSADO, -REFERENCIA, -SITUACION, -ID_FACTURA, -ID_REMESA, -REFERENCIA_REMESA, -FECHA_EMISION, -FECHA_VENCIMIENTO, -DESCRIPCION, -OBSERVACIONES, -IMPORTE, -OTROS_GASTOS, -IMPORTE_TOTAL, -FECHA_FACTURA, -FORMA_PAGO_FACTURA, -IMPORTE_FACTURA, -ID_EMPRESA, -ID_CLIENTE, -NOMBRE_CLIENTE, -NIF_CIF_CLIENTE, -ENTIDAD_CLIENTE, -SUCURSAL_CLIENTE, -DC_CLIENTE, -CUENTA_CLIENTE, -FECHA_ALTA, -FECHA_MODIFICACION, -USUARIO, -NUM_COPIAS) - AS -SELECT RECIBOS_CLIENTE.ID, - RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO, - RECIBO_COMPENSADO1.REFERENCIA, - RECIBOS_CLIENTE.REFERENCIA, - CASE - WHEN RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO IS NULL - THEN V_REC_CLI_SITUACION.SITUACION - ELSE RECIBO_COMPENSADO2.SITUACION - END, - RECIBOS_CLIENTE.ID_FACTURA, - RECIBOS_CLIENTE.ID_REMESA, REMESAS_CLIENTE.REFERENCIA as REFERENCIA_REMESA, - RECIBOS_CLIENTE.FECHA_EMISION, RECIBOS_CLIENTE.FECHA_VENCIMIENTO, RECIBOS_CLIENTE.DESCRIPCION, - RECIBOS_CLIENTE.OBSERVACIONES, RECIBOS_CLIENTE.IMPORTE, RECIBOS_CLIENTE.OTROS_GASTOS, - COALESCE(RECIBOS_CLIENTE.IMPORTE, 0) + COALESCE(RECIBOS_CLIENTE.OTROS_GASTOS, 0) + COALESCE(V_REC_CLI_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO, 0), - - FACTURAS_CLIENTE.FECHA_FACTURA, FORMAS_PAGO.DESCRIPCION, FACTURAS_CLIENTE.IMPORTE_TOTAL, - FACTURAS_CLIENTE.ID_EMPRESA, - - CONTACTOS.ID as ID_CLIENTE, CONTACTOS.NOMBRE, CONTACTOS.NIF_CIF, CONTACTOS_DATOS_BANCO.ENTIDAD, - CONTACTOS_DATOS_BANCO.SUCURSAL, CONTACTOS_DATOS_BANCO.DC, CONTACTOS_DATOS_BANCO.CUENTA, - - RECIBOS_CLIENTE.FECHA_ALTA, - RECIBOS_CLIENTE.FECHA_MODIFICACION, - RECIBOS_CLIENTE.USUARIO, - IMPRESIONES.NUM_COPIAS - -FROM RECIBOS_CLIENTE -LEFT JOIN V_REC_CLI_SITUACION -ON (V_REC_CLI_SITUACION.ID_RECIBO = RECIBOS_CLIENTE.ID) -LEFT JOIN FACTURAS_CLIENTE -ON (FACTURAS_CLIENTE.ID = RECIBOS_CLIENTE.ID_FACTURA) -LEFT JOIN FORMAS_PAGO -ON (FORMAS_PAGO.ID = FACTURAS_CLIENTE.ID_FORMA_PAGO) -LEFT JOIN CONTACTOS -ON (CONTACTOS.ID = FACTURAS_CLIENTE.ID_CLIENTE) -LEFT JOIN CONTACTOS_DATOS_BANCO -ON (CONTACTOS_DATOS_BANCO.ID_CONTACTO = CONTACTOS.ID) -LEFT JOIN REMESAS_CLIENTE -ON (REMESAS_CLIENTE.ID = RECIBOS_CLIENTE.ID_REMESA) -LEFT JOIN V_REC_CLI_COMPENSADOS -ON (V_REC_CLI_COMPENSADOS.ID_RECIBO = RECIBOS_CLIENTE.ID) -LEFT JOIN RECIBOS_CLIENTE RECIBO_COMPENSADO1 -ON (RECIBO_COMPENSADO1.ID = RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO) -LEFT JOIN V_REC_CLI_SITUACION RECIBO_COMPENSADO2 -ON (RECIBO_COMPENSADO2.ID_RECIBO = RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO) -LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = RECIBOS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'RECIBOSCLIENTE')); -; - -/* Drop altered view: V_REMESAS_CLIENTE */ -DROP VIEW V_REMESAS_CLIENTE; - -/* Create altered view: V_REMESAS_CLIENTE */ -/* Create view: V_REMESAS_CLIENTE (ViwData.CreateDependDef) */ -CREATE VIEW V_REMESAS_CLIENTE( -ID, -ID_EMPRESA, -REFERENCIA, -TIPO, -FECHA_REMESA, -DESCRIPCION, -ID_DATOS_BANCO, -FECHA_ALTA, -FECHA_MODIFICACION, -USUARIO, -NOMBRE, -ENTIDAD, -SUCURSAL, -DC, -CUENTA, -SUFIJO_N19, -SUFIJO_N58, -NUM_COPIAS, -IMPORTE_TOTAL) - AS -SELECT - REMESAS_CLIENTE.ID, - REMESAS_CLIENTE.ID_EMPRESA, - REMESAS_CLIENTE.REFERENCIA, - REMESAS_CLIENTE.TIPO, - REMESAS_CLIENTE.FECHA_REMESA, - REMESAS_CLIENTE.DESCRIPCION, - REMESAS_CLIENTE.ID_DATOS_BANCO, - REMESAS_CLIENTE.FECHA_ALTA, - REMESAS_CLIENTE.FECHA_MODIFICACION, - REMESAS_CLIENTE.USUARIO, - EMPRESAS_DATOS_BANCO.NOMBRE, - EMPRESAS_DATOS_BANCO.ENTIDAD, - EMPRESAS_DATOS_BANCO.SUCURSAL, - EMPRESAS_DATOS_BANCO.DC, - EMPRESAS_DATOS_BANCO.CUENTA, - EMPRESAS_DATOS_BANCO.SUFIJO_N19, - EMPRESAS_DATOS_BANCO.SUFIJO_N58, - IMPRESIONES.NUM_COPIAS, - SUM(COALESCE(RECIBOS_CLIENTE.IMPORTE,0) + COALESCE(RECIBOS_CLIENTE.OTROS_GASTOS,0) + COALESCE(V_REC_CLI_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO,0)) as IMPORTE_TOTAL - -FROM - REMESAS_CLIENTE - LEFT OUTER JOIN EMPRESAS_DATOS_BANCO ON (EMPRESAS_DATOS_BANCO.ID = REMESAS_CLIENTE.ID_DATOS_BANCO) - LEFT OUTER JOIN RECIBOS_CLIENTE ON (RECIBOS_CLIENTE.ID_REMESA = REMESAS_CLIENTE.ID) - LEFT OUTER JOIN V_REC_CLI_COMPENSADOS ON (V_REC_CLI_COMPENSADOS.ID_RECIBO = RECIBOS_CLIENTE.ID) - LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = REMESAS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'REMESASCLIENTE')) -GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18; -; - - -/* Drop altered view: V_REMESAS_PROVEEDOR */ -DROP VIEW V_REMESAS_PROVEEDOR; - -/* Create altered view: V_REMESAS_PROVEEDOR */ -/* Create view: V_REMESAS_PROVEEDOR (ViwData.CreateDependDef) */ -CREATE VIEW V_REMESAS_PROVEEDOR( -ID, -ID_EMPRESA, -REFERENCIA, -TIPO, -FECHA_REMESA, -DESCRIPCION, -ID_DATOS_BANCO, -FECHA_ALTA, -FECHA_MODIFICACION, -USUARIO, -NOMBRE, -ENTIDAD, -SUCURSAL, -DC, -CUENTA, -SUFIJO_N19, -SUFIJO_N58, -NUM_COPIAS, -IMPORTE_TOTAL) - AS -SELECT - REMESAS_PROVEEDOR.ID, - REMESAS_PROVEEDOR.ID_EMPRESA, - REMESAS_PROVEEDOR.REFERENCIA, - REMESAS_PROVEEDOR.TIPO, - REMESAS_PROVEEDOR.FECHA_REMESA, - REMESAS_PROVEEDOR.DESCRIPCION, - REMESAS_PROVEEDOR.ID_DATOS_BANCO, - REMESAS_PROVEEDOR.FECHA_ALTA, - REMESAS_PROVEEDOR.FECHA_MODIFICACION, - REMESAS_PROVEEDOR.USUARIO, - EMPRESAS_DATOS_BANCO.NOMBRE, - EMPRESAS_DATOS_BANCO.ENTIDAD, - EMPRESAS_DATOS_BANCO.SUCURSAL, - EMPRESAS_DATOS_BANCO.DC, - EMPRESAS_DATOS_BANCO.CUENTA, - EMPRESAS_DATOS_BANCO.SUFIJO_N19, - EMPRESAS_DATOS_BANCO.SUFIJO_N58, - IMPRESIONES.NUM_COPIAS, - SUM(COALESCE(RECIBOS_PROVEEDOR.IMPORTE,0) + COALESCE(RECIBOS_PROVEEDOR.OTROS_GASTOS,0) + COALESCE(V_REC_PRO_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO,0)) as IMPORTE_TOTAL - -FROM - REMESAS_PROVEEDOR - LEFT OUTER JOIN EMPRESAS_DATOS_BANCO ON (EMPRESAS_DATOS_BANCO.ID = REMESAS_PROVEEDOR.ID_DATOS_BANCO) - LEFT OUTER JOIN RECIBOS_PROVEEDOR ON (RECIBOS_PROVEEDOR.ID_REMESA = REMESAS_PROVEEDOR.ID) - LEFT OUTER JOIN V_REC_PRO_COMPENSADOS ON (V_REC_PRO_COMPENSADOS.ID_RECIBO = RECIBOS_PROVEEDOR.ID) - LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = REMESAS_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'REMESASPROVEEDOR')) -GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18; -; - - -/* Create index... */ -CREATE INDEX IMPRESIONES_IDX1 ON IMPRESIONES(ID_TABLA); - -CREATE INDEX IMPRESIONES_IDX2 ON IMPRESIONES(TABLA); - -/* Create Primary Key... */ -ALTER TABLE IMPRESIONES ADD CONSTRAINT PK_IMPRESIONES PRIMARY KEY (ID); - - -CREATE VIEW V_AGENTES_COMISIONES_DET_FAC( -ID_FACTURA, -ID_EMPRESA, -FECHA, -REFERENCIA, -SITUACION, -ID_COMISION_LIQUIDADA, -ID_CLIENTE, -ID_AGENTE, -ID_ARTICULO, -ID_PROVEEDOR, -IMPORTE_TOTAL, -COMISION, -IMPORTE_COMISION) - AS -SELECT V_FACTURAS_CLIENTE.ID, - V_FACTURAS_CLIENTE.ID_EMPRESA, - V_FACTURAS_CLIENTE.FECHA_FACTURA, - V_FACTURAS_CLIENTE.REFERENCIA, - V_FACTURAS_CLIENTE.SITUACION, - V_FACTURAS_CLIENTE.ID_COMISION_LIQUIDADA, - V_FACTURAS_CLIENTE.ID_CLIENTE, - V_FACTURAS_CLIENTE.ID_AGENTE, - - FACTURAS_CLIENTE_DETALLES.ID_ARTICULO, ARTICULOS.ID_PROVEEDOR, - FACTURAS_CLIENTE_DETALLES.IMPORTE_TOTAL, COALESCE(AGENTES_COMISIONES.COMISION, 0) as COMISION, - - (CASE COALESCE(AGENTES_COMISIONES.COMISION, 0) WHEN 0 THEN 0 - ELSE ((FACTURAS_CLIENTE_DETALLES.IMPORTE_TOTAL * AGENTES_COMISIONES.COMISION)/100) END) as IMPORTE_COMISION - -FROM V_FACTURAS_CLIENTE -LEFT JOIN FACTURAS_CLIENTE_DETALLES ON (FACTURAS_CLIENTE_DETALLES.ID_FACTURA = V_FACTURAS_CLIENTE.ID) -LEFT JOIN ARTICULOS ON (ARTICULOS.ID = FACTURAS_CLIENTE_DETALLES.ID_ARTICULO) -LEFT JOIN AGENTES_COMISIONES ON ((AGENTES_COMISIONES.ID_AGENTE = V_FACTURAS_CLIENTE.ID_AGENTE) -AND (AGENTES_COMISIONES.ID_PROVEEDOR = ARTICULOS.ID_PROVEEDOR)) -WHERE (FACTURAS_CLIENTE_DETALLES.TIPO_DETALLE = 'Concepto') -AND (ARTICULOS.ID is not null) -AND (ARTICULOS.COMISIONABLE = 1); -; +from V_PED_PROV_ARTICULOS +left join PEDIDOS_PROVEEDOR on (PEDIDOS_PROVEEDOR.id = V_PED_PROV_ARTICULOS.id_pedido) +left join CONTACTOS on (contactos.id = PEDIDOS_PROVEEDOR.id_proveedor) +left join articulos on (articulos.id = V_PED_PROV_ARTICULOS.ID_ARTICULO) +where cantidad_pendiente > 0;