This commit is contained in:
roberto 2008-07-29 11:57:02 +00:00
parent 8edf3d7026
commit 1713b2b4a9

View File

@ -1,828 +1,147 @@
CREATE TABLE IMPRESIONES( DROP VIEW V_PED_PROV_ART_SIN_ALBARAN;
ID TIPO_ID NOT NULL, DROP VIEW V_PED_CLI_ART_SIN_ALBARAN;
ID_TABLA TIPO_ID,
TABLA VARCHAR(50) COLLATE ES_ES,
NUM_COPIAS SMALLINT
);
/* Create generator... */ CREATE VIEW V_PED_CLI_ART_SIN_ALBARAN(
CREATE GENERATOR GEN_IMPRESIONES_ID; ID,
ID_PEDIDO,
CREATE PROCEDURE PRO_ANADIR_MARCA_IMPRESION ( ID_EMPRESA,
tabla varchar(255), REFERENCIA_PEDIDO,
id_tabla integer) REFERENCIA_CLI_PEDIDO,
as FECHA_PEDIDO,
declare variable id integer; FECHA_PREVISTA_PEDIDO,
begin ID_CLIENTE,
select ID CALLE,
from IMPRESIONES CODIGO_POSTAL,
where ID_TABLA = :ID_TABLA POBLACION,
and TABLA = UPPER(:TABLA) PROVINCIA,
into :ID; PERSONA_CONTACTO,
TELEFONO,
/*En el caso de que ya exista se modifica la cantidad en caso contrario se anade el elemetno*/ IVA,
if (ID > 0) then ID_FORMA_PAGO,
begin CLIENTE,
update IMPRESIONES ID_ARTICULO,
set NUM_COPIAS = NUM_COPIAS + 1 FAMILIA,
where ID = :ID; REFERENCIA,
end REFERENCIA_PROVEEDOR,
else DESCRIPCION,
begin CANTIDAD_PEDIDA,
insert into IMPRESIONES (ID, TABLA, ID_TABLA, NUM_COPIAS) CANTIDAD_RESERVADA,
values (GEN_ID(GEN_IMPRESIONES_ID, 1), UPPER(:TABLA), :ID_TABLA, 1); CANTIDAD_ENVIADA,
end CANTIDAD_SERVIDA,
suspend; CANTIDAD_PENDIENTE,
end; PRECIO_COSTE,
DESCUENTO,
PRECION_NETO)
DROP VIEW V_ALBARANES_CLIENTE; AS
/* 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
SELECT SELECT
ALBARANES_CLIENTE.ID, 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*/
ALBARANES_CLIENTE.ID_EMPRESA, V_PED_CLI_ARTICULOS.ID_PEDIDO,
ALBARANES_CLIENTE.ID_CLIENTE, PEDIDOS_CLIENTE.ID_EMPRESA,
CLIENTES.NOMBRE, PEDIDOS_CLIENTE.referencia,
ALBARANES_CLIENTE.FECHA_ALBARAN, PEDIDOS_CLIENTE.referencia_cliente,
ALBARANES_CLIENTE.REFERENCIA, PEDIDOS_CLIENTE.fecha_pedido,
ALBARANES_CLIENTE.REFERENCIA_CLIENTE, PEDIDOS_CLIENTE.fecha_prevista_envio,
ALBARANES_CLIENTE.TIPO, PEDIDOS_CLIENTE.id_cliente,
V_ALB_CLI_SITUACION.SITUACION, PEDIDOS_CLIENTE.CALLE,
ALBARANES_CLIENTE.ID_ALMACEN, PEDIDOS_CLIENTE.CODIGO_POSTAL,
ALMACENES.NOMBRE AS NOMBRE_ALMACEN, PEDIDOS_CLIENTE.POBLACION,
ALBARANES_CLIENTE.ID_PEDIDO, PEDIDOS_CLIENTE.PROVINCIA,
PEDIDOS_CLIENTE.REFERENCIA AS REF_PEDIDO, PEDIDOS_CLIENTE.PERSONA_CONTACTO,
ALBARANES_CLIENTE.ID_FACTURA, PEDIDOS_CLIENTE.TELEFONO,
FACTURAS_CLIENTE.REFERENCIA AS REF_FACTURA, PEDIDOS_CLIENTE.IVA,
ALBARANES_CLIENTE.CALLE, PEDIDOS_CLIENTE.ID_FORMA_PAGO,
ALBARANES_CLIENTE.CODIGO_POSTAL, CONTACTOS.nombre,
ALBARANES_CLIENTE.POBLACION, V_PED_CLI_ARTICULOS.ID_ARTICULO,
ALBARANES_CLIENTE.PROVINCIA, articulos.familia,
ALBARANES_CLIENTE.PERSONA_CONTACTO, articulos.referencia,
ALBARANES_CLIENTE.TELEFONO, articulos.referencia_prov,
ALBARANES_CLIENTE.IMPORTE_NETO, articulos.descripcion,
ALBARANES_CLIENTE.IMPORTE_PORTE, V_PED_CLI_ARTICULOS.CANTIDAD_PEDIDA,
ALBARANES_CLIENTE.DESCUENTO, V_PED_CLI_ARTICULOS.CANTIDAD_RESERVADA,
ALBARANES_CLIENTE.IMPORTE_DESCUENTO, V_PED_CLI_ARTICULOS.CANTIDAD_ENVIADA,
ALBARANES_CLIENTE.BASE_IMPONIBLE, V_PED_CLI_ARTICULOS.CANTIDAD_SERVIDA,
ALBARANES_CLIENTE.IVA, V_PED_CLI_ARTICULOS.CANTIDAD_PENDIENTE,
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'));
;
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 */ CREATE VIEW V_PED_PROV_ART_SIN_ALBARAN(
DROP VIEW V_ALBARANES_PROVEEDOR; ID,
ID_PEDIDO,
/* Create altered view: V_ALBARANES_PROVEEDOR */ ID_EMPRESA,
/* Create view: V_ALBARANES_PROVEEDOR (ViwData.CreateDependDef) */ REFERENCIA_PEDIDO,
CREATE VIEW V_ALBARANES_PROVEEDOR( FECHA_PEDIDO,
ID, FECHA_CONFIRMACION,
ID_EMPRESA, ID_PROVEEDOR,
ID_PROVEEDOR, CALLE,
NOMBRE, CODIGO_POSTAL,
FECHA_ALBARAN, POBLACION,
REFERENCIA, PROVINCIA,
REFERENCIA_PROVEEDOR, PERSONA_CONTACTO,
TIPO, TELEFONO,
ID_ALMACEN, IVA,
NOMBRE_ALMACEN, ID_FORMA_PAGO,
ID_PEDIDO, PROVEEDOR,
REF_PED_PROVEEDOR, ID_ARTICULO,
ID_FACTURA, FAMILIA,
REF_FACTURA, REFERENCIA,
REF_FACTURA_PROV, REFERENCIA_PROVEEDOR,
CALLE, DESCRIPCION,
CODIGO_POSTAL, CANTIDAD_PEDIDA,
POBLACION, CANTIDAD_RECIBIDA,
PROVINCIA, CANTIDAD_PENDIENTE,
PERSONA_CONTACTO, PRECIO_COSTE,
TELEFONO, DESCUENTO,
IMPORTE_NETO, PRECIO_NETO,
IMPORTE_PORTE, PRECIO_PORTE)
DESCUENTO, AS
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
IMPORTE_TOTAL,
OBSERVACIONES,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
NUM_COPIAS)
AS
SELECT SELECT
ALBARANES_PROVEEDOR.ID, 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*/
ALBARANES_PROVEEDOR.ID_EMPRESA, V_PED_PROV_ARTICULOS.ID_PEDIDO,
ALBARANES_PROVEEDOR.ID_PROVEEDOR, PEDIDOS_PROVEEDOR.ID_EMPRESA,
CONTACTOS.NOMBRE, PEDIDOS_PROVEEDOR.referencia,
ALBARANES_PROVEEDOR.FECHA_ALBARAN, PEDIDOS_PROVEEDOR.fecha_pedido,
ALBARANES_PROVEEDOR.REFERENCIA, PEDIDOS_PROVEEDOR.fecha_confirmacion,
ALBARANES_PROVEEDOR.REFERENCIA_PROVEEDOR, PEDIDOS_PROVEEDOR.id_proveedor,
ALBARANES_PROVEEDOR.TIPO, PEDIDOS_PROVEEDOR.CALLE,
ALBARANES_PROVEEDOR.ID_ALMACEN, PEDIDOS_PROVEEDOR.CODIGO_POSTAL,
ALMACENES.NOMBRE AS NOMBRE_ALMACEN, PEDIDOS_PROVEEDOR.POBLACION,
ALBARANES_PROVEEDOR.ID_PEDIDO, PEDIDOS_PROVEEDOR.PROVINCIA,
PEDIDOS_PROVEEDOR.REFERENCIA AS REF_PED_PROVEEDOR, PEDIDOS_PROVEEDOR.PERSONA_CONTACTO,
ALBARANES_PROVEEDOR.ID_FACTURA, PEDIDOS_PROVEEDOR.TELEFONO,
FACTURAS_PROVEEDOR.REFERENCIA AS REF_FACTURA, PEDIDOS_PROVEEDOR.IVA,
ALBARANES_PROVEEDOR.REF_FACTURA_PROV, PEDIDOS_PROVEEDOR.ID_FORMA_PAGO,
ALBARANES_PROVEEDOR.CALLE, CONTACTOS.nombre,
ALBARANES_PROVEEDOR.CODIGO_POSTAL, V_PED_PROV_ARTICULOS.ID_ARTICULO,
ALBARANES_PROVEEDOR.POBLACION, articulos.familia,
ALBARANES_PROVEEDOR.PROVINCIA, articulos.referencia,
ALBARANES_PROVEEDOR.PERSONA_CONTACTO, articulos.referencia_prov,
ALBARANES_PROVEEDOR.TELEFONO, articulos.descripcion,
ALBARANES_PROVEEDOR.IMPORTE_NETO, V_PED_PROV_ARTICULOS.CANTIDAD_PEDIDA,
ALBARANES_PROVEEDOR.IMPORTE_PORTE, V_PED_PROV_ARTICULOS.CANTIDAD_RECIBIDA,
ALBARANES_PROVEEDOR.DESCUENTO, V_PED_PROV_ARTICULOS.CANTIDAD_PENDIENTE,
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'));
;
ARTICULOS.PRECIO_COSTE,
ARTICULOS.DESCUENTO,
ARTICULOS.PRECIO_NETO,
ARTICULOS.PRECIO_PORTE
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)
/* Drop altered view: V_FACTURAS_CLIENTE */ left join articulos on (articulos.id = V_PED_PROV_ARTICULOS.ID_ARTICULO)
DROP VIEW V_AGENTES_COMISIONES_DET_FAC; where cantidad_pendiente > 0;
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);
;