git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@1117 0c75b7a4-871f-7646-8a2f-f78d34cc349f
4206 lines
130 KiB
SQL
4206 lines
130 KiB
SQL
/******************************************************************************/
|
||
/**** Generated by IBExpert 2007.05.03 23/09/2008 10:55:38 ****/
|
||
/******************************************************************************/
|
||
|
||
SET SQL DIALECT 3;
|
||
|
||
SET NAMES ISO8859_1;
|
||
|
||
CREATE DATABASE 'FACTUGES.FDB' PAGE_SIZE 4096
|
||
DEFAULT CHARACTER SET ISO8859_1;
|
||
|
||
/******************************************************************************/
|
||
/**** User Defined Functions ****/
|
||
/******************************************************************************/
|
||
|
||
DECLARE EXTERNAL FUNCTION F_RTFTOTEXT
|
||
CString(32767)
|
||
RETURNS CString(32767)
|
||
ENTRY_POINT 'RtfToText' MODULE_NAME 'udf_RtfToText.dll';
|
||
|
||
DECLARE EXTERNAL FUNCTION "MOD"
|
||
INTEGER,
|
||
INTEGER
|
||
RETURNS DOUBLE PRECISION BY VALUE
|
||
ENTRY_POINT 'IB_UDF_mod' MODULE_NAME 'ib_udf';
|
||
|
||
|
||
DECLARE EXTERNAL FUNCTION STRLEN
|
||
CSTRING(254)
|
||
RETURNS INTEGER BY VALUE
|
||
ENTRY_POINT 'IB_UDF_strlen' MODULE_NAME 'ib_udf';
|
||
|
||
|
||
DECLARE EXTERNAL FUNCTION SUBSTR
|
||
CSTRING(254),
|
||
SMALLINT,
|
||
SMALLINT
|
||
RETURNS CSTRING(254) FREE_IT
|
||
ENTRY_POINT 'IB_UDF_substr' MODULE_NAME 'ib_udf';
|
||
|
||
|
||
DECLARE EXTERNAL FUNCTION DIV
|
||
INTEGER,
|
||
INTEGER
|
||
RETURNS DOUBLE PRECISION BY VALUE
|
||
ENTRY_POINT 'IB_UDF_div' MODULE_NAME 'ib_udf';
|
||
|
||
|
||
/******************************************************************************/
|
||
/**** Domains ****/
|
||
/******************************************************************************/
|
||
|
||
CREATE DOMAIN TIPO_BINARIO AS
|
||
BLOB SUB_TYPE 0 SEGMENT SIZE 80;
|
||
|
||
CREATE DOMAIN TIPO_BOOLEANO AS
|
||
SMALLINT;
|
||
|
||
CREATE DOMAIN TIPO_CANTIDAD AS
|
||
NUMERIC(11,2);
|
||
|
||
CREATE DOMAIN TIPO_CONCEPTO AS
|
||
VARCHAR(2000);
|
||
|
||
CREATE DOMAIN TIPO_ID AS
|
||
INTEGER;
|
||
|
||
CREATE DOMAIN TIPO_IMPORTE AS
|
||
NUMERIC(11,2);
|
||
|
||
CREATE DOMAIN TIPO_NOTAS AS
|
||
BLOB SUB_TYPE 1 SEGMENT SIZE 80;
|
||
|
||
CREATE DOMAIN TIPO_PERFIL AS
|
||
VARCHAR(15);
|
||
|
||
CREATE DOMAIN TIPO_PORCENTAJE AS
|
||
NUMERIC(2,2);
|
||
|
||
CREATE DOMAIN TIPO_USUARIO AS
|
||
VARCHAR(30);
|
||
|
||
/******************************************************************************/
|
||
/**** Generators ****/
|
||
/******************************************************************************/
|
||
|
||
CREATE GENERATOR GEN_AGENTES_COMISIONES_ID;
|
||
SET GENERATOR GEN_AGENTES_COMISIONES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_ALBARANES_CLI_DETALLES_ID;
|
||
SET GENERATOR GEN_ALBARANES_CLI_DETALLES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_ALBARANES_CLI_ID;
|
||
SET GENERATOR GEN_ALBARANES_CLI_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_ALBARANES_PRO_DETALLES_ID;
|
||
SET GENERATOR GEN_ALBARANES_PRO_DETALLES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_ALBARANES_PRO_ID;
|
||
SET GENERATOR GEN_ALBARANES_PRO_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_ALMACENES_ID;
|
||
SET GENERATOR GEN_ALMACENES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_ARTICULOS_ID;
|
||
SET GENERATOR GEN_ARTICULOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_ARTICULOS_PROVEEDORES_ID;
|
||
SET GENERATOR GEN_ARTICULOS_PROVEEDORES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_CATEGORIAS_ID;
|
||
SET GENERATOR GEN_CATEGORIAS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_CLIENTES_DTOS_PROV_ID;
|
||
SET GENERATOR GEN_CLIENTES_DTOS_PROV_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_CLIENTES_GRUPOS_ID;
|
||
SET GENERATOR GEN_CLIENTES_GRUPOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_COMISIONES_LIQUID_ID;
|
||
SET GENERATOR GEN_COMISIONES_LIQUID_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_CONFIGURACION_ID;
|
||
SET GENERATOR GEN_CONFIGURACION_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_CONTACTOS_DATOS_BANCO_ID;
|
||
SET GENERATOR GEN_CONTACTOS_DATOS_BANCO_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_CONTACTOS_DIR_ID;
|
||
SET GENERATOR GEN_CONTACTOS_DIR_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_CONTACTOS_ID;
|
||
SET GENERATOR GEN_CONTACTOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_CONTACTOS_PERSONAL_ID;
|
||
SET GENERATOR GEN_CONTACTOS_PERSONAL_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_EMPLEADOS_GRUPOS_ID;
|
||
SET GENERATOR GEN_EMPLEADOS_GRUPOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_EMPRESAS_CONTACTOS_ID;
|
||
SET GENERATOR GEN_EMPRESAS_CONTACTOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_EMPRESAS_DATOS_BANCO_ID;
|
||
SET GENERATOR GEN_EMPRESAS_DATOS_BANCO_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_EMPRESAS_ID;
|
||
SET GENERATOR GEN_EMPRESAS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_EMPRESAS_USUARIOS_ID;
|
||
SET GENERATOR GEN_EMPRESAS_USUARIOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_FABRICANTES_ID;
|
||
SET GENERATOR GEN_FABRICANTES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_FACTURAS_CLIENTE_ID;
|
||
SET GENERATOR GEN_FACTURAS_CLIENTE_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_FACTURAS_PROVEEDOR_ID;
|
||
SET GENERATOR GEN_FACTURAS_PROVEEDOR_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_FACTURA_CLIENTE_DETALLES_ID;
|
||
SET GENERATOR GEN_FACTURA_CLIENTE_DETALLES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_FACTURA_PROV_DETALLES_ID;
|
||
SET GENERATOR GEN_FACTURA_PROV_DETALLES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_FAMILIAS_ID;
|
||
SET GENERATOR GEN_FAMILIAS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_FORMAS_PAGO_ID;
|
||
SET GENERATOR GEN_FORMAS_PAGO_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_FORMAS_PAGO_PLAZOS_ID;
|
||
SET GENERATOR GEN_FORMAS_PAGO_PLAZOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_INFORMES_ID;
|
||
SET GENERATOR GEN_INFORMES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_MOVIMIENTOS_ID;
|
||
SET GENERATOR GEN_MOVIMIENTOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_OBRAS_EJECUCIONES_ID;
|
||
SET GENERATOR GEN_OBRAS_EJECUCIONES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_OBRAS_EJEC_PRESUPUESTOS_ID;
|
||
SET GENERATOR GEN_OBRAS_EJEC_PRESUPUESTOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_OBRAS_EJEC_PEDIDOS_PROV_ID;
|
||
SET GENERATOR GEN_OBRAS_EJEC_PEDIDOS_PROV_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PAGOS_CLIENTE_ID;
|
||
SET GENERATOR GEN_PAGOS_CLIENTE_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PAGOS_PROVEEDOR_ID;
|
||
SET GENERATOR GEN_PAGOS_PROVEEDOR_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PEDIDOS_CLI_DETALLES_ID;
|
||
SET GENERATOR GEN_PEDIDOS_CLI_DETALLES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PEDIDOS_CLI_ID;
|
||
SET GENERATOR GEN_PEDIDOS_CLI_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PEDIDOS_PROV_DETALLES_ID;
|
||
SET GENERATOR GEN_PEDIDOS_PROV_DETALLES_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PEDIDOS_PROV_ID;
|
||
SET GENERATOR GEN_PEDIDOS_PROV_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PEDIDOS_PROV_PEDIDOS_ID;
|
||
SET GENERATOR GEN_PEDIDOS_PROV_PEDIDOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PERMISOSEX_ID;
|
||
SET GENERATOR GEN_PERMISOSEX_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PERMISOS_ID;
|
||
SET GENERATOR GEN_PERMISOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PRESUPUESTOS_CLI_DETALLE_ID;
|
||
SET GENERATOR GEN_PRESUPUESTOS_CLI_DETALLE_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PRESUPUESTOS_CLI_ID;
|
||
SET GENERATOR GEN_PRESUPUESTOS_CLI_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_PROVEEDORES_GRUPOS_ID;
|
||
SET GENERATOR GEN_PROVEEDORES_GRUPOS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_RECIBOS_CLIENTE_ID;
|
||
SET GENERATOR GEN_RECIBOS_CLIENTE_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_RECIBOS_PROVEEDOR_ID;
|
||
SET GENERATOR GEN_RECIBOS_PROVEEDOR_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_REFERENCIAS_ID;
|
||
SET GENERATOR GEN_REFERENCIAS_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_REMESAS_CLIENTE_ID;
|
||
SET GENERATOR GEN_REMESAS_CLIENTE_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_REMESAS_PROVEEDOR_ID;
|
||
SET GENERATOR GEN_REMESAS_PROVEEDOR_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_TIENDA_WEB_ID;
|
||
SET GENERATOR GEN_TIENDA_WEB_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_TIPOS_IVA_ID;
|
||
SET GENERATOR GEN_TIPOS_IVA_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_UNIDADES_MEDIDA_ID;
|
||
SET GENERATOR GEN_UNIDADES_MEDIDA_ID TO 1;
|
||
|
||
CREATE GENERATOR GEN_USUARIOS_ID;
|
||
SET GENERATOR GEN_USUARIOS_ID TO 1;
|
||
|
||
|
||
|
||
/******************************************************************************/
|
||
/**** Tables ****/
|
||
/******************************************************************************/
|
||
|
||
CREATE TABLE PERIODOS_AUX (
|
||
ID INTEGER,
|
||
PERIODO VARCHAR(20) COLLATE ES_ES,
|
||
VALOR SMALLINT,
|
||
DESCRIPCION VARCHAR(20) COLLATE ES_ES
|
||
);
|
||
|
||
|
||
CREATE TABLE AGENTES_COMISIONES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_AGENTE TIPO_ID DEFAULT 0 NOT NULL,
|
||
ID_PROVEEDOR SMALLINT DEFAULT 0 NOT NULL,
|
||
COMISION TIPO_PORCENTAJE DEFAULT 0
|
||
);
|
||
|
||
CREATE TABLE ALBARANES_CLIENTE (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
ID_CLIENTE TIPO_ID,
|
||
FECHA_ALBARAN DATE,
|
||
ID_ALMACEN TIPO_ID,
|
||
ID_PEDIDO TIPO_ID,
|
||
ID_FACTURA TIPO_ID,
|
||
TIPO VARCHAR(1),
|
||
REFERENCIA VARCHAR(255),
|
||
ID_DIRECCION TIPO_ID,
|
||
CALLE VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
POBLACION VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
PERSONA_CONTACTO VARCHAR(255),
|
||
TELEFONO VARCHAR(25),
|
||
IMPORTE_NETO TIPO_IMPORTE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_DESCUENTO TIPO_IMPORTE,
|
||
BASE_IMPONIBLE TIPO_IMPORTE,
|
||
IVA TIPO_PORCENTAJE,
|
||
IMPORTE_IVA TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
OBSERVACIONES TIPO_NOTAS,
|
||
INCIDENCIAS TIPO_NOTAS,
|
||
INCIDENCIAS_ACTIVAS SMALLINT DEFAULT 0 NOT NULL,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
ID_FORMA_PAGO TIPO_ID,
|
||
FECHA_ENVIO DATE,
|
||
FECHA_RECEPCION DATE,
|
||
FECHA_PREVISTA_ENVIO DATE,
|
||
REFERENCIA_CLIENTE VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE ALBARANES_CLIENTE_DETALLES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_ALBARAN TIPO_ID NOT NULL,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
ID_ARTICULO TIPO_ID,
|
||
CONCEPTO TIPO_CONCEPTO,
|
||
CANTIDAD TIPO_CANTIDAD,
|
||
UNIDAD_MEDIDA VARCHAR(255),
|
||
IMPORTE_UNIDAD TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
VISIBLE TIPO_BOOLEANO,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
ID_PEDIDO TIPO_ID
|
||
);
|
||
|
||
CREATE TABLE ALBARANES_PROVEEDOR (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
ID_PROVEEDOR TIPO_ID,
|
||
ID_DIRECCION TIPO_ID,
|
||
PERSONA_CONTACTO_PROV VARCHAR(255),
|
||
FECHA_ALBARAN DATE,
|
||
ID_PEDIDO TIPO_ID,
|
||
ID_FACTURA TIPO_ID,
|
||
TIPO VARCHAR(1),
|
||
REFERENCIA VARCHAR(255),
|
||
CALLE VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
POBLACION VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
PERSONA_CONTACTO VARCHAR(255),
|
||
TELEFONO VARCHAR(25),
|
||
BASE_IMPONIBLE TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_DESCUENTO TIPO_IMPORTE,
|
||
IVA TIPO_PORCENTAJE,
|
||
IMPORTE_IVA TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
OBSERVACIONES TIPO_NOTAS,
|
||
INCIDENCIAS TIPO_NOTAS,
|
||
INCIDENCIAS_ACTIVAS SMALLINT DEFAULT 0 NOT NULL,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
ID_ALMACEN TIPO_ID,
|
||
ID_FORMA_PAGO TIPO_ID,
|
||
IMPORTE_NETO TIPO_IMPORTE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
REFERENCIA_PROVEEDOR VARCHAR(255),
|
||
REF_FACTURA_PROV VARCHAR(255),
|
||
ID_ALBARAN TIPO_ID
|
||
);
|
||
|
||
CREATE TABLE ALBARANES_PROVEEDOR_DETALLES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_ALBARAN TIPO_ID NOT NULL,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
ID_ARTICULO TIPO_ID,
|
||
CONCEPTO TIPO_CONCEPTO,
|
||
CANTIDAD TIPO_CANTIDAD,
|
||
UNIDAD_MEDIDA VARCHAR(255),
|
||
IMPORTE_UNIDAD TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
VISIBLE TIPO_BOOLEANO,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
ID_PEDIDO TIPO_ID
|
||
);
|
||
|
||
CREATE TABLE ALMACENES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID NOT NULL,
|
||
TIPO_ALMACEN VARCHAR(10),
|
||
NOMBRE VARCHAR(255),
|
||
CALLE VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
POBLACION VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
TELEFONO VARCHAR(25),
|
||
MOVIL VARCHAR(25),
|
||
FAX VARCHAR(25),
|
||
PERSONA_CONTACTO VARCHAR(255),
|
||
OBSERVACIONES TIPO_NOTAS,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO
|
||
);
|
||
|
||
CREATE TABLE ARTICULOS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
DESCRIPCION VARCHAR(255),
|
||
FAMILIA VARCHAR(255),
|
||
UNIDAD_MEDIDA VARCHAR(255),
|
||
IMAGEN TIPO_BINARIO,
|
||
COMISIONABLE TIPO_BOOLEANO,
|
||
FABRICANTE VARCHAR(255),
|
||
REFERENCIA_FABR VARCHAR(255),
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
INVENTARIABLE TIPO_BOOLEANO,
|
||
ELIMINADO TIPO_BOOLEANO,
|
||
PARAM_MARGEN FLOAT,
|
||
TIEMPO INTEGER,
|
||
PARAM_TIEMPO FLOAT,
|
||
MANO_OBRA TIPO_IMPORTE
|
||
);
|
||
|
||
CREATE TABLE ARTICULOS_PROVEEDORES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_ARTICULO TIPO_ID,
|
||
ID_PROVEEDOR TIPO_ID,
|
||
REFERENCIA_PROV VARCHAR(255),
|
||
PRECIO_COSTE TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
PRECIO_NETO TIPO_IMPORTE,
|
||
PRECIO_PORTE TIPO_IMPORTE,
|
||
PRECIO_PVP_VENTA TIPO_IMPORTE,
|
||
PRECIO_PVP_TOTAL TIPO_IMPORTE,
|
||
FECHA_ACTUALIZACION DATE
|
||
);
|
||
|
||
CREATE TABLE CATEGORIAS (
|
||
ID TIPO_ID NOT NULL,
|
||
CATEGORIA VARCHAR(255) NOT NULL
|
||
);
|
||
|
||
CREATE TABLE CLIENTES_DATOS (
|
||
ID_CLIENTE TIPO_ID NOT NULL,
|
||
ID_AGENTE TIPO_ID,
|
||
GRUPO_CLIENTE VARCHAR(255),
|
||
NOMBRE_COMERCIAL VARCHAR(255),
|
||
VENCIMIENTO_FACTURAS INTEGER,
|
||
BLOQUEADO TIPO_BOOLEANO DEFAULT 0 NOT NULL,
|
||
REGIMEN_IVA VARCHAR(255),
|
||
MOTIVO_BLOQUEO VARCHAR(255),
|
||
RECARGO_EQUIVALENCIA TIPO_BOOLEANO,
|
||
ID_TIPO_IVA TIPO_ID,
|
||
ID_FORMA_PAGO TIPO_ID,
|
||
TIENDA_WEB TIPO_BOOLEANO,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
CODIGO_ASIGNADO VARCHAR(255),
|
||
VENCIMIENTO_FACTURAS_1 SMALLINT,
|
||
VENCIMIENTO_FACTURAS_2 SMALLINT,
|
||
VENCIMIENTO_FACTURAS_3 SMALLINT,
|
||
FELICITACION TIPO_BOOLEANO,
|
||
FECHA_INGRESO DATE
|
||
);
|
||
|
||
CREATE TABLE CLIENTES_DTOS_PROVEEDORES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_CLIENTE TIPO_ID DEFAULT 0 NOT NULL,
|
||
ID_PROVEEDOR SMALLINT DEFAULT 0 NOT NULL,
|
||
DESCUENTO TIPO_PORCENTAJE DEFAULT 0
|
||
);
|
||
|
||
CREATE TABLE CLIENTES_GRUPOS (
|
||
ID TIPO_ID NOT NULL,
|
||
DESCRIPCION VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE COMISIONES_LIQUIDADAS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
ID_AGENTE TIPO_ID,
|
||
DESCRIPCION VARCHAR(255),
|
||
FECHA DATE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO
|
||
);
|
||
|
||
CREATE TABLE CONFIGURACION (
|
||
ID TIPO_ID NOT NULL,
|
||
CODIGO VARCHAR(50) NOT NULL,
|
||
VALOR VARCHAR(255) NOT NULL,
|
||
ID_EMPRESA TIPO_ID
|
||
);
|
||
|
||
CREATE TABLE CONTACTOS (
|
||
ID TIPO_ID NOT NULL,
|
||
NIF_CIF VARCHAR(15),
|
||
NOMBRE VARCHAR(255) NOT NULL,
|
||
CALLE VARCHAR(255),
|
||
POBLACION VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
TELEFONO_1 VARCHAR(25),
|
||
TELEFONO_2 VARCHAR(25),
|
||
MOVIL_1 VARCHAR(25),
|
||
MOVIL_2 VARCHAR(25),
|
||
FAX VARCHAR(25),
|
||
EMAIL_1 VARCHAR(255),
|
||
EMAIL_2 VARCHAR(255),
|
||
PAGINA_WEB VARCHAR(255),
|
||
NOTAS TIPO_NOTAS,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
REFERENCIA VARCHAR(255),
|
||
PERSONA_CONTACTO VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE CONTACTOS_CATEGORIAS (
|
||
ID_CONTACTO TIPO_ID NOT NULL,
|
||
ID_CATEGORIA TIPO_ID NOT NULL
|
||
);
|
||
|
||
CREATE TABLE CONTACTOS_DATOS_BANCO (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_CONTACTO TIPO_ID NOT NULL,
|
||
TITULAR VARCHAR(255),
|
||
ENTIDAD VARCHAR(15),
|
||
SUCURSAL VARCHAR(15),
|
||
DC VARCHAR(15),
|
||
CUENTA VARCHAR(15),
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE CONTACTOS_DATOS_PERSONAL (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_CONTACTO TIPO_ID NOT NULL,
|
||
NOMBRE VARCHAR(255),
|
||
PUESTO VARCHAR(255),
|
||
TELEFONO VARCHAR(25),
|
||
MOVIL VARCHAR(25),
|
||
FAX VARCHAR(25),
|
||
EMAIL VARCHAR(255),
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE CONTACTOS_DIRECCIONES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_CONTACTO TIPO_ID NOT NULL,
|
||
CALLE VARCHAR(255),
|
||
POBLACION VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
PERSONA_CONTACTO VARCHAR(255),
|
||
NOMBRE VARCHAR(255),
|
||
TELEFONO VARCHAR(25),
|
||
MOVIL VARCHAR(25),
|
||
FAX VARCHAR(25),
|
||
EMAIL VARCHAR(255),
|
||
NOTAS TIPO_NOTAS,
|
||
PORTE TIPO_IMPORTE,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE EMPLEADOS_DATOS (
|
||
ID_EMPLEADO TIPO_ID NOT NULL,
|
||
FECHA_NACIMIENTO DATE,
|
||
CATEGORIA VARCHAR(255),
|
||
FECHA_ALTA_EMPRESA DATE,
|
||
FORMACION_BASE TIPO_NOTAS,
|
||
FORMACION_COMPLE TIPO_NOTAS,
|
||
FORMACION_RECIBIDA TIPO_NOTAS,
|
||
EXPERIENCIA TIPO_NOTAS,
|
||
CONTRATO VARCHAR(255),
|
||
DURACION VARCHAR(255),
|
||
FECHA_BAJA DATE,
|
||
CAUSA_BAJA VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE EMPLEADOS_GRUPOS (
|
||
ID TIPO_ID NOT NULL,
|
||
DESCRIPCION VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE EMPRESAS (
|
||
ID TIPO_ID NOT NULL,
|
||
NIF_CIF VARCHAR(15),
|
||
NOMBRE VARCHAR(255),
|
||
RAZON_SOCIAL VARCHAR(255),
|
||
CALLE VARCHAR(255),
|
||
POBLACION VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
TELEFONO_1 VARCHAR(25),
|
||
TELEFONO_2 VARCHAR(25),
|
||
MOVIL_1 VARCHAR(25),
|
||
MOVIL_2 VARCHAR(25),
|
||
FAX VARCHAR(25),
|
||
EMAIL_1 VARCHAR(255),
|
||
EMAIL_2 VARCHAR(255),
|
||
PAGINA_WEB VARCHAR(255),
|
||
NOTAS TIPO_NOTAS,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
LOGOTIPO TIPO_BINARIO,
|
||
REGISTRO_MERCANTIL VARCHAR(255),
|
||
PARAM_TIEMPO TIPO_IMPORTE,
|
||
PARAM_MARGEN TIPO_PORCENTAJE,
|
||
ID_TIPO_IVA SMALLINT,
|
||
ID_FORMA_PAGO SMALLINT,
|
||
ID_ALMACEN SMALLINT
|
||
);
|
||
|
||
CREATE TABLE EMPRESAS_CONTACTOS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID NOT NULL,
|
||
ID_CONTACTO TIPO_ID NOT NULL
|
||
);
|
||
|
||
CREATE TABLE EMPRESAS_DATOS_BANCO (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID NOT NULL,
|
||
NOMBRE VARCHAR(255),
|
||
ENTIDAD VARCHAR(15),
|
||
SUCURSAL VARCHAR(15),
|
||
DC VARCHAR(15),
|
||
CUENTA VARCHAR(15),
|
||
SUFIJO_N19 VARCHAR(3),
|
||
SUFIJO_N58 VARCHAR(3),
|
||
IBAN VARCHAR(255) COLLATE ES_ES,
|
||
SWIFT VARCHAR(255) COLLATE ES_ES
|
||
);
|
||
|
||
CREATE TABLE EMPRESAS_USUARIOS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID NOT NULL,
|
||
ID_USUARIO TIPO_ID NOT NULL
|
||
);
|
||
|
||
CREATE TABLE FABRICANTES (
|
||
ID TIPO_ID NOT NULL,
|
||
DESCRIPCION VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE FACTURAS_CLIENTE (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
FECHA_FACTURA DATE,
|
||
FECHA_VENCIMIENTO DATE,
|
||
FECHA_RETENCION DATE,
|
||
BASE_IMPONIBLE TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_DESCUENTO TIPO_IMPORTE,
|
||
IVA TIPO_PORCENTAJE,
|
||
IMPORTE_IVA TIPO_IMPORTE,
|
||
RE TIPO_PORCENTAJE,
|
||
IMPORTE_RE TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
OBSERVACIONES TIPO_NOTAS,
|
||
ID_CLIENTE TIPO_ID,
|
||
NIF_CIF VARCHAR(15),
|
||
NOMBRE VARCHAR(255),
|
||
ID_DIRECCION TIPO_ID,
|
||
CALLE VARCHAR(255),
|
||
POBLACION VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
ID_FORMA_PAGO TIPO_ID,
|
||
IMPORTE_NETO TIPO_IMPORTE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
ID_TIPO_IVA TIPO_ID,
|
||
RECARGO_EQUIVALENCIA TIPO_BOOLEANO,
|
||
ID_COMISION_LIQUIDADA TIPO_ID,
|
||
DATOS_BANCARIOS VARCHAR(255),
|
||
CLIENTE_FINAL VARCHAR(255),
|
||
RETENCION TIPO_PORCENTAJE,
|
||
IMPORTE_RETENCION TIPO_IMPORTE,
|
||
CERTIFICADO_ISO TIPO_BOOLEANO,
|
||
ID_PRESUPUESTO TIPO_ID,
|
||
FACTURA_WEB TIPO_BOOLEANO DEFAULT 0 NOT NULL
|
||
);
|
||
|
||
CREATE TABLE FACTURAS_CLIENTE_DETALLES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_FACTURA TIPO_ID NOT NULL,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
ID_ARTICULO TIPO_ID,
|
||
CONCEPTO TIPO_CONCEPTO,
|
||
CANTIDAD TIPO_CANTIDAD,
|
||
UNIDAD_MEDIDA VARCHAR(255),
|
||
IMPORTE_UNIDAD TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
VISIBLE TIPO_BOOLEANO,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE FACTURAS_PROVEEDOR (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
REFERENCIA_PROVEEDOR VARCHAR(255),
|
||
FECHA_FACTURA DATE,
|
||
BASE_IMPONIBLE TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_DESCUENTO TIPO_IMPORTE,
|
||
IVA TIPO_PORCENTAJE,
|
||
IMPORTE_IVA TIPO_IMPORTE,
|
||
RE TIPO_PORCENTAJE,
|
||
IMPORTE_RE TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
OBSERVACIONES TIPO_NOTAS,
|
||
ID_PROVEEDOR TIPO_ID,
|
||
NIF_CIF VARCHAR(15),
|
||
NOMBRE VARCHAR(255),
|
||
CALLE VARCHAR(255),
|
||
POBLACION VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
ID_FORMA_PAGO TIPO_ID,
|
||
IMPORTE_NETO TIPO_IMPORTE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
ID_TIPO_IVA TIPO_ID,
|
||
RECARGO_EQUIVALENCIA TIPO_BOOLEANO,
|
||
DATOS_BANCARIOS VARCHAR(255),
|
||
FECHA_VENCIMIENTO DATE,
|
||
FECHA_RECEPCION DATE,
|
||
RETENCION TIPO_PORCENTAJE,
|
||
IMPORTE_RETENCION TIPO_IMPORTE,
|
||
ID_PEDIDO TIPO_ID
|
||
);
|
||
|
||
CREATE TABLE FACTURAS_PROVEEDOR_DETALLES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_FACTURA TIPO_ID NOT NULL,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
ID_ARTICULO TIPO_ID,
|
||
CONCEPTO TIPO_CONCEPTO,
|
||
CANTIDAD TIPO_CANTIDAD,
|
||
UNIDAD_MEDIDA VARCHAR(255),
|
||
IMPORTE_UNIDAD TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
ID_TIPO_IVA TIPO_ID,
|
||
IVA TIPO_PORCENTAJE,
|
||
IMPORTE_IVA TIPO_IMPORTE
|
||
VISIBLE TIPO_BOOLEANO,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE FACTURAS_PROVEEDOR_PEDIDOS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_FACTURA TIPO_ID NOT NULL,
|
||
ID_PEDIDO TIPO_ID,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE FAMILIAS (
|
||
ID TIPO_ID NOT NULL,
|
||
DESCRIPCION VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE FORMAS_PAGO (
|
||
ID TIPO_ID NOT NULL,
|
||
REFERENCIA VARCHAR(255),
|
||
DESCRIPCION VARCHAR(255),
|
||
TITULAR VARCHAR(255),
|
||
ENTIDAD VARCHAR(15),
|
||
SUCURSAL VARCHAR(15),
|
||
DC VARCHAR(15),
|
||
CUENTA VARCHAR(15)
|
||
);
|
||
|
||
CREATE TABLE FORMAS_PAGO_PLAZOS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_FORMA_PAGO TIPO_ID NOT NULL,
|
||
NUM_DIAS SMALLINT,
|
||
PORCENTAJE TIPO_PORCENTAJE
|
||
);
|
||
|
||
CREATE TABLE INFORMES (
|
||
ID SMALLINT NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
CATEGORIA VARCHAR(30),
|
||
CONTROLLER VARCHAR(255),
|
||
ICONO SMALLINT,
|
||
NOMBRE VARCHAR(50),
|
||
DESCRIPCION VARCHAR(255),
|
||
ORDEN SMALLINT,
|
||
MODIFICABLE CHAR(1),
|
||
VISTA BLOB SUB_TYPE 2 SEGMENT SIZE 4096
|
||
);
|
||
|
||
CREATE TABLE MOVIMIENTOS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_ALMACEN TIPO_ID,
|
||
ID_ARTICULO TIPO_ID,
|
||
FECHA_MOVIMIENTO DATE,
|
||
TIPO VARCHAR(1),
|
||
CANTIDAD TIPO_CANTIDAD,
|
||
CAUSA TIPO_CONCEPTO,
|
||
ID_ALMACEN_RESERVA TIPO_ID
|
||
);
|
||
|
||
CREATE TABLE OBRAS_DATOS (
|
||
ID_ALMACEN TIPO_ID NOT NULL,
|
||
ID_CLIENTE TIPO_ID
|
||
);
|
||
|
||
CREATE TABLE OBRAS_EJECUCIONES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_OBRA TIPO_ID,
|
||
FECHA_INICIO DATE,
|
||
FECHA_FIN DATE,
|
||
ID_SUBCONTRATA TIPO_ID,
|
||
OBSERVACIONES TIPO_NOTAS,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE OBRAS_EJECUCIONES_PRESUPUESTOS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EJECUCION TIPO_ID,
|
||
ID_PRESUPUESTO TIPO_ID
|
||
);
|
||
|
||
CREATE TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EJECUCION TIPO_ID,
|
||
ID_PEDIDO TIPO_ID,
|
||
ID_PRESUPUESTO TIPO_ID
|
||
);
|
||
|
||
|
||
CREATE TABLE PAGOS_CLIENTE (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_RECIBO TIPO_ID,
|
||
TIPO VARCHAR(255),
|
||
FECHA_PAGO DATE,
|
||
TITULAR VARCHAR(255),
|
||
ENTIDAD VARCHAR(15),
|
||
SUCURSAL VARCHAR(15),
|
||
DC VARCHAR(15),
|
||
CUENTA VARCHAR(15),
|
||
FECHA_ALTA DATE,
|
||
FECHA_MODIFICACION DATE,
|
||
USUARIO TIPO_USUARIO
|
||
);
|
||
|
||
CREATE TABLE PAGOS_PROVEEDOR (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_RECIBO TIPO_ID,
|
||
TIPO VARCHAR(255),
|
||
FECHA_PAGO DATE,
|
||
TITULAR VARCHAR(255),
|
||
ENTIDAD VARCHAR(15),
|
||
SUCURSAL VARCHAR(15),
|
||
DC VARCHAR(15),
|
||
CUENTA VARCHAR(15),
|
||
FECHA_ALTA DATE,
|
||
FECHA_MODIFICACION DATE,
|
||
USUARIO TIPO_USUARIO
|
||
);
|
||
|
||
CREATE TABLE PEDIDOS_CLIENTE (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
ID_CLIENTE TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
FECHA_PEDIDO DATE,
|
||
CALLE VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
POBLACION VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
PERSONA_CONTACTO VARCHAR(255),
|
||
TELEFONO VARCHAR(25),
|
||
OBSERVACIONES TIPO_NOTAS,
|
||
INCIDENCIAS TIPO_NOTAS,
|
||
INCIDENCIAS_ACTIVAS SMALLINT DEFAULT 0 NOT NULL,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
IMPORTE_NETO TIPO_IMPORTE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_DESCUENTO TIPO_IMPORTE,
|
||
BASE_IMPONIBLE TIPO_IMPORTE,
|
||
IVA TIPO_PORCENTAJE,
|
||
IMPORTE_IVA TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
ID_FORMA_PAGO TIPO_ID,
|
||
REF_TIENDA_WEB INTEGER,
|
||
FECHA_PREVISTA_ENVIO DATE,
|
||
REFERENCIA_CLIENTE VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE PEDIDOS_CLIENTE_DETALLES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_PEDIDO TIPO_ID NOT NULL,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
ID_ARTICULO TIPO_ID,
|
||
CONCEPTO TIPO_CONCEPTO,
|
||
CANTIDAD TIPO_CANTIDAD,
|
||
IMPORTE_UNIDAD TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
VISIBLE TIPO_BOOLEANO,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE PEDIDOS_PROVEEDOR (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
ID_PROVEEDOR TIPO_ID,
|
||
ID_DIRECCION TIPO_ID,
|
||
PERSONA_CONTACTO_PROV VARCHAR(255),
|
||
REFERENCIA VARCHAR(255),
|
||
FECHA_PEDIDO DATE,
|
||
FECHA_CONFIRMACION DATE,
|
||
FECHA_ENTREGA DATE,
|
||
ID_ALMACEN TIPO_ID,
|
||
ID_OBRA TIPO_ID,
|
||
OBSERVACIONES TIPO_NOTAS,
|
||
INCIDENCIAS TIPO_NOTAS,
|
||
INCIDENCIAS_ACTIVAS SMALLINT DEFAULT 0 NOT NULL,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
CALLE VARCHAR(255),
|
||
CODIGO_POSTAL VARCHAR(10),
|
||
POBLACION VARCHAR(255),
|
||
PROVINCIA VARCHAR(255),
|
||
PERSONA_CONTACTO VARCHAR(255),
|
||
TELEFONO VARCHAR(25),
|
||
ID_PEDIDO_CLIENTE TIPO_ID,
|
||
IMPORTE_NETO TIPO_IMPORTE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_DESCUENTO TIPO_IMPORTE,
|
||
BASE_IMPONIBLE TIPO_IMPORTE,
|
||
IVA TIPO_PORCENTAJE,
|
||
IMPORTE_IVA TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
ID_FORMA_PAGO TIPO_ID,
|
||
FECHA_ENVIO DATE,
|
||
ID_FACTURA TIPO_ID,
|
||
REF_FACTURA_PROV VARCHAR(255) COLLATE ES_ES
|
||
);
|
||
|
||
CREATE TABLE PEDIDOS_PROVEEDOR_DETALLES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_PEDIDO TIPO_ID NOT NULL,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
ID_ARTICULO TIPO_ID,
|
||
CONCEPTO TIPO_CONCEPTO,
|
||
CANTIDAD TIPO_CANTIDAD,
|
||
UNIDAD_MEDIDA VARCHAR(255),
|
||
IMPORTE_UNIDAD TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
VISIBLE TIPO_BOOLEANO,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE PERMISOS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_USUARIO TIPO_ID,
|
||
MODULO VARCHAR(50),
|
||
NOMBRECOMP VARCHAR(50),
|
||
CHECKSUM VARCHAR(250)
|
||
);
|
||
|
||
CREATE TABLE PERMISOSEX (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_USUARIO TIPO_ID,
|
||
MODULO VARCHAR(50),
|
||
NOMBRECOMP VARCHAR(50),
|
||
NOMBREFORM VARCHAR(50),
|
||
CHECKSUM VARCHAR(250)
|
||
);
|
||
|
||
CREATE TABLE POBLACIONES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_PROVINCIA TIPO_ID NOT NULL,
|
||
DESCRIPCION VARCHAR(255) NOT NULL
|
||
);
|
||
|
||
CREATE TABLE PRESUPUESTOS_CLIENTE (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
ID_CLIENTE TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
REFERENCIA_AUX VARCHAR(255),
|
||
FECHA_PRESUPUESTO DATE,
|
||
FECHA_DECISION DATE,
|
||
SITUACION VARCHAR(255),
|
||
PORTADA TIPO_NOTAS,
|
||
MEMORIA TIPO_NOTAS,
|
||
OBSERVACIONES TIPO_NOTAS,
|
||
INCIDENCIAS TIPO_NOTAS,
|
||
INCIDENCIAS_ACTIVAS SMALLINT DEFAULT 0 NOT NULL,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP,
|
||
USUARIO TIPO_USUARIO,
|
||
IMPORTE_NETO TIPO_IMPORTE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_DESCUENTO TIPO_IMPORTE,
|
||
BASE_IMPONIBLE TIPO_IMPORTE,
|
||
IVA TIPO_PORCENTAJE,
|
||
IMPORTE_IVA TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
ID_FORMA_PAGO TIPO_ID,
|
||
REFERENCIA_CLIENTE VARCHAR(255),
|
||
CLIENTE_FINAL VARCHAR(255),
|
||
ID_FACTURA TIPO_ID,
|
||
PERSONA_CONTACTO VARCHAR(255),
|
||
ID_DIRECCION TIPO_ID,
|
||
DESCRIPCION_BONIFICACION VARCHAR(255) COLLATE ES_ES,
|
||
IMPORTE_BONIFICACION TIPO_IMPORTE,
|
||
CERTIFICADO_ISO TIPO_BOOLEANO,
|
||
ID_PRESUPUESTO TIPO_ID,
|
||
PRESUPUESTO_WEB TIPO_BOOLEANO DEFAULT 0 NOT NULL
|
||
);
|
||
|
||
CREATE TABLE PRESUPUESTOS_CLIENTE_DETALLES (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_PRESUPUESTO TIPO_ID NOT NULL,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
ID_ARTICULO TIPO_ID,
|
||
CONCEPTO TIPO_CONCEPTO,
|
||
CANTIDAD TIPO_CANTIDAD,
|
||
UNIDAD_MEDIDA VARCHAR(255),
|
||
IMPORTE_UNIDAD TIPO_IMPORTE,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
IMPORTE_PORTE TIPO_IMPORTE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
VISIBLE TIPO_BOOLEANO,
|
||
FECHA_ALTA TIMESTAMP,
|
||
FECHA_MODIFICACION TIMESTAMP
|
||
);
|
||
|
||
CREATE TABLE PROVEEDORES_DATOS (
|
||
ID_PROVEEDOR TIPO_ID NOT NULL,
|
||
DESCUENTO TIPO_PORCENTAJE,
|
||
REGIMEN_IVA VARCHAR(255),
|
||
ID_TIPO_IVA TIPO_ID,
|
||
ID_FORMA_PAGO TIPO_ID,
|
||
TIENDA_WEB TIPO_BOOLEANO,
|
||
GRUPO_PROVEEDOR VARCHAR(255),
|
||
DESCRIPCION_PROVEEDOR VARCHAR(255),
|
||
CODIGO_ASIGNADO VARCHAR(255),
|
||
CERTIFICACION VARCHAR(255),
|
||
HOMOLOGADO SMALLINT,
|
||
SUBCONTRATA TIPO_BOOLEANO,
|
||
VENCIMIENTO_FACTURAS_1 SMALLINT,
|
||
VENCIMIENTO_FACTURAS_2 SMALLINT,
|
||
VENCIMIENTO_FACTURAS_3 SMALLINT,
|
||
FELICITACION TIPO_BOOLEANO, /* TIPO_BOOLEANO = SMALLINT */
|
||
FECHA_INGRESO DATE
|
||
);
|
||
|
||
CREATE TABLE PROVEEDORES_GRUPOS (
|
||
ID TIPO_ID NOT NULL,
|
||
DESCRIPCION VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE PROVINCIAS (
|
||
ID TIPO_ID NOT NULL,
|
||
DESCRIPCION VARCHAR(255) NOT NULL
|
||
);
|
||
|
||
CREATE TABLE RECIBOS_CLIENTE (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_FACTURA TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
FECHA_EMISION DATE,
|
||
FECHA_VENCIMIENTO DATE,
|
||
DESCRIPCION VARCHAR(255),
|
||
OBSERVACIONES VARCHAR(255),
|
||
IMPORTE TIPO_IMPORTE,
|
||
OTROS_GASTOS TIPO_IMPORTE,
|
||
FECHA_ALTA DATE,
|
||
FECHA_MODIFICACION DATE,
|
||
USUARIO TIPO_USUARIO,
|
||
ID_REMESA TIPO_ID,
|
||
ID_RECIBO_COMPENSADO INTEGER
|
||
);
|
||
|
||
CREATE TABLE RECIBOS_PROVEEDOR (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_FACTURA TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
REFERENCIA_PROVEEDOR VARCHAR(255),
|
||
FECHA_EMISION DATE,
|
||
FECHA_VENCIMIENTO DATE,
|
||
DESCRIPCION VARCHAR(255),
|
||
OBSERVACIONES VARCHAR(255),
|
||
IMPORTE TIPO_IMPORTE,
|
||
OTROS_GASTOS TIPO_IMPORTE,
|
||
FECHA_ALTA DATE,
|
||
FECHA_MODIFICACION DATE,
|
||
USUARIO TIPO_USUARIO,
|
||
ID_REMESA TIPO_ID,
|
||
ID_RECIBO_COMPENSADO INTEGER,
|
||
DATOS_BANCARIOS VARCHAR(255) COLLATE ES_ES
|
||
);
|
||
|
||
CREATE TABLE REFERENCIAS (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
CODIGO VARCHAR(50) NOT NULL,
|
||
VALOR VARCHAR(255) NOT NULL,
|
||
DESCRIPCION VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE REMESAS_CLIENTE (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
FECHA_REMESA DATE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
DESCRIPCION VARCHAR(255),
|
||
FECHA_ALTA DATE,
|
||
FECHA_MODIFICACION DATE,
|
||
USUARIO TIPO_USUARIO,
|
||
ID_DATOS_BANCO TIPO_ID,
|
||
TIPO VARCHAR(40)
|
||
);
|
||
|
||
CREATE TABLE REMESAS_PROVEEDOR (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID,
|
||
REFERENCIA VARCHAR(255),
|
||
FECHA_REMESA DATE,
|
||
IMPORTE_TOTAL TIPO_IMPORTE,
|
||
DESCRIPCION VARCHAR(255),
|
||
FECHA_ALTA DATE,
|
||
FECHA_MODIFICACION DATE,
|
||
USUARIO TIPO_USUARIO,
|
||
ID_DATOS_BANCO TIPO_ID,
|
||
TIPO VARCHAR(40)
|
||
);
|
||
|
||
CREATE TABLE TIENDA_WEB (
|
||
ID TIPO_ID NOT NULL,
|
||
ID_EMPRESA TIPO_ID NOT NULL,
|
||
TIENDA_ACTIVA TIPO_BOOLEANO DEFAULT 0 NOT NULL,
|
||
ULTIMA_ACTUALIZACION TIMESTAMP,
|
||
BDSERVER VARCHAR(255),
|
||
BDPORT VARCHAR(20),
|
||
BDNAME VARCHAR(255),
|
||
BDUSER VARCHAR(255),
|
||
BDPASS VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE TIPOS_IVA (
|
||
ID TIPO_ID NOT NULL,
|
||
REFERENCIA VARCHAR(255),
|
||
DESCRIPCION VARCHAR(255),
|
||
IVA TIPO_PORCENTAJE,
|
||
RE TIPO_PORCENTAJE
|
||
);
|
||
|
||
CREATE TABLE UNIDADES_MEDIDA (
|
||
ID TIPO_ID NOT NULL,
|
||
DESCRIPCION VARCHAR(255)
|
||
);
|
||
|
||
CREATE TABLE USUARIOS (
|
||
ID TIPO_ID NOT NULL,
|
||
USERNAME VARCHAR(30),
|
||
LOGIN TIPO_USUARIO,
|
||
PASS VARCHAR(250),
|
||
PASSEXPIRED DATE,
|
||
BLOQUEADO TIPO_BOOLEANO,
|
||
EMAIL VARCHAR(150),
|
||
USERDAYSSUN INTEGER,
|
||
PRIVILEGED INTEGER,
|
||
TIPO CHAR(1),
|
||
ID_PERFIL TIPO_ID,
|
||
CHECKSUM VARCHAR(250)
|
||
);
|
||
|
||
CREATE TABLE USUARIOS_EVENTOS (
|
||
APLICACION VARCHAR(250),
|
||
ID_USUARIO TIPO_ID,
|
||
FECHA CHAR(10),
|
||
HORA CHAR(8),
|
||
FORM VARCHAR(250),
|
||
TITULO_FORM VARCHAR(100),
|
||
EVENTO VARCHAR(50),
|
||
NOTAS TIPO_NOTAS,
|
||
TNAME VARCHAR(20)
|
||
);
|
||
|
||
CREATE TABLE USUARIOS_LOGON (
|
||
LOGONID CHAR(38) NOT NULL,
|
||
ID_USUARIO TIPO_ID,
|
||
APLICACION VARCHAR(50),
|
||
EQUIPO VARCHAR(50),
|
||
DATA VARCHAR(14)
|
||
);
|
||
|
||
|
||
|
||
/******************************************************************************/
|
||
/**** Views ****/
|
||
/******************************************************************************/
|
||
|
||
|
||
/* View: V_ALB_CLI_SITUACION */
|
||
CREATE VIEW V_ALB_CLI_SITUACION(
|
||
ID,
|
||
SITUACION)
|
||
AS
|
||
SELECT ALBARANES_CLIENTE.ID,
|
||
case when (FECHA_RECEPCION is not null) then 'SERVIDO'
|
||
when (FECHA_ENVIO is null) then 'PENDIENTE'
|
||
when (FECHA_ENVIO <= current_date) then 'ENVIADO'
|
||
when (FECHA_ENVIO > current_date) then 'PENDIENTE'
|
||
else 'N/A'
|
||
end as SITUACION
|
||
FROM ALBARANES_CLIENTE
|
||
;
|
||
|
||
|
||
|
||
/* View: V_ALB_CLI_DETALLES */
|
||
CREATE VIEW V_ALB_CLI_DETALLES(
|
||
ID_ALBARAN,
|
||
ID_PEDIDO,
|
||
SITUACION,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ALBARANES_CLIENTE_DETALLES.ID_ALBARAN,
|
||
ALBARANES_CLIENTE_DETALLES.ID_PEDIDO,
|
||
V_ALB_CLI_SITUACION.SITUACION,
|
||
ALBARANES_CLIENTE.ID_ALMACEN,
|
||
COALESCE(ALBARANES_CLIENTE_DETALLES.ID_ARTICULO, 0),
|
||
SUM(COALESCE(ALBARANES_CLIENTE_DETALLES.CANTIDAD, 0))
|
||
|
||
FROM ALBARANES_CLIENTE_DETALLES
|
||
INNER JOIN ALBARANES_CLIENTE
|
||
ON (ALBARANES_CLIENTE_DETALLES.ID_ALBARAN = ALBARANES_CLIENTE.ID)
|
||
INNER JOIN V_ALB_CLI_SITUACION
|
||
ON (ALBARANES_CLIENTE_DETALLES.ID_ALBARAN = V_ALB_CLI_SITUACION.ID)
|
||
|
||
/*Mantenemos los articulos inventariables y aquellos que no existan en nuestro cat<61>logo con el fin de no falsear la situaci<63>n de los pedidos
|
||
LEFT JOIN ARTICULOS
|
||
ON (ALBARANES_CLIENTE_DETALLES.ID_ARTICULO = ARTICULOS.ID)
|
||
|
||
WHERE (ALBARANES_CLIENTE_DETALLES.ID_ARTICULO is not null)
|
||
AND (ARTICULOS.INVENTARIABLE = 1)
|
||
*/
|
||
|
||
group BY ALBARANES_CLIENTE_DETALLES.ID_ALBARAN,
|
||
ALBARANES_CLIENTE_DETALLES.ID_PEDIDO,
|
||
V_ALB_CLI_SITUACION.SITUACION,
|
||
ALBARANES_CLIENTE.ID_ALMACEN,
|
||
ALBARANES_CLIENTE_DETALLES.ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_ALB_PROV_DETALLES */
|
||
CREATE VIEW V_ALB_PROV_DETALLES(
|
||
ID_ALBARAN,
|
||
ID_PEDIDO,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
DESCRIPCION,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ALBARANES_PROVEEDOR_DETALLES.ID_ALBARAN,
|
||
ALBARANES_PROVEEDOR.ID_PEDIDO,
|
||
ALBARANES_PROVEEDOR.ID_ALMACEN,
|
||
COALESCE(ALBARANES_PROVEEDOR_DETALLES.ID_ARTICULO, 0),
|
||
CASE
|
||
WHEN ALBARANES_PROVEEDOR_DETALLES.ID_ARTICULO IS NULL THEN ALBARANES_PROVEEDOR_DETALLES.CONCEPTO
|
||
ELSE NULL
|
||
END,
|
||
SUM (COALESCE(ALBARANES_PROVEEDOR_DETALLES.CANTIDAD, 0)) AS CANTIDAD
|
||
FROM ALBARANES_PROVEEDOR_DETALLES INNER JOIN ALBARANES_PROVEEDOR ON (ALBARANES_PROVEEDOR_DETALLES.ID_ALBARAN = ALBARANES_PROVEEDOR.ID)
|
||
|
||
/*Mantenemos los articulos inventariables y aquellos que no existan en nuestro cat<61>logo con el fin de no falsear la situaci<63>n de los pedidos
|
||
LEFT JOIN ARTICULOS
|
||
ON (ALBARANES_PROVEEDOR_DETALLES.ID_ARTICULO = ARTICULOS.ID)
|
||
|
||
WHERE (ALBARANES_PROVEEDOR_DETALLES.ID_ARTICULO is not null)
|
||
AND (ARTICULOS.INVENTARIABLE = 1)
|
||
*/
|
||
|
||
GROUP BY ALBARANES_PROVEEDOR_DETALLES.ID_ALBARAN,
|
||
ALBARANES_PROVEEDOR.ID_PEDIDO,
|
||
ALBARANES_PROVEEDOR.ID_ALMACEN,
|
||
ALBARANES_PROVEEDOR_DETALLES.ID_ARTICULO,
|
||
5
|
||
;
|
||
|
||
|
||
/* View: V_ALBARANES_CLIENTE */
|
||
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,
|
||
ID_DIRECCION,
|
||
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)
|
||
AS
|
||
SELECT
|
||
ALBARANES_CLIENTE.ID,
|
||
ALBARANES_CLIENTE.ID_EMPRESA,
|
||
ALBARANES_CLIENTE.ID_CLIENTE,
|
||
CONTACTOS.NOMBRE,
|
||
ALBARANES_CLIENTE.FECHA_ALBARAN,
|
||
ALBARANES_CLIENTE.REFERENCIA,
|
||
ALBARANES_CLIENTE.REFERENCIA_CLIENTE,
|
||
ALBARANES_CLIENTE.TIPO,
|
||
TRIM(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.ID_DIRECCION,
|
||
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
|
||
FROM
|
||
ALBARANES_CLIENTE
|
||
LEFT OUTER JOIN CONTACTOS ON (CONTACTOS.ID = ALBARANES_CLIENTE.ID_CLIENTE)
|
||
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 V_ALB_CLI_SITUACION ON (V_ALB_CLI_SITUACION.ID = ALBARANES_CLIENTE.ID)
|
||
LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = ALBARANES_CLIENTE.ID_ALMACEN)
|
||
;
|
||
|
||
|
||
|
||
/* View: V_ALBARANES_PROVEEDOR */
|
||
CREATE VIEW V_ALBARANES_PROVEEDOR(
|
||
ID,
|
||
ID_EMPRESA,
|
||
ID_PROVEEDOR,
|
||
NOMBRE,
|
||
ID_DIRECCION,
|
||
PERSONA_CONTACTO_PROV,
|
||
FECHA_ALBARAN,
|
||
REFERENCIA,
|
||
REFERENCIA_PROVEEDOR,
|
||
TIPO,
|
||
ID_ALMACEN,
|
||
TIPO_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,
|
||
ID_ALBARAN,
|
||
REFERENCIA_ALBARAN)
|
||
AS
|
||
SELECT
|
||
ALBARANES_PROVEEDOR.ID,
|
||
ALBARANES_PROVEEDOR.ID_EMPRESA,
|
||
ALBARANES_PROVEEDOR.ID_PROVEEDOR,
|
||
CONTACTOS.NOMBRE,
|
||
ALBARANES_PROVEEDOR.ID_DIRECCION,
|
||
ALBARANES_PROVEEDOR.PERSONA_CONTACTO_PROV,
|
||
ALBARANES_PROVEEDOR.FECHA_ALBARAN,
|
||
ALBARANES_PROVEEDOR.REFERENCIA,
|
||
ALBARANES_PROVEEDOR.REFERENCIA_PROVEEDOR,
|
||
ALBARANES_PROVEEDOR.TIPO,
|
||
ALBARANES_PROVEEDOR.ID_ALMACEN,
|
||
ALMACENES.TIPO_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,
|
||
ALBARANES_PROVEEDOR.ID_ALBARAN,
|
||
ALB2.REFERENCIA AS REFERENCIA_ALBARAN
|
||
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 OUTER JOIN ALBARANES_PROVEEDOR ALB2 ON (ALB2.ID = ALBARANES_PROVEEDOR.ID_ALBARAN)
|
||
;
|
||
|
||
|
||
|
||
/* View: V_ALMACENES */
|
||
CREATE VIEW V_ALMACENES(
|
||
ID,
|
||
ID_EMPRESA,
|
||
NOMBRE,
|
||
CALLE,
|
||
PROVINCIA,
|
||
POBLACION,
|
||
CODIGO_POSTAL,
|
||
TELEFONO,
|
||
MOVIL,
|
||
FAX,
|
||
PERSONA_CONTACTO,
|
||
OBSERVACIONES,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO)
|
||
AS
|
||
SELECT ALMACENES.ID, ALMACENES.ID_EMPRESA, ALMACENES.NOMBRE,
|
||
ALMACENES.CALLE, ALMACENES.PROVINCIA, ALMACENES.POBLACION, ALMACENES.CODIGO_POSTAL,
|
||
ALMACENES.TELEFONO, ALMACENES.MOVIL, ALMACENES.FAX, ALMACENES.PERSONA_CONTACTO,
|
||
ALMACENES.OBSERVACIONES, ALMACENES.FECHA_ALTA, ALMACENES.FECHA_MODIFICACION, ALMACENES.USUARIO
|
||
FROM ALMACENES
|
||
WHERE ALMACENES.TIPO_ALMACEN = 'ALMACEN'
|
||
;
|
||
|
||
|
||
|
||
/* View: V_ARTICULOS_PARA_COMPRA */
|
||
CREATE VIEW V_ARTICULOS_PARA_COMPRA(
|
||
ID,
|
||
ID_EMPRESA,
|
||
REFERENCIA,
|
||
DESCRIPCION,
|
||
UNIDAD_MEDIDA,
|
||
FAMILIA,
|
||
IMAGEN,
|
||
COMISIONABLE,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO,
|
||
REFERENCIA_PROV,
|
||
PRECIO_COSTE,
|
||
PRECIO_PORTE,
|
||
DESCUENTO,
|
||
PRECIO_NETO,
|
||
INVENTARIABLE,
|
||
ID_PROVEEDOR,
|
||
NOMBRE_PROVEEDOR,
|
||
ELIMINADO,
|
||
FABRICANTE,
|
||
REFERENCIA_FABR,
|
||
PARAM_MARGEN,
|
||
PRECIO_PVP_VENTA,
|
||
TIEMPO,
|
||
PARAM_TIEMPO,
|
||
MANO_OBRA,
|
||
PRECIO_PVP_TOTAL,
|
||
ID_ARTICULO)
|
||
AS
|
||
SELECT ARTICULOS.ID, ARTICULOS.ID_EMPRESA, ARTICULOS.REFERENCIA, ARTICULOS.DESCRIPCION,
|
||
ARTICULOS.UNIDAD_MEDIDA, ARTICULOS.FAMILIA, ARTICULOS.IMAGEN,
|
||
ARTICULOS.COMISIONABLE, ARTICULOS.FECHA_ALTA,
|
||
ARTICULOS.FECHA_MODIFICACION, ARTICULOS.USUARIO,
|
||
ARTICULOS_PROVEEDORES.REFERENCIA_PROV,
|
||
ARTICULOS_PROVEEDORES.PRECIO_COSTE,
|
||
ARTICULOS_PROVEEDORES.PRECIO_PORTE,
|
||
ARTICULOS_PROVEEDORES.DESCUENTO,
|
||
ARTICULOS_PROVEEDORES.PRECIO_NETO,
|
||
ARTICULOS.INVENTARIABLE,
|
||
ARTICULOS_PROVEEDORES.ID_PROVEEDOR,
|
||
CONTACTOS.NOMBRE AS NOMBRE_PROVEEDOR,
|
||
ARTICULOS.ELIMINADO,
|
||
ARTICULOS.FABRICANTE,
|
||
ARTICULOS.REFERENCIA_FABR,
|
||
ARTICULOS.PARAM_MARGEN,
|
||
ARTICULOS_PROVEEDORES.PRECIO_PVP_VENTA,
|
||
ARTICULOS.TIEMPO,
|
||
ARTICULOS.PARAM_TIEMPO,
|
||
ARTICULOS.MANO_OBRA,
|
||
ARTICULOS_PROVEEDORES.PRECIO_PVP_TOTAL,
|
||
ARTICULOS.ID
|
||
FROM ARTICULOS
|
||
LEFT OUTER JOIN ARTICULOS_PROVEEDORES ON (ARTICULOS_PROVEEDORES.ID_ARTICULO = ARTICULOS.ID)
|
||
LEFT OUTER JOIN CONTACTOS ON (CONTACTOS.ID = ARTICULOS_PROVEEDORES.ID_PROVEEDOR)
|
||
WHERE (ARTICULOS.ELIMINADO = 0)
|
||
;
|
||
|
||
|
||
|
||
/* View: V_ARTICULOS_PVP_MAX */
|
||
CREATE VIEW V_ARTICULOS_PVP_MAX(
|
||
ID_ARTICULO,
|
||
PRECIO_PVP_VENTA,
|
||
PRECIO_PVP_TOTAL)
|
||
AS
|
||
select
|
||
ID_ARTICULO, MAX(COALESCE(PRECIO_PVP_VENTA,0)) as PRECIO_PVP_VENTA, MAX(COALESCE(PRECIO_PVP_TOTAL,0)) as PRECIO_PVP_TOTAL
|
||
from ARTICULOS_PROVEEDORES
|
||
group by 1
|
||
;
|
||
|
||
|
||
|
||
/* View: V_ARTICULOS_PARA_VENTA */
|
||
CREATE VIEW V_ARTICULOS_PARA_VENTA(
|
||
ID,
|
||
ID_EMPRESA,
|
||
REFERENCIA,
|
||
DESCRIPCION,
|
||
UNIDAD_MEDIDA,
|
||
FAMILIA,
|
||
IMAGEN,
|
||
COMISIONABLE,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO,
|
||
REFERENCIA_PROV,
|
||
PRECIO_COSTE,
|
||
PRECIO_PORTE,
|
||
DESCUENTO,
|
||
PRECIO_NETO,
|
||
INVENTARIABLE,
|
||
ELIMINADO,
|
||
FABRICANTE,
|
||
REFERENCIA_FABR,
|
||
PARAM_MARGEN,
|
||
PRECIO_PVP_VENTA,
|
||
TIEMPO,
|
||
PARAM_TIEMPO,
|
||
MANO_OBRA,
|
||
PRECIO_PVP_TOTAL)
|
||
AS
|
||
SELECT ARTICULOS.ID, ARTICULOS.ID_EMPRESA, ARTICULOS.REFERENCIA, ARTICULOS.DESCRIPCION,
|
||
ARTICULOS.UNIDAD_MEDIDA, ARTICULOS.FAMILIA, ARTICULOS.IMAGEN,
|
||
ARTICULOS.COMISIONABLE, ARTICULOS.FECHA_ALTA,
|
||
ARTICULOS.FECHA_MODIFICACION, ARTICULOS.USUARIO,
|
||
|
||
/*Estos Campos se necesitan para que no se tenga que tocar la l<>gica de selecci<63>n de articulos de toda la aplicaci<63>n*/
|
||
'' as REFERENCIA_PROV,
|
||
0 as PRECIO_COSTE,
|
||
0 as PRECIO_PORTE,
|
||
0 as DESCUENTO,
|
||
0 as PRECIO_NETO,
|
||
|
||
ARTICULOS.INVENTARIABLE,
|
||
ARTICULOS.ELIMINADO,
|
||
ARTICULOS.FABRICANTE,
|
||
ARTICULOS.REFERENCIA_FABR,
|
||
ARTICULOS.PARAM_MARGEN,
|
||
V_ARTICULOS_PVP_MAX.PRECIO_PVP_VENTA,
|
||
ARTICULOS.TIEMPO,
|
||
ARTICULOS.PARAM_TIEMPO,
|
||
ARTICULOS.MANO_OBRA,
|
||
V_ARTICULOS_PVP_MAX.PRECIO_PVP_TOTAL
|
||
|
||
FROM ARTICULOS
|
||
LEFT OUTER JOIN V_ARTICULOS_PVP_MAX ON (V_ARTICULOS_PVP_MAX.ID_ARTICULO = ARTICULOS.ID)
|
||
WHERE (ARTICULOS.ELIMINADO = 0)
|
||
;
|
||
|
||
|
||
|
||
/* View: V_CONTACTOS */
|
||
CREATE VIEW V_CONTACTOS(
|
||
ID,
|
||
ID_CATEGORIA,
|
||
NIF_CIF,
|
||
NOMBRE,
|
||
PERSONA_CONTACTO,
|
||
CALLE,
|
||
POBLACION,
|
||
PROVINCIA,
|
||
CODIGO_POSTAL,
|
||
TELEFONO_1,
|
||
TELEFONO_2,
|
||
MOVIL_1,
|
||
MOVIL_2,
|
||
FAX,
|
||
EMAIL_1,
|
||
EMAIL_2,
|
||
PAGINA_WEB,
|
||
NOTAS,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO,
|
||
ID_EMPRESA,
|
||
REFERENCIA)
|
||
AS
|
||
SELECT CONTACTOS.ID,
|
||
CONTACTOS_CATEGORIAS.ID_CATEGORIA,
|
||
CONTACTOS.NIF_CIF,
|
||
CONTACTOS.NOMBRE,
|
||
CONTACTOS.PERSONA_CONTACTO,
|
||
CONTACTOS.CALLE,
|
||
CONTACTOS.POBLACION,
|
||
CONTACTOS.PROVINCIA,
|
||
CONTACTOS.CODIGO_POSTAL,
|
||
CONTACTOS.TELEFONO_1,
|
||
CONTACTOS.TELEFONO_2,
|
||
CONTACTOS.MOVIL_1,
|
||
CONTACTOS.MOVIL_2,
|
||
CONTACTOS.FAX,
|
||
CONTACTOS.EMAIL_1,
|
||
CONTACTOS.EMAIL_2,
|
||
CONTACTOS.PAGINA_WEB,
|
||
CONTACTOS.NOTAS,
|
||
CONTACTOS.FECHA_ALTA,
|
||
CONTACTOS.FECHA_MODIFICACION,
|
||
CONTACTOS.USUARIO,
|
||
EMPRESAS_CONTACTOS.ID_EMPRESA,
|
||
CONTACTOS.REFERENCIA
|
||
FROM CONTACTOS
|
||
INNER JOIN CONTACTOS_CATEGORIAS ON (CONTACTOS_CATEGORIAS.ID_CONTACTO =
|
||
CONTACTOS.ID)
|
||
INNER JOIN EMPRESAS_CONTACTOS ON (EMPRESAS_CONTACTOS.ID_CONTACTO =
|
||
CONTACTOS.ID)
|
||
;
|
||
|
||
|
||
|
||
/* View: V_CLIENTES */
|
||
CREATE VIEW V_CLIENTES(
|
||
ID,
|
||
ID_CATEGORIA,
|
||
NIF_CIF,
|
||
NOMBRE,
|
||
PERSONA_CONTACTO,
|
||
CALLE,
|
||
POBLACION,
|
||
PROVINCIA,
|
||
CODIGO_POSTAL,
|
||
TELEFONO_1,
|
||
TELEFONO_2,
|
||
MOVIL_1,
|
||
MOVIL_2,
|
||
FAX,
|
||
EMAIL_1,
|
||
EMAIL_2,
|
||
PAGINA_WEB,
|
||
NOTAS,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO,
|
||
ID_EMPRESA,
|
||
REFERENCIA,
|
||
GRUPO_CLIENTE,
|
||
NOMBRE_COMERCIAL,
|
||
VENCIMIENTO_FACTURAS_1,
|
||
VENCIMIENTO_FACTURAS_2,
|
||
VENCIMIENTO_FACTURAS_3,
|
||
BLOQUEADO,
|
||
REGIMEN_IVA,
|
||
MOTIVO_BLOQUEO,
|
||
RECARGO_EQUIVALENCIA,
|
||
ID_TIPO_IVA,
|
||
ID_FORMA_PAGO,
|
||
TIENDA_WEB,
|
||
CODIGO_ASIGNADO,
|
||
DESCUENTO,
|
||
FELICITACION,
|
||
FECHA_INGRESO)
|
||
AS
|
||
SELECT
|
||
V_CONTACTOS.ID,
|
||
V_CONTACTOS.ID_CATEGORIA,
|
||
V_CONTACTOS.NIF_CIF,
|
||
V_CONTACTOS.NOMBRE,
|
||
V_CONTACTOS.PERSONA_CONTACTO,
|
||
V_CONTACTOS.CALLE,
|
||
V_CONTACTOS.POBLACION,
|
||
V_CONTACTOS.PROVINCIA,
|
||
V_CONTACTOS.CODIGO_POSTAL,
|
||
V_CONTACTOS.TELEFONO_1,
|
||
V_CONTACTOS.TELEFONO_2,
|
||
V_CONTACTOS.MOVIL_1,
|
||
V_CONTACTOS.MOVIL_2,
|
||
V_CONTACTOS.FAX,
|
||
V_CONTACTOS.EMAIL_1,
|
||
V_CONTACTOS.EMAIL_2,
|
||
V_CONTACTOS.PAGINA_WEB,
|
||
V_CONTACTOS.NOTAS,
|
||
V_CONTACTOS.FECHA_ALTA,
|
||
V_CONTACTOS.FECHA_MODIFICACION,
|
||
V_CONTACTOS.USUARIO,
|
||
V_CONTACTOS.ID_EMPRESA,
|
||
V_CONTACTOS.REFERENCIA,
|
||
CLIENTES_DATOS.GRUPO_CLIENTE,
|
||
CLIENTES_DATOS.NOMBRE_COMERCIAL,
|
||
CLIENTES_DATOS.VENCIMIENTO_FACTURAS_1,
|
||
CLIENTES_DATOS.VENCIMIENTO_FACTURAS_2,
|
||
CLIENTES_DATOS.VENCIMIENTO_FACTURAS_3,
|
||
CLIENTES_DATOS.BLOQUEADO,
|
||
CLIENTES_DATOS.REGIMEN_IVA,
|
||
CLIENTES_DATOS.MOTIVO_BLOQUEO,
|
||
CLIENTES_DATOS.RECARGO_EQUIVALENCIA,
|
||
CLIENTES_DATOS.ID_TIPO_IVA,
|
||
CLIENTES_DATOS.ID_FORMA_PAGO,
|
||
CLIENTES_DATOS.TIENDA_WEB,
|
||
CLIENTES_DATOS.CODIGO_ASIGNADO,
|
||
CLIENTES_DATOS.DESCUENTO,
|
||
CLIENTES_DATOS.FELICITACION,
|
||
CLIENTES_DATOS.FECHA_INGRESO
|
||
FROM
|
||
V_CONTACTOS
|
||
LEFT OUTER JOIN CLIENTES_DATOS ON (V_CONTACTOS.ID = CLIENTES_DATOS.ID_CLIENTE)
|
||
WHERE
|
||
V_CONTACTOS.ID_CATEGORIA = 1
|
||
;
|
||
|
||
|
||
|
||
/* View: V_EMPLEADOS */
|
||
CREATE VIEW V_EMPLEADOS(
|
||
ID,
|
||
ID_CATEGORIA,
|
||
NIF_CIF,
|
||
NOMBRE,
|
||
PERSONA_CONTACTO,
|
||
CALLE,
|
||
POBLACION,
|
||
PROVINCIA,
|
||
CODIGO_POSTAL,
|
||
TELEFONO_1,
|
||
TELEFONO_2,
|
||
MOVIL_1,
|
||
MOVIL_2,
|
||
FAX,
|
||
EMAIL_1,
|
||
EMAIL_2,
|
||
PAGINA_WEB,
|
||
NOTAS,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO,
|
||
ID_EMPRESA,
|
||
REFERENCIA,
|
||
FECHA_NACIMIENTO,
|
||
CATEGORIA,
|
||
FECHA_ALTA_EMPRESA,
|
||
FORMACION_BASE,
|
||
FORMACION_COMPLE,
|
||
FORMACION_RECIBIDA,
|
||
EXPERIENCIA,
|
||
CONTRATO,
|
||
DURACION,
|
||
FECHA_BAJA,
|
||
CAUSA_BAJA)
|
||
AS
|
||
SELECT V_CONTACTOS.ID,
|
||
V_CONTACTOS.ID_CATEGORIA,
|
||
V_CONTACTOS.NIF_CIF,
|
||
V_CONTACTOS.NOMBRE,
|
||
V_CONTACTOS.PERSONA_CONTACTO,
|
||
V_CONTACTOS.CALLE,
|
||
V_CONTACTOS.POBLACION,
|
||
V_CONTACTOS.PROVINCIA,
|
||
V_CONTACTOS.CODIGO_POSTAL,
|
||
V_CONTACTOS.TELEFONO_1,
|
||
V_CONTACTOS.TELEFONO_2,
|
||
V_CONTACTOS.MOVIL_1,
|
||
V_CONTACTOS.MOVIL_2,
|
||
V_CONTACTOS.FAX,
|
||
V_CONTACTOS.EMAIL_1,
|
||
V_CONTACTOS.EMAIL_2,
|
||
V_CONTACTOS.PAGINA_WEB,
|
||
V_CONTACTOS.NOTAS,
|
||
V_CONTACTOS.FECHA_ALTA,
|
||
V_CONTACTOS.FECHA_MODIFICACION,
|
||
V_CONTACTOS.USUARIO,
|
||
V_CONTACTOS.ID_EMPRESA,
|
||
V_CONTACTOS.REFERENCIA,
|
||
|
||
EMPLEADOS_DATOS.FECHA_NACIMIENTO,
|
||
EMPLEADOS_DATOS.CATEGORIA,
|
||
EMPLEADOS_DATOS.FECHA_ALTA_EMPRESA,
|
||
EMPLEADOS_DATOS.FORMACION_BASE,
|
||
EMPLEADOS_DATOS.FORMACION_COMPLE,
|
||
EMPLEADOS_DATOS.FORMACION_RECIBIDA,
|
||
EMPLEADOS_DATOS.EXPERIENCIA,
|
||
EMPLEADOS_DATOS.CONTRATO,
|
||
EMPLEADOS_DATOS.DURACION,
|
||
EMPLEADOS_DATOS.FECHA_BAJA,
|
||
EMPLEADOS_DATOS.CAUSA_BAJA
|
||
|
||
FROM V_CONTACTOS
|
||
INNER JOIN EMPLEADOS_DATOS ON (EMPLEADOS_DATOS.ID_EMPLEADO = V_CONTACTOS.ID)
|
||
WHERE V_CONTACTOS.ID_CATEGORIA = 3
|
||
;
|
||
|
||
|
||
|
||
/* View: V_REC_FAC_CLI */
|
||
CREATE VIEW V_REC_FAC_CLI(
|
||
ID_FACTURA,
|
||
NUM_RECIBOS)
|
||
AS
|
||
SELECT FACTURAS_CLIENTE.ID, COUNT(RECIBOS_CLIENTE.ID)
|
||
FROM FACTURAS_CLIENTE
|
||
LEFT JOIN RECIBOS_CLIENTE
|
||
ON (RECIBOS_CLIENTE.ID_FACTURA = FACTURAS_CLIENTE.ID)
|
||
GROUP BY FACTURAS_CLIENTE.ID
|
||
;
|
||
|
||
|
||
|
||
/* View: V_REC_CLI_SITUACION */
|
||
CREATE VIEW V_REC_CLI_SITUACION(
|
||
ID_RECIBO,
|
||
SITUACION)
|
||
AS
|
||
SELECT RECIBOS_CLIENTE.ID,
|
||
CASE WHEN (COUNT(PAGOS_CLIENTE.ID_RECIBO)=0) THEN 'PENDIENTE'
|
||
WHEN (MOD(COUNT(PAGOS_CLIENTE.ID_RECIBO), 2)=0) THEN 'DEVUELTO'
|
||
ELSE 'COBRADO'
|
||
END
|
||
FROM RECIBOS_CLIENTE
|
||
LEFT JOIN PAGOS_CLIENTE
|
||
ON (PAGOS_CLIENTE.ID_RECIBO = RECIBOS_CLIENTE.ID)
|
||
GROUP BY RECIBOS_CLIENTE.ID
|
||
;
|
||
|
||
|
||
|
||
/* View: V_REC_FAC_CLI_COBRADOS */
|
||
CREATE VIEW V_REC_FAC_CLI_COBRADOS(
|
||
ID_FACTURA,
|
||
NUM_REC_COBRADOS)
|
||
AS
|
||
SELECT RECIBOS_CLIENTE.ID_FACTURA, COUNT(V_REC_CLI_SITUACION.ID_RECIBO)
|
||
FROM V_REC_CLI_SITUACION LEFT JOIN RECIBOS_CLIENTE ON
|
||
(RECIBOS_CLIENTE.ID = V_REC_CLI_SITUACION.ID_RECIBO)
|
||
WHERE (TRIM(V_REC_CLI_SITUACION.SITUACION) = 'COBRADO')
|
||
GROUP BY RECIBOS_CLIENTE.ID_FACTURA
|
||
;
|
||
|
||
|
||
|
||
/* View: V_FAC_CLI_SITUACION */
|
||
CREATE VIEW V_FAC_CLI_SITUACION(
|
||
ID_FACTURA,
|
||
SITUACION)
|
||
AS
|
||
SELECT ID_FACTURA,
|
||
CASE
|
||
WHEN ((SUM(NUM_RECIBOS) = 0)
|
||
OR (SUM(NUM_REC_COBRADOS) = 0)) THEN 'PENDIENTE'
|
||
WHEN (SUM(NUM_RECIBOS) = SUM(NUM_REC_COBRADOS)) THEN 'PAGADA'
|
||
ELSE 'PARCIALMENTE PAGADA'
|
||
END AS SITUACION
|
||
FROM
|
||
(
|
||
SELECT ID_FACTURA, NUM_RECIBOS, 0 AS NUM_REC_COBRADOS
|
||
FROM V_REC_FAC_CLI
|
||
UNION ALL
|
||
SELECT ID_FACTURA, 0 AS NUM_RECIBOS, NUM_REC_COBRADOS
|
||
FROM V_REC_FAC_CLI_COBRADOS
|
||
)
|
||
GROUP BY ID_FACTURA
|
||
;
|
||
|
||
|
||
|
||
/* View: V_REC_FAC_PRO */
|
||
CREATE VIEW V_REC_FAC_PRO(
|
||
ID_FACTURA,
|
||
NUM_RECIBOS)
|
||
AS
|
||
SELECT FACTURAS_PROVEEDOR.ID, COUNT(RECIBOS_PROVEEDOR.ID)
|
||
FROM FACTURAS_PROVEEDOR
|
||
LEFT JOIN RECIBOS_PROVEEDOR
|
||
ON (RECIBOS_PROVEEDOR.ID_FACTURA = FACTURAS_PROVEEDOR.ID)
|
||
GROUP BY FACTURAS_PROVEEDOR.ID
|
||
;
|
||
|
||
|
||
|
||
/* View: V_REC_PRO_SITUACION */
|
||
CREATE VIEW V_REC_PRO_SITUACION(
|
||
ID_RECIBO,
|
||
SITUACION)
|
||
AS
|
||
SELECT RECIBOS_PROVEEDOR.ID,
|
||
CASE WHEN (COUNT(PAGOS_PROVEEDOR.ID_RECIBO)=0) THEN 'PENDIENTE'
|
||
WHEN (MOD(COUNT(PAGOS_PROVEEDOR.ID_RECIBO), 2)=0) THEN 'DEVUELTO'
|
||
ELSE 'PAGADO'
|
||
END
|
||
FROM RECIBOS_PROVEEDOR
|
||
LEFT JOIN PAGOS_PROVEEDOR
|
||
ON (PAGOS_PROVEEDOR.ID_RECIBO = RECIBOS_PROVEEDOR.ID)
|
||
GROUP BY RECIBOS_PROVEEDOR.ID
|
||
;
|
||
|
||
|
||
|
||
/* View: V_REC_FAC_PRO_PAGADOS */
|
||
CREATE VIEW V_REC_FAC_PRO_PAGADOS(
|
||
ID_FACTURA,
|
||
NUM_REC_PAGADOS)
|
||
AS
|
||
SELECT RECIBOS_PROVEEDOR.ID_FACTURA, COUNT(V_REC_PRO_SITUACION.ID_RECIBO)
|
||
FROM V_REC_PRO_SITUACION LEFT JOIN RECIBOS_PROVEEDOR ON
|
||
(RECIBOS_PROVEEDOR.ID = V_REC_PRO_SITUACION.ID_RECIBO)
|
||
WHERE (TRIM(V_REC_PRO_SITUACION.SITUACION) = 'PAGADO')
|
||
GROUP BY RECIBOS_PROVEEDOR.ID_FACTURA
|
||
;
|
||
|
||
|
||
|
||
/* View: V_FAC_PRO_SITUACION */
|
||
CREATE VIEW V_FAC_PRO_SITUACION(
|
||
ID_FACTURA,
|
||
SITUACION)
|
||
AS
|
||
SELECT ID_FACTURA,
|
||
CASE
|
||
WHEN ((SUM(NUM_RECIBOS) = 0)
|
||
OR (SUM(NUM_REC_PAGADOS) = 0)) THEN 'PENDIENTE'
|
||
WHEN (SUM(NUM_RECIBOS) = SUM(NUM_REC_PAGADOS)) THEN 'PAGADA'
|
||
ELSE 'PARCIALMENTE PAGADA'
|
||
END AS SITUACION
|
||
FROM
|
||
(
|
||
SELECT ID_FACTURA, NUM_RECIBOS, 0 AS NUM_REC_PAGADOS
|
||
FROM V_REC_FAC_PRO
|
||
UNION ALL
|
||
SELECT ID_FACTURA, 0 AS NUM_RECIBOS, NUM_REC_PAGADOS
|
||
FROM V_REC_FAC_PRO_PAGADOS
|
||
)
|
||
GROUP BY ID_FACTURA
|
||
;
|
||
|
||
|
||
|
||
/* View: V_FACTURAS_CLIENTE */
|
||
CREATE VIEW V_FACTURAS_CLIENTE(
|
||
ID,
|
||
ID_EMPRESA,
|
||
REFERENCIA,
|
||
TIPO,
|
||
ID_COMISION_LIQUIDADA,
|
||
FECHA_FACTURA,
|
||
FECHA_VENCIMIENTO,
|
||
FECHA_RETENCION,
|
||
SITUACION,
|
||
BASE_IMPONIBLE,
|
||
DESCUENTO,
|
||
IMPORTE_DESCUENTO,
|
||
IVA,
|
||
IMPORTE_IVA,
|
||
RE,
|
||
IMPORTE_RE,
|
||
IMPORTE_TOTAL,
|
||
OBSERVACIONES,
|
||
ID_CLIENTE,
|
||
NIF_CIF,
|
||
NOMBRE,
|
||
ID_DIRECCION,
|
||
CALLE,
|
||
POBLACION,
|
||
PROVINCIA,
|
||
CODIGO_POSTAL,
|
||
DATOS_BANCARIOS,
|
||
CLIENTE_FINAL,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO,
|
||
ID_FORMA_PAGO,
|
||
RECARGO_EQUIVALENCIA,
|
||
ID_TIPO_IVA,
|
||
IMPORTE_NETO,
|
||
IMPORTE_PORTE,
|
||
ID_AGENTE,
|
||
REFERENCIA_COMISION,
|
||
RETENCION,
|
||
IMPORTE_RETENCION,
|
||
CERTIFICADO_ISO,
|
||
ID_PRESUPUESTO,
|
||
REFERENCIA_PRESUPUESTO,
|
||
FACTURA_WEB)
|
||
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,
|
||
FACTURAS_CLIENTE.FECHA_VENCIMIENTO,
|
||
FACTURAS_CLIENTE.FECHA_RETENCION,
|
||
TRIM(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.ID_DIRECCION,
|
||
FACTURAS_CLIENTE.CALLE,
|
||
FACTURAS_CLIENTE.POBLACION,
|
||
FACTURAS_CLIENTE.PROVINCIA,
|
||
FACTURAS_CLIENTE.CODIGO_POSTAL,
|
||
FACTURAS_CLIENTE.DATOS_BANCARIOS,
|
||
FACTURAS_CLIENTE.CLIENTE_FINAL,
|
||
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,
|
||
FACTURAS_CLIENTE.RETENCION,
|
||
FACTURAS_CLIENTE.IMPORTE_RETENCION,
|
||
FACTURAS_CLIENTE.CERTIFICADO_ISO,
|
||
FACTURAS_CLIENTE.ID_PRESUPUESTO,
|
||
PRESUPUESTOS_CLIENTE.REFERENCIA as REFERENCIA_PRE,
|
||
FACTURAS_CLIENTE.FACTURA_WEB
|
||
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 PRESUPUESTOS_CLIENTE
|
||
ON (PRESUPUESTOS_CLIENTE.ID = FACTURAS_CLIENTE.ID_PRESUPUESTO)
|
||
;
|
||
|
||
|
||
|
||
/* View: V_FACTURAS_PROVEEDOR */
|
||
CREATE VIEW V_FACTURAS_PROVEEDOR(
|
||
ID,
|
||
ID_EMPRESA,
|
||
REFERENCIA,
|
||
TIPO,
|
||
REFERENCIA_PROVEEDOR,
|
||
FECHA_FACTURA,
|
||
FECHA_RECEPCION,
|
||
FECHA_VENCIMIENTO,
|
||
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,
|
||
DATOS_BANCARIOS,
|
||
RETENCION,
|
||
IMPORTE_RETENCION,
|
||
ID_PEDIDO,
|
||
REFERENCIA_PEDIDO)
|
||
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,
|
||
FACTURAS_PROVEEDOR.FECHA_RECEPCION,
|
||
FACTURAS_PROVEEDOR.FECHA_VENCIMIENTO,
|
||
TRIM(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,
|
||
FACTURAS_PROVEEDOR.DATOS_BANCARIOS,
|
||
FACTURAS_PROVEEDOR.RETENCION,
|
||
FACTURAS_PROVEEDOR.IMPORTE_RETENCION,
|
||
FACTURAS_PROVEEDOR.ID_PEDIDO,
|
||
PEDIDOS_PROVEEDOR.REFERENCIA as REFERENCIA_PED
|
||
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 PEDIDOS_PROVEEDOR
|
||
ON (PEDIDOS_PROVEEDOR.ID = FACTURAS_PROVEEDOR.ID_PEDIDO);
|
||
|
||
|
||
|
||
|
||
/* View: V_HIS_MOV_ALB_CLI */
|
||
CREATE VIEW V_HIS_MOV_ALB_CLI(
|
||
FECHA,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
TIPO_MOVIMIENTO,
|
||
CANTIDAD,
|
||
CAUSA)
|
||
AS
|
||
SELECT
|
||
ALBARANES_CLIENTE.FECHA_ALBARAN,
|
||
V_ALB_CLI_DETALLES.ID_ALMACEN,
|
||
V_ALB_CLI_DETALLES.ID_ARTICULO,
|
||
CASE WHEN V_ALB_CLI_DETALLES.CANTIDAD < 0 THEN 'E'
|
||
ELSE 'S' END,
|
||
(-1)*V_ALB_CLI_DETALLES.CANTIDAD,
|
||
CASE WHEN ALBARANES_CLIENTE.IMPORTE_TOTAL < 0 THEN 'Orden de devoluci<63>n de cliente ' || ALBARANES_CLIENTE.REFERENCIA
|
||
ELSE 'Albar<EFBFBD>n de cliente ' || ALBARANES_CLIENTE.REFERENCIA END
|
||
|
||
FROM V_ALB_CLI_DETALLES
|
||
LEFT JOIN ALBARANES_CLIENTE
|
||
ON (V_ALB_CLI_DETALLES.ID_ALBARAN = ALBARANES_CLIENTE.ID)
|
||
|
||
WHERE (V_ALB_CLI_DETALLES.ID_ALMACEN IS NOT NULL)
|
||
AND (V_ALB_CLI_DETALLES.SITUACION in ('ENVIADO', 'SERVIDO'))
|
||
;
|
||
|
||
|
||
|
||
/* View: V_HIS_MOV_ALB_PROV */
|
||
CREATE VIEW V_HIS_MOV_ALB_PROV(
|
||
FECHA,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
TIPO_MOVIMIENTO,
|
||
CANTIDAD,
|
||
CAUSA)
|
||
AS
|
||
SELECT
|
||
ALBARANES_PROVEEDOR.FECHA_ALBARAN,
|
||
V_ALB_PROV_DETALLES.ID_ALMACEN,
|
||
V_ALB_PROV_DETALLES.ID_ARTICULO,
|
||
CASE WHEN V_ALB_PROV_DETALLES.CANTIDAD < 0 THEN 'S'
|
||
ELSE 'E' END,
|
||
V_ALB_PROV_DETALLES.CANTIDAD,
|
||
CASE WHEN ALBARANES_PROVEEDOR.IMPORTE_TOTAL < 0 THEN 'Orden de devoluci<63>n ' || ALBARANES_PROVEEDOR.REFERENCIA
|
||
ELSE 'Albar<EFBFBD>n de proveedor ' || ALBARANES_PROVEEDOR.REFERENCIA END
|
||
|
||
|
||
FROM V_ALB_PROV_DETALLES
|
||
LEFT JOIN ALBARANES_PROVEEDOR
|
||
ON (V_ALB_PROV_DETALLES.ID_ALBARAN = ALBARANES_PROVEEDOR.ID)
|
||
WHERE (V_ALB_PROV_DETALLES.ID_ALMACEN IS NOT NULL)
|
||
;
|
||
|
||
|
||
|
||
/* View: V_HIS_MOV_REGULARIZACIONES */
|
||
CREATE VIEW V_HIS_MOV_REGULARIZACIONES(
|
||
FECHA,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
TIPO_MOVIMIENTO,
|
||
CANTIDAD,
|
||
CAUSA)
|
||
AS
|
||
SELECT FECHA_MOVIMIENTO, ID_ALMACEN, ID_ARTICULO, TIPO,
|
||
CASE WHEN TIPO = 'S' THEN (-1)* CANTIDAD
|
||
ELSE CANTIDAD END,
|
||
'Regularizaci<EFBFBD>n por - ' || CAUSA
|
||
FROM MOVIMIENTOS
|
||
;
|
||
|
||
|
||
|
||
/* View: V_HIS_MOV_AUX */
|
||
CREATE VIEW V_HIS_MOV_AUX(
|
||
FECHA,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
TIPO_MOVIMIENTO,
|
||
CANTIDAD,
|
||
CAUSA)
|
||
AS
|
||
SELECT
|
||
FECHA,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
TIPO_MOVIMIENTO,
|
||
CANTIDAD,
|
||
CAUSA
|
||
FROM V_HIS_MOV_ALB_PROV
|
||
UNION ALL
|
||
SELECT
|
||
FECHA,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
TIPO_MOVIMIENTO,
|
||
CANTIDAD,
|
||
CAUSA
|
||
FROM V_HIS_MOV_ALB_CLI
|
||
UNION ALL
|
||
SELECT
|
||
FECHA,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
TIPO_MOVIMIENTO,
|
||
CANTIDAD,
|
||
CAUSA
|
||
FROM V_HIS_MOV_REGULARIZACIONES
|
||
;
|
||
|
||
|
||
|
||
/* View: V_HISTORICO_MOVIMIENTOS */
|
||
CREATE VIEW V_HISTORICO_MOVIMIENTOS(
|
||
FECHA,
|
||
ID_ALMACEN,
|
||
ID_EMPRESA,
|
||
NOMBRE_ALMACEN,
|
||
ID_ARTICULO,
|
||
FAMILIA,
|
||
REFERENCIA,
|
||
UNIDAD_MEDIDA,
|
||
FABRICANTE,
|
||
REFERENCIA_FABR,
|
||
DESCRIPCION,
|
||
TIPO_MOVIMIENTO,
|
||
CANTIDAD,
|
||
CAUSA)
|
||
AS
|
||
SELECT
|
||
V_HIS_MOV_AUX.FECHA,
|
||
V_HIS_MOV_AUX.ID_ALMACEN,
|
||
ALMACENES.ID_EMPRESA,
|
||
ALMACENES.NOMBRE,
|
||
V_HIS_MOV_AUX.ID_ARTICULO,
|
||
ARTICULOS.FAMILIA,
|
||
ARTICULOS.REFERENCIA,
|
||
ARTICULOS.UNIDAD_MEDIDA,
|
||
ARTICULOS.FABRICANTE,
|
||
ARTICULOS.REFERENCIA_FABR,
|
||
ARTICULOS.DESCRIPCION,
|
||
V_HIS_MOV_AUX.TIPO_MOVIMIENTO,
|
||
V_HIS_MOV_AUX.CANTIDAD,
|
||
V_HIS_MOV_AUX.CAUSA
|
||
|
||
FROM V_HIS_MOV_AUX
|
||
LEFT JOIN ALMACENES ON (ALMACENES.ID = V_HIS_MOV_AUX.ID_ALMACEN)
|
||
LEFT JOIN ARTICULOS ON (ARTICULOS.ID = V_HIS_MOV_AUX.ID_ARTICULO)
|
||
|
||
WHERE (V_HIS_MOV_AUX.ID_ARTICULO <> 0)
|
||
AND (ARTICULOS.INVENTARIABLE = 1)
|
||
;
|
||
|
||
|
||
/* View: V_INV_DETALLE_RESERVAS */
|
||
CREATE VIEW V_INV_DETALLE_RESERVAS(
|
||
ID,
|
||
ID_EMPRESA,
|
||
ID_ALMACEN,
|
||
NOMBRE_ALMACEN,
|
||
FECHA_RESERVA,
|
||
CAUSA_RESERVA,
|
||
ID_ARTICULO,
|
||
REFERENCIA,
|
||
DESCRIPCION,
|
||
FAMILIA,
|
||
UNIDAD_MEDIDA,
|
||
FABRICANTE,
|
||
REFERENCIA_FABR,
|
||
CANTIDAD,
|
||
ID_ALMACEN_RESERVA,
|
||
NOMBRE_ALMACEN_RESERVA,
|
||
ID_EMPRESA_ALMACEN_RESERVA)
|
||
AS
|
||
select movimientos.id, almacenes1.ID_EMPRESA, movimientos.ID_ALMACEN, almacenes1.nombre as nombre_almacen,
|
||
movimientos.fecha_movimiento as fecha_reserva, movimientos.causa, movimientos.id_articulo,
|
||
articulos.referencia, articulos.descripcion, articulos.familia,
|
||
articulos.unidad_medida, articulos.fabricante, articulos.referencia_fabr,
|
||
movimientos.cantidad, movimientos.id_almacen_reserva,
|
||
almacenes2.nombre as nombre_almacen_reserva, almacenes2.id_empresa
|
||
from movimientos
|
||
left join almacenes almacenes1 on (almacenes1.ID = movimientos.ID_ALMACEN)
|
||
left join almacenes almacenes2 on (almacenes2.ID = movimientos.ID_ALMACEN_RESERVA)
|
||
left join articulos on (articulos.id = movimientos.id_articulo)
|
||
where tipo = 'R'
|
||
;
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_ENTRADAS_ALB */
|
||
CREATE VIEW V_INV_ENTRADAS_ALB(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ID_ALMACEN, ID_ARTICULO, SUM(CANTIDAD)
|
||
FROM V_ALB_PROV_DETALLES
|
||
WHERE (ID_ALMACEN IS NOT NULL)
|
||
GROUP BY ID_ALMACEN, ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_ENTRADAS_MOV */
|
||
CREATE VIEW V_INV_ENTRADAS_MOV(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ID_ALMACEN, ID_ARTICULO, SUM(CANTIDAD)
|
||
FROM MOVIMIENTOS
|
||
WHERE TIPO = 'E'
|
||
GROUP BY ID_ALMACEN, ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_ENTRADAS_AUX */
|
||
CREATE VIEW V_INV_ENTRADAS_AUX(
|
||
TIPO,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT 'ALB',
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD
|
||
FROM V_INV_ENTRADAS_ALB
|
||
UNION ALL
|
||
SELECT 'MOV',
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD
|
||
FROM V_INV_ENTRADAS_MOV
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_ENTRADAS */
|
||
CREATE VIEW V_INV_ENTRADAS(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
SUM(CANTIDAD) as CANTIDAD
|
||
FROM V_INV_ENTRADAS_AUX
|
||
|
||
GROUP BY ID_ALMACEN,
|
||
ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_PED_PROV_ARTICULOS_RECIBIDOS */
|
||
CREATE VIEW V_PED_PROV_ARTICULOS_RECIBIDOS(
|
||
ID_PEDIDO,
|
||
ID_ARTICULO,
|
||
DESCRIPCION,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ID_PEDIDO, ID_ARTICULO, DESCRIPCION,
|
||
SUM(CANTIDAD) AS CANTIDAD
|
||
FROM V_ALB_PROV_DETALLES
|
||
WHERE (ID_PEDIDO is not null)
|
||
GROUP BY ID_PEDIDO, ID_ARTICULO, DESCRIPCION;
|
||
|
||
|
||
/* View: V_PED_PROV_DETALLES */
|
||
CREATE VIEW V_PED_PROV_DETALLES(
|
||
ID_PEDIDO,
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
DESCRIPCION,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT PEDIDOS_PROVEEDOR_DETALLES.ID_PEDIDO,
|
||
PEDIDOS_PROVEEDOR.ID_ALMACEN,
|
||
COALESCE(PEDIDOS_PROVEEDOR_DETALLES.ID_ARTICULO, 0),
|
||
CASE
|
||
WHEN PEDIDOS_PROVEEDOR_DETALLES.ID_ARTICULO IS NULL THEN PEDIDOS_PROVEEDOR_DETALLES.CONCEPTO
|
||
ELSE NULL
|
||
END,
|
||
SUM(COALESCE(PEDIDOS_PROVEEDOR_DETALLES.CANTIDAD, 0))
|
||
|
||
FROM PEDIDOS_PROVEEDOR_DETALLES
|
||
INNER JOIN PEDIDOS_PROVEEDOR
|
||
ON (PEDIDOS_PROVEEDOR_DETALLES.ID_PEDIDO = PEDIDOS_PROVEEDOR.ID)
|
||
|
||
/*Mantenemos los articulos inventariables y aquellos que no existan en nuestro cat<61>logo con el fin de no falsear la situaci<63>n de los pedidos
|
||
LEFT JOIN ARTICULOS
|
||
ON (PEDIDOS_PROVEEDOR_DETALLES.ID_ARTICULO = ARTICULOS.ID)
|
||
|
||
WHERE (PEDIDOS_PROVEEDOR_DETALLES.ID_ARTICULO is not null)
|
||
AND (ARTICULOS.INVENTARIABLE = 1)
|
||
*/
|
||
|
||
GROUP BY PEDIDOS_PROVEEDOR_DETALLES.ID_PEDIDO,
|
||
PEDIDOS_PROVEEDOR.ID_ALMACEN,
|
||
PEDIDOS_PROVEEDOR_DETALLES.ID_ARTICULO,
|
||
4;
|
||
|
||
|
||
|
||
/* View: V_PED_PROV_ARTICULOS_AUX */
|
||
CREATE VIEW V_PED_PROV_ARTICULOS_AUX(
|
||
ID_PEDIDO,
|
||
ID_ARTICULO,
|
||
DESCRIPCION,
|
||
CANTIDAD_PEDIDA,
|
||
CANTIDAD_RECIBIDA)
|
||
AS
|
||
SELECT
|
||
V_PED_PROV_DETALLES.ID_PEDIDO,
|
||
V_PED_PROV_DETALLES.ID_ARTICULO,
|
||
V_PED_PROV_DETALLES.DESCRIPCION,
|
||
V_PED_PROV_DETALLES.CANTIDAD AS CANTIDAD_PEDIDA,
|
||
0 as CANTIDAD_RECIBIDA
|
||
FROM V_PED_PROV_DETALLES
|
||
UNION ALL
|
||
SELECT
|
||
V_PED_PROV_ARTICULOS_RECIBIDOS.ID_PEDIDO,
|
||
V_PED_PROV_ARTICULOS_RECIBIDOS.ID_ARTICULO,
|
||
V_PED_PROV_ARTICULOS_RECIBIDOS.DESCRIPCION,
|
||
NULL as CANTIDAD_PEDIDA,
|
||
V_PED_PROV_ARTICULOS_RECIBIDOS.CANTIDAD AS CANTIDAD_RECIBIDA
|
||
FROM V_PED_PROV_ARTICULOS_RECIBIDOS
|
||
;
|
||
|
||
|
||
/* View: V_PED_PROV_ARTICULOS */
|
||
CREATE VIEW V_PED_PROV_ARTICULOS(
|
||
ID_PEDIDO,
|
||
ID_ARTICULO,
|
||
DESCRIPCION,
|
||
CANTIDAD_PEDIDA,
|
||
CANTIDAD_RECIBIDA,
|
||
CANTIDAD_PENDIENTE)
|
||
AS
|
||
SELECT ID_PEDIDO,
|
||
/*PEDIDOS_PROVEEDOR.ID_ALMACEN,*/
|
||
ID_ARTICULO,
|
||
DESCRIPCION,
|
||
SUM(CANTIDAD_PEDIDA) as CANTIDAD_PEDIDA,
|
||
SUM(CANTIDAD_RECIBIDA) as CANTIDAD_RECIBIDA,
|
||
SUM(CANTIDAD_PEDIDA) - SUM(CANTIDAD_RECIBIDA) as CANTIDAD_PENDIENTE
|
||
FROM V_PED_PROV_ARTICULOS_AUX
|
||
/*
|
||
LEFT JOIN PEDIDOS_PROVEEDOR
|
||
ON (PEDIDOS_PROVEEDOR.ID = V_PED_PROV_ARTICULOS_AUX.ID_PEDIDO)
|
||
*/
|
||
GROUP BY ID_PEDIDO,
|
||
/*PEDIDOS_PROVEEDOR.ID_ALMACEN,*/
|
||
ID_ARTICULO,
|
||
DESCRIPCION
|
||
HAVING SUM(CANTIDAD_PEDIDA) IS NOT NULL
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_ENTRADAS_PENDIENTES */
|
||
CREATE VIEW V_INV_ENTRADAS_PENDIENTES(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT PEDIDOS_PROVEEDOR.ID_ALMACEN, V_PED_PROV_ARTICULOS.ID_ARTICULO, SUM(V_PED_PROV_ARTICULOS.CANTIDAD_PENDIENTE)
|
||
FROM V_PED_PROV_ARTICULOS
|
||
LEFT JOIN PEDIDOS_PROVEEDOR
|
||
ON (PEDIDOS_PROVEEDOR.ID = V_PED_PROV_ARTICULOS.ID_PEDIDO)
|
||
WHERE (PEDIDOS_PROVEEDOR.ID_ALMACEN IS NOT NULL)
|
||
GROUP BY PEDIDOS_PROVEEDOR.ID_ALMACEN, V_PED_PROV_ARTICULOS.ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_RESERVAS_AUX */
|
||
CREATE VIEW V_INV_RESERVAS_AUX(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ID_ALMACEN, ID_ARTICULO, SUM(CANTIDAD)
|
||
FROM V_ALB_CLI_DETALLES
|
||
WHERE (ID_ALMACEN IS NOT NULL)
|
||
AND (SITUACION = 'PENDIENTE')
|
||
GROUP BY ID_ALMACEN, ID_ARTICULO
|
||
UNION ALL
|
||
SELECT ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD
|
||
FROM MOVIMIENTOS
|
||
WHERE TIPO = 'R'
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_RESERVAS */
|
||
CREATE VIEW V_INV_RESERVAS(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ID_ALMACEN, ID_ARTICULO, SUM(CANTIDAD)
|
||
FROM V_INV_RESERVAS_AUX
|
||
GROUP BY ID_ALMACEN, ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_SALIDAS_ALB */
|
||
CREATE VIEW V_INV_SALIDAS_ALB(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ID_ALMACEN, ID_ARTICULO, SUM(CANTIDAD)
|
||
FROM V_ALB_CLI_DETALLES
|
||
WHERE (ID_ALMACEN IS NOT NULL)
|
||
AND (SITUACION in ('ENVIADO', 'SERVIDO'))
|
||
GROUP BY ID_ALMACEN, ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_SALIDAS_MOV */
|
||
CREATE VIEW V_INV_SALIDAS_MOV(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ID_ALMACEN, ID_ARTICULO, SUM(CANTIDAD)
|
||
FROM MOVIMIENTOS
|
||
WHERE TIPO = 'S'
|
||
GROUP BY ID_ALMACEN, ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_SALIDAS_AUX */
|
||
CREATE VIEW V_INV_SALIDAS_AUX(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD
|
||
FROM V_INV_SALIDAS_ALB
|
||
UNION ALL
|
||
SELECT ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD
|
||
FROM V_INV_SALIDAS_MOV
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_SALIDAS */
|
||
CREATE VIEW V_INV_SALIDAS(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
SUM(CANTIDAD) as CANTIDAD
|
||
FROM V_INV_SALIDAS_AUX
|
||
|
||
GROUP BY ID_ALMACEN,
|
||
ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_STOCK_AUX */
|
||
CREATE VIEW V_INV_STOCK_AUX(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD_ENTRADA,
|
||
CANTIDAD_SALIDA)
|
||
AS
|
||
SELECT ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD as CANTIDAD_ENTRADA,
|
||
0 as CANTIDAD_SALIDA
|
||
FROM V_INV_ENTRADAS
|
||
UNION ALL
|
||
SELECT ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
0 as CANTIDAD_ENTRADA,
|
||
CANTIDAD as CANTIDAD_SALIDA
|
||
FROM V_INV_SALIDAS
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INV_STOCK */
|
||
CREATE VIEW V_INV_STOCK(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
CANTIDAD)
|
||
AS
|
||
SELECT
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
(SUM(CANTIDAD_ENTRADA) - SUM(CANTIDAD_SALIDA)) as CANTIDAD
|
||
FROM V_INV_STOCK_AUX
|
||
GROUP BY ID_ALMACEN,
|
||
ID_ARTICULO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INVENTARIO_AUX */
|
||
CREATE VIEW V_INVENTARIO_AUX(
|
||
ID_ALMACEN,
|
||
ID_ARTICULO,
|
||
STOCK,
|
||
PENDIENTE_RECEPCION,
|
||
RESERVA)
|
||
AS
|
||
SELECT ID_ALMACEN, ID_ARTICULO, CANTIDAD as STOCK, 0 as PENDIENTES, 0 as RESERVADAS
|
||
FROM V_INV_STOCK
|
||
UNION ALL
|
||
SELECT ID_ALMACEN, ID_ARTICULO, 0 as STOCK, CANTIDAD as PENDIENTES, 0 AS RESERVADAS
|
||
FROM V_INV_ENTRADAS_PENDIENTES
|
||
UNION ALL
|
||
SELECT ID_ALMACEN, ID_ARTICULO, 0 as STOCK, 0 as PENDIENTES, CANTIDAD AS RESERVADAS
|
||
FROM V_INV_RESERVAS
|
||
;
|
||
|
||
|
||
|
||
/* View: V_INVENTARIO */
|
||
CREATE VIEW V_INVENTARIO(
|
||
ID_ALMACEN,
|
||
ID_EMPRESA,
|
||
TIPO_ALMACEN,
|
||
NOMBRE,
|
||
ID_ARTICULO,
|
||
REFERENCIA,
|
||
FAMILIA,
|
||
DESCRIPCION,
|
||
REFERENCIA_FAB,
|
||
UNIDAD_MEDIDA,
|
||
STOCK,
|
||
UNIDADES_ALMACEN,
|
||
RESERVA,
|
||
PENDIENTE_RECEPCION)
|
||
AS
|
||
SELECT ID_ALMACEN,
|
||
ALMACENES.ID_EMPRESA,
|
||
ALMACENES.TIPO_ALMACEN,
|
||
ALMACENES.NOMBRE,
|
||
ID_ARTICULO,
|
||
ARTICULOS.REFERENCIA,
|
||
ARTICULOS.FAMILIA,
|
||
ARTICULOS.DESCRIPCION,
|
||
ARTICULOS.REFERENCIA_FABR,
|
||
ARTICULOS.UNIDAD_MEDIDA,
|
||
/* COALESCE(ARTICULOS.PRECIO_NETO,0) as PRECIO_NETO,*/
|
||
(SUM(STOCK) - SUM(RESERVA)) as STOCK,
|
||
SUM(STOCK) as UNIDADES_ALMACEN,
|
||
|
||
/*Si las unidades son negativas no se tiene en cuenta el coste*/
|
||
/* CASE WHEN (SUM(STOCK) < 0) THEN 0
|
||
ELSE (COALESCE(ARTICULOS.PRECIO_NETO,0) * SUM(STOCK))
|
||
END as COSTE_UNIDADES,
|
||
*/
|
||
SUM(RESERVA) as RESERVA,
|
||
SUM(PENDIENTE_RECEPCION) as PENDIENTE_RECEPCION
|
||
|
||
FROM V_INVENTARIO_AUX
|
||
LEFT JOIN ARTICULOS
|
||
ON (ARTICULOS.ID = V_INVENTARIO_AUX.ID_ARTICULO)
|
||
LEFT JOIN ALMACENES
|
||
ON (ALMACENES.ID = V_INVENTARIO_AUX.ID_ALMACEN)
|
||
|
||
WHERE (ID_ARTICULO <> 0)
|
||
AND (ARTICULOS.ELIMINADO = 0)
|
||
AND (ARTICULOS.INVENTARIABLE = 1)
|
||
|
||
GROUP BY ID_ALMACEN,
|
||
ALMACENES.ID_EMPRESA,
|
||
ALMACENES.TIPO_ALMACEN,
|
||
ALMACENES.NOMBRE,
|
||
ID_ARTICULO,
|
||
ARTICULOS.REFERENCIA,
|
||
ARTICULOS.FAMILIA,
|
||
ARTICULOS.DESCRIPCION,
|
||
ARTICULOS.REFERENCIA_FABR,
|
||
ARTICULOS.UNIDAD_MEDIDA
|
||
/* ARTICULOS.PRECIO_NETO*/
|
||
|
||
/*QUITAMOS AQUELLAS TUPLAS DE LAS QUE NO TENEMOS UNIDADES EN EL ALAMCEN, NO HAY RESERVAS NI PEDIDOS PENDIENTES DE RECIBIR*/
|
||
HAVING ((SUM(STOCK) <> 0 ) OR (SUM(RESERVA) <> 0) OR (SUM(PENDIENTE_RECEPCION) <> 0))
|
||
;
|
||
|
||
|
||
/* View: V_OBRAS */
|
||
CREATE VIEW V_OBRAS(
|
||
ID,
|
||
ID_EMPRESA,
|
||
NOMBRE,
|
||
CALLE,
|
||
PROVINCIA,
|
||
POBLACION,
|
||
CODIGO_POSTAL,
|
||
TELEFONO,
|
||
MOVIL,
|
||
FAX,
|
||
PERSONA_CONTACTO,
|
||
OBSERVACIONES,
|
||
ID_CLIENTE,
|
||
NOMBRE_CLIENTE,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO,
|
||
ID_EJECUCION)
|
||
AS
|
||
SELECT ALMACENES.ID, ALMACENES.ID_EMPRESA, ALMACENES.NOMBRE,
|
||
ALMACENES.CALLE, ALMACENES.PROVINCIA, ALMACENES.POBLACION, ALMACENES.CODIGO_POSTAL,
|
||
ALMACENES.TELEFONO, ALMACENES.MOVIL, ALMACENES.FAX, ALMACENES.PERSONA_CONTACTO,
|
||
ALMACENES.OBSERVACIONES, OBRAS_DATOS.ID_CLIENTE, CLIENTES.NOMBRE AS NOMBRE_CLIENTE,
|
||
ALMACENES.FECHA_ALTA, ALMACENES.FECHA_MODIFICACION, ALMACENES.USUARIO,
|
||
CASE
|
||
WHEN (OBRAS_EJECUCIONES.FECHA_INICIO IS NULL) THEN NULL
|
||
WHEN (OBRAS_EJECUCIONES.FECHA_INICIO IS NOT NULL) THEN OBRAS_EJECUCIONES.ID
|
||
END AS ID_EJECUCION
|
||
FROM ALMACENES
|
||
INNER JOIN OBRAS_DATOS ON (OBRAS_DATOS.ID_ALMACEN = ALMACENES.ID)
|
||
LEFT OUTER JOIN CONTACTOS AS CLIENTES ON (CLIENTES.ID = OBRAS_DATOS.ID_CLIENTE)
|
||
LEFT OUTER JOIN OBRAS_EJECUCIONES ON ((OBRAS_EJECUCIONES.ID_OBRA = ALMACENES.ID) AND (OBRAS_EJECUCIONES.FECHA_FIN IS NULL))
|
||
WHERE ALMACENES.TIPO_ALMACEN = 'OBRA';
|
||
|
||
|
||
/* View: V_OBRAS_EJECUCIONES */
|
||
CREATE VIEW V_OBRAS_EJECUCIONES(
|
||
ID,
|
||
ID_OBRA,
|
||
FECHA_INICIO,
|
||
FECHA_FIN,
|
||
ID_SUBCONTRATA,
|
||
NOMBRE,
|
||
IMPORTE_GASTOS,
|
||
IMPORTE_INGRESOS,
|
||
IMPORTE_TOTAL,
|
||
OBSERVACIONES,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION)
|
||
AS
|
||
SELECT
|
||
OBRAS_EJECUCIONES.ID,
|
||
OBRAS_EJECUCIONES.ID_OBRA,
|
||
OBRAS_EJECUCIONES.FECHA_INICIO,
|
||
OBRAS_EJECUCIONES.FECHA_FIN,
|
||
OBRAS_EJECUCIONES.ID_SUBCONTRATA,
|
||
CONTACTOS.NOMBRE,
|
||
COALESCE(SUM(PEDIDOS_PROVEEDOR.BASE_IMPONIBLE), 0) IMPORTE_GASTOS,
|
||
COALESCE(SUM(PRESUPUESTOS_CLIENTE.BASE_IMPONIBLE), 0) IMPORTE_INGRESOS,
|
||
COALESCE(SUM(PRESUPUESTOS_CLIENTE.BASE_IMPONIBLE), 0) - COALESCE(SUM(PEDIDOS_PROVEEDOR.BASE_IMPONIBLE), 0) IMPORTE_TOTAL,
|
||
OBRAS_EJECUCIONES.OBSERVACIONES,
|
||
OBRAS_EJECUCIONES.FECHA_ALTA,
|
||
OBRAS_EJECUCIONES.FECHA_MODIFICACION
|
||
FROM OBRAS_EJECUCIONES
|
||
LEFT OUTER JOIN CONTACTOS ON (CONTACTOS.ID = OBRAS_EJECUCIONES.ID_SUBCONTRATA)
|
||
LEFT OUTER JOIN OBRAS_EJECUCIONES_PRESUPUESTOS ON (OBRAS_EJECUCIONES_PRESUPUESTOS.ID_EJECUCION = OBRAS_EJECUCIONES.ID)
|
||
LEFT OUTER JOIN PRESUPUESTOS_CLIENTE ON (PRESUPUESTOS_CLIENTE.ID = OBRAS_EJECUCIONES_PRESUPUESTOS.ID_PRESUPUESTO)
|
||
LEFT OUTER JOIN OBRAS_EJECUCIONES_PEDIDOS_PROV ON (OBRAS_EJECUCIONES_PEDIDOS_PROV.ID_EJECUCION = OBRAS_EJECUCIONES.ID)
|
||
LEFT OUTER JOIN PEDIDOS_PROVEEDOR ON (PEDIDOS_PROVEEDOR.ID = OBRAS_EJECUCIONES_PEDIDOS_PROV.ID_PEDIDO)
|
||
GROUP BY
|
||
OBRAS_EJECUCIONES.ID,
|
||
OBRAS_EJECUCIONES.ID_OBRA,
|
||
OBRAS_EJECUCIONES.FECHA_INICIO,
|
||
OBRAS_EJECUCIONES.FECHA_FIN,
|
||
OBRAS_EJECUCIONES.ID_SUBCONTRATA,
|
||
CONTACTOS.NOMBRE,
|
||
OBRAS_EJECUCIONES.OBSERVACIONES,
|
||
OBRAS_EJECUCIONES.FECHA_ALTA,
|
||
OBRAS_EJECUCIONES.FECHA_MODIFICACION;
|
||
|
||
|
||
/* View: V_PED_PROV_SITUACION */
|
||
CREATE VIEW V_PED_PROV_SITUACION(
|
||
ID_PEDIDO,
|
||
SITUACION)
|
||
AS
|
||
SELECT ID_PEDIDO,
|
||
CASE WHEN (SUM(CANTIDAD_PENDIENTE) > 0) AND (SUM(CANTIDAD_RECIBIDA) = 0) THEN 'PENDIENTE'
|
||
WHEN (SUM(CANTIDAD_PENDIENTE) <= 0) THEN 'RECIBIDO'
|
||
WHEN (SUM(CANTIDAD_PENDIENTE) > 0) AND (SUM(CANTIDAD_RECIBIDA) > 0) THEN 'PARCIAL'
|
||
ELSE 'N/A'
|
||
END AS SITUACION
|
||
FROM V_PED_PROV_ARTICULOS
|
||
GROUP BY V_PED_PROV_ARTICULOS.ID_PEDIDO
|
||
;
|
||
|
||
CREATE VIEW V_PEDIDOS_PROV_NUM_FAC(
|
||
ID_PEDIDO,
|
||
NUM_FACTURAS)
|
||
AS
|
||
select id,
|
||
case
|
||
when sum(num)=0 then null
|
||
else sum(num) || ' factura/s'
|
||
end
|
||
|
||
from
|
||
(
|
||
select id as id, 0 as num
|
||
from pedidos_proveedor
|
||
|
||
union
|
||
|
||
select ID_PEDIDO as id, count(ID) as num
|
||
from facturas_proveedor
|
||
where ID_PEDIDO is not null
|
||
group by 1
|
||
)
|
||
group by 1
|
||
;
|
||
|
||
/* View: V_PEDIDOS_PROVEEDOR */
|
||
CREATE VIEW V_PEDIDOS_PROVEEDOR(
|
||
ID,
|
||
ID_EMPRESA,
|
||
ID_PROVEEDOR,
|
||
NOMBRE,
|
||
ID_DIRECCION,
|
||
PERSONA_CONTACTO_PROV,
|
||
REFERENCIA,
|
||
SITUACION,
|
||
FECHA_ENVIO,
|
||
FECHA_PEDIDO,
|
||
FECHA_CONFIRMACION,
|
||
FECHA_ENTREGA,
|
||
ID_ALMACEN,
|
||
TIPO_ALMACEN,
|
||
NOMBRE_ALMACEN,
|
||
ID_OBRA,
|
||
NOMBRE_OBRA,
|
||
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_FACTURAS)
|
||
AS
|
||
SELECT
|
||
PEDIDOS_PROVEEDOR.ID,
|
||
PEDIDOS_PROVEEDOR.ID_EMPRESA,
|
||
PEDIDOS_PROVEEDOR.ID_PROVEEDOR,
|
||
CONTACTOS.NOMBRE,
|
||
PEDIDOS_PROVEEDOR.ID_DIRECCION,
|
||
PEDIDOS_PROVEEDOR.PERSONA_CONTACTO_PROV,
|
||
PEDIDOS_PROVEEDOR.REFERENCIA,
|
||
TRIM(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.TIPO_ALMACEN,
|
||
ALMACENES.NOMBRE AS NOMBRE_ALMACEN,
|
||
PEDIDOS_PROVEEDOR.ID_OBRA,
|
||
OBRAS.NOMBRE AS NOMBRE_OBRA,
|
||
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,
|
||
V_PEDIDOS_PROV_NUM_FAC.NUM_FACTURAS
|
||
|
||
FROM
|
||
PEDIDOS_PROVEEDOR
|
||
INNER JOIN CONTACTOS ON (PEDIDOS_PROVEEDOR.ID_PROVEEDOR = CONTACTOS.ID)
|
||
LEFT OUTER 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 ALMACENES OBRAS ON (OBRAS.ID = PEDIDOS_PROVEEDOR.ID_OBRA)
|
||
LEFT OUTER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = PEDIDOS_PROVEEDOR.ID_PEDIDO_CLIENTE)
|
||
left OUTER join V_PEDIDOS_PROV_NUM_FAC ON (V_PEDIDOS_PROV_NUM_FAC.ID_PEDIDO = PEDIDOS_PROVEEDOR.ID)
|
||
;
|
||
|
||
|
||
|
||
CREATE VIEW V_PRESUPUESTOS_NUM_FAC(
|
||
ID_PRESUPUESTO,
|
||
NUM_FACTURAS)
|
||
AS
|
||
select id,
|
||
case
|
||
when sum(num)=0 then null
|
||
else sum(num) || ' factura/s'
|
||
end
|
||
|
||
from
|
||
(
|
||
select id as id, 0 as num
|
||
from presupuestos_cliente
|
||
|
||
union
|
||
|
||
select ID_PRESUPUESTO as id, count(ID) as num
|
||
from facturas_cliente
|
||
where ID_PRESUPUESTO is not null
|
||
group by 1
|
||
)
|
||
group by 1
|
||
;
|
||
|
||
/* View: V_PRESUPUESTOS_CLIENTE */
|
||
CREATE VIEW V_PRESUPUESTOS_CLIENTE(
|
||
ID,
|
||
ID_EMPRESA,
|
||
FECHA_PRESUPUESTO,
|
||
FECHA_DECISION,
|
||
REFERENCIA,
|
||
REFERENCIA_AUX,
|
||
SITUACION,
|
||
ID_CLIENTE,
|
||
ID_DIRECCION,
|
||
NIF_CIF,
|
||
NOMBRE,
|
||
REFERENCIA_CLIENTE,
|
||
CLIENTE_FINAL,
|
||
PORTADA,
|
||
MEMORIA,
|
||
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,
|
||
PERSONA_CONTACTO,
|
||
DESCRIPCION_BONIFICACION,
|
||
IMPORTE_BONIFICACION,
|
||
CERTIFICADO_ISO,
|
||
NUM_FACTURA,
|
||
PRESUPUESTO_WEB)
|
||
AS
|
||
SELECT
|
||
PRESUPUESTOS_CLIENTE.ID,
|
||
PRESUPUESTOS_CLIENTE.ID_EMPRESA,
|
||
PRESUPUESTOS_CLIENTE.FECHA_PRESUPUESTO,
|
||
PRESUPUESTOS_CLIENTE.FECHA_DECISION,
|
||
PRESUPUESTOS_CLIENTE.REFERENCIA,
|
||
PRESUPUESTOS_CLIENTE.REFERENCIA_AUX,
|
||
PRESUPUESTOS_CLIENTE.SITUACION,
|
||
PRESUPUESTOS_CLIENTE.ID_CLIENTE,
|
||
PRESUPUESTOS_CLIENTE.ID_DIRECCION,
|
||
CONTACTOS.NIF_CIF,
|
||
CONTACTOS.NOMBRE,
|
||
PRESUPUESTOS_CLIENTE.REFERENCIA_CLIENTE,
|
||
PRESUPUESTOS_CLIENTE.CLIENTE_FINAL,
|
||
PRESUPUESTOS_CLIENTE.PORTADA,
|
||
PRESUPUESTOS_CLIENTE.MEMORIA,
|
||
PRESUPUESTOS_CLIENTE.OBSERVACIONES,
|
||
PRESUPUESTOS_CLIENTE.INCIDENCIAS,
|
||
PRESUPUESTOS_CLIENTE.INCIDENCIAS_ACTIVAS,
|
||
PRESUPUESTOS_CLIENTE.FECHA_ALTA,
|
||
PRESUPUESTOS_CLIENTE.FECHA_MODIFICACION,
|
||
PRESUPUESTOS_CLIENTE.USUARIO,
|
||
PRESUPUESTOS_CLIENTE.IMPORTE_NETO,
|
||
PRESUPUESTOS_CLIENTE.IMPORTE_PORTE,
|
||
PRESUPUESTOS_CLIENTE.DESCUENTO,
|
||
PRESUPUESTOS_CLIENTE.IMPORTE_DESCUENTO,
|
||
PRESUPUESTOS_CLIENTE.BASE_IMPONIBLE,
|
||
PRESUPUESTOS_CLIENTE.IVA,
|
||
PRESUPUESTOS_CLIENTE.IMPORTE_IVA,
|
||
PRESUPUESTOS_CLIENTE.IMPORTE_TOTAL,
|
||
PRESUPUESTOS_CLIENTE.ID_FORMA_PAGO,
|
||
PRESUPUESTOS_CLIENTE.PERSONA_CONTACTO,
|
||
PRESUPUESTOS_CLIENTE.DESCRIPCION_BONIFICACION,
|
||
PRESUPUESTOS_CLIENTE.IMPORTE_BONIFICACION,
|
||
PRESUPUESTOS_CLIENTE.CERTIFICADO_ISO,
|
||
V_PRESUPUESTOS_NUM_FAC.NUM_FACTURAS,
|
||
PRESUPUESTOS_CLIENTE.PRESUPUESTO_WEB
|
||
FROM
|
||
PRESUPUESTOS_CLIENTE
|
||
inner JOIN CONTACTOS ON (CONTACTOS.ID = PRESUPUESTOS_CLIENTE.ID_CLIENTE)
|
||
inner join V_PRESUPUESTOS_NUM_FAC ON (V_PRESUPUESTOS_NUM_FAC.ID_PRESUPUESTO = PRESUPUESTOS_CLIENTE.ID)
|
||
;
|
||
|
||
|
||
|
||
|
||
/* View: V_PROVEEDORES */
|
||
CREATE VIEW V_PROVEEDORES(
|
||
ID,
|
||
ID_CATEGORIA,
|
||
NIF_CIF,
|
||
NOMBRE,
|
||
PERSONA_CONTACTO,
|
||
CALLE,
|
||
POBLACION,
|
||
PROVINCIA,
|
||
CODIGO_POSTAL,
|
||
TELEFONO_1,
|
||
TELEFONO_2,
|
||
MOVIL_1,
|
||
MOVIL_2,
|
||
FAX,
|
||
EMAIL_1,
|
||
EMAIL_2,
|
||
PAGINA_WEB,
|
||
NOTAS,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO,
|
||
ID_EMPRESA,
|
||
REFERENCIA,
|
||
DESCUENTO,
|
||
DESCRIPCION_PROVEEDOR,
|
||
CODIGO_ASIGNADO,
|
||
GRUPO_PROVEEDOR,
|
||
REGIMEN_IVA,
|
||
ID_TIPO_IVA,
|
||
ID_FORMA_PAGO,
|
||
TIENDA_WEB,
|
||
HOMOLOGADO,
|
||
CERTIFICACION,
|
||
SUBCONTRATA,
|
||
VENCIMIENTO_FACTURAS_1,
|
||
VENCIMIENTO_FACTURAS_2,
|
||
VENCIMIENTO_FACTURAS_3,
|
||
FELICITACION,
|
||
FECHA_INGRESO)
|
||
AS
|
||
SELECT
|
||
V_CONTACTOS.ID,
|
||
V_CONTACTOS.ID_CATEGORIA,
|
||
V_CONTACTOS.NIF_CIF,
|
||
V_CONTACTOS.NOMBRE,
|
||
V_CONTACTOS.PERSONA_CONTACTO,
|
||
V_CONTACTOS.CALLE,
|
||
V_CONTACTOS.POBLACION,
|
||
V_CONTACTOS.PROVINCIA,
|
||
V_CONTACTOS.CODIGO_POSTAL,
|
||
V_CONTACTOS.TELEFONO_1,
|
||
V_CONTACTOS.TELEFONO_2,
|
||
V_CONTACTOS.MOVIL_1,
|
||
V_CONTACTOS.MOVIL_2,
|
||
V_CONTACTOS.FAX,
|
||
V_CONTACTOS.EMAIL_1,
|
||
V_CONTACTOS.EMAIL_2,
|
||
V_CONTACTOS.PAGINA_WEB,
|
||
V_CONTACTOS.NOTAS,
|
||
V_CONTACTOS.FECHA_ALTA,
|
||
V_CONTACTOS.FECHA_MODIFICACION,
|
||
V_CONTACTOS.USUARIO,
|
||
V_CONTACTOS.ID_EMPRESA,
|
||
V_CONTACTOS.REFERENCIA,
|
||
PROVEEDORES_DATOS.DESCUENTO,
|
||
PROVEEDORES_DATOS.DESCRIPCION_PROVEEDOR,
|
||
PROVEEDORES_DATOS.CODIGO_ASIGNADO,
|
||
PROVEEDORES_DATOS.GRUPO_PROVEEDOR,
|
||
PROVEEDORES_DATOS.REGIMEN_IVA,
|
||
PROVEEDORES_DATOS.ID_TIPO_IVA,
|
||
PROVEEDORES_DATOS.ID_FORMA_PAGO,
|
||
PROVEEDORES_DATOS.TIENDA_WEB,
|
||
PROVEEDORES_DATOS.HOMOLOGADO,
|
||
PROVEEDORES_DATOS.CERTIFICACION,
|
||
PROVEEDORES_DATOS.SUBCONTRATA,
|
||
PROVEEDORES_DATOS.VENCIMIENTO_FACTURAS_1,
|
||
PROVEEDORES_DATOS.VENCIMIENTO_FACTURAS_2,
|
||
PROVEEDORES_DATOS.VENCIMIENTO_FACTURAS_3,
|
||
PROVEEDORES_DATOS.FELICITACION,
|
||
PROVEEDORES_DATOS.FECHA_INGRESO
|
||
|
||
FROM
|
||
V_CONTACTOS
|
||
INNER JOIN PROVEEDORES_DATOS ON (PROVEEDORES_DATOS.ID_PROVEEDOR = V_CONTACTOS.ID)
|
||
WHERE
|
||
V_CONTACTOS.ID_CATEGORIA = 2
|
||
;
|
||
|
||
|
||
/* View: V_REC_CLI_COMPENSADOS */
|
||
CREATE VIEW V_REC_CLI_COMPENSADOS(
|
||
ID_RECIBO,
|
||
IMPORTE_TOTAL_COMPENSADO)
|
||
AS
|
||
select ID_RECIBO_COMPENSADO, SUM((IMPORTE + OTROS_GASTOS)) as IMPORTE_TOTAL
|
||
from RECIBOS_CLIENTE
|
||
where ID_RECIBO_COMPENSADO is not null
|
||
group by ID_RECIBO_COMPENSADO
|
||
;
|
||
|
||
|
||
|
||
/* View: V_REC_PRO_COMPENSADOS */
|
||
CREATE VIEW V_REC_PRO_COMPENSADOS(
|
||
ID_RECIBO,
|
||
IMPORTE_TOTAL_COMPENSADO)
|
||
AS
|
||
select ID_RECIBO_COMPENSADO, SUM((IMPORTE + OTROS_GASTOS)) as IMPORTE_TOTAL
|
||
from RECIBOS_PROVEEDOR
|
||
where ID_RECIBO_COMPENSADO is not null
|
||
group by ID_RECIBO_COMPENSADO
|
||
;
|
||
|
||
|
||
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,
|
||
DATOS_BANCARIOS,
|
||
ID_CLIENTE,
|
||
NOMBRE_CLIENTE,
|
||
NIF_CIF_CLIENTE,
|
||
CALLE_CLIENTE,
|
||
POBLACION_CLIENTE,
|
||
CODIGO_POSTAL_CLIENTE,
|
||
PROVINCIA_CLIENTE,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO)
|
||
AS
|
||
SELECT RECIBOS_CLIENTE.ID,
|
||
RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO,
|
||
NULL, /*RECIBO_COMPENSADO1.REFERENCIA, Desactivamos recibos compensados para mejorar rendimiento, ya que no los usan*/
|
||
RECIBOS_CLIENTE.REFERENCIA,
|
||
CASE
|
||
WHEN RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO IS NULL
|
||
THEN TRIM(V_REC_CLI_SITUACION.SITUACION)
|
||
/*ELSE TRIM(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, FACTURAS_CLIENTE.DATOS_BANCARIOS,
|
||
|
||
CONTACTOS.ID as ID_CLIENTE, CONTACTOS.NOMBRE, CONTACTOS.NIF_CIF, CONTACTOS.CALLE, CONTACTOS.POBLACION, CONTACTOS.CODIGO_POSTAL, CONTACTOS.PROVINCIA,
|
||
|
||
RECIBOS_CLIENTE.FECHA_ALTA,
|
||
RECIBOS_CLIENTE.FECHA_MODIFICACION,
|
||
RECIBOS_CLIENTE.USUARIO
|
||
|
||
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 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)
|
||
*/
|
||
;
|
||
|
||
/* View: V_RECIBOS_PROVEEDOR */
|
||
CREATE VIEW V_RECIBOS_PROVEEDOR(
|
||
ID,
|
||
ID_RECIBO_COMPENSADO,
|
||
REFERENCIA_REC_COMPENSADO,
|
||
REFERENCIA,
|
||
REFERENCIA_PROVEEDOR,
|
||
SITUACION,
|
||
ID_FACTURA,
|
||
ID_REMESA,
|
||
REFERENCIA_REMESA,
|
||
FECHA_EMISION,
|
||
FECHA_VENCIMIENTO,
|
||
DESCRIPCION,
|
||
OBSERVACIONES,
|
||
IMPORTE,
|
||
OTROS_GASTOS,
|
||
IMPORTE_TOTAL,
|
||
REFERENCIA_FACTURA_PROV,
|
||
FECHA_FACTURA,
|
||
FORMA_PAGO_FACTURA,
|
||
IMPORTE_FACTURA,
|
||
ID_EMPRESA,
|
||
DATOS_BANCARIOS_FACTURA,
|
||
DATOS_BANCARIOS,
|
||
ID_PROVEEDOR,
|
||
NOMBRE_PROVEEDOR,
|
||
NIF_CIF_PROVEEDOR,
|
||
FECHA_ALTA,
|
||
FECHA_MODIFICACION,
|
||
USUARIO)
|
||
AS
|
||
SELECT RECIBOS_PROVEEDOR.ID,
|
||
RECIBOS_PROVEEDOR.ID_RECIBO_COMPENSADO,
|
||
NULL, /*RECIBO_COMPENSADO1.REFERENCIA, Desactivamos recibos compensados para mejorar rendimiento, ya que no los usan*/
|
||
RECIBOS_PROVEEDOR.REFERENCIA,
|
||
RECIBOS_PROVEEDOR.REFERENCIA_PROVEEDOR,
|
||
CASE
|
||
WHEN RECIBOS_PROVEEDOR.ID_RECIBO_COMPENSADO IS NULL
|
||
THEN TRIM(V_REC_PRO_SITUACION.SITUACION)
|
||
/*ELSE TRIM(RECIBO_COMPENSADO2.SITUACION)*/
|
||
END,
|
||
RECIBOS_PROVEEDOR.ID_FACTURA,
|
||
RECIBOS_PROVEEDOR.ID_REMESA, REMESAS_PROVEEDOR.REFERENCIA as REFERENCIA_REMESA,
|
||
RECIBOS_PROVEEDOR.FECHA_EMISION, RECIBOS_PROVEEDOR.FECHA_VENCIMIENTO, RECIBOS_PROVEEDOR.DESCRIPCION,
|
||
RECIBOS_PROVEEDOR.OBSERVACIONES, RECIBOS_PROVEEDOR.IMPORTE, RECIBOS_PROVEEDOR.OTROS_GASTOS,
|
||
COALESCE(RECIBOS_PROVEEDOR.IMPORTE, 0) + COALESCE(RECIBOS_PROVEEDOR.OTROS_GASTOS, 0), /* + COALESCE(V_REC_PRO_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO, 0),*/
|
||
|
||
FACTURAS_PROVEEDOR.REFERENCIA_PROVEEDOR, FACTURAS_PROVEEDOR.FECHA_FACTURA,
|
||
FORMAS_PAGO.DESCRIPCION, FACTURAS_PROVEEDOR.IMPORTE_TOTAL,
|
||
FACTURAS_PROVEEDOR.ID_EMPRESA, FACTURAS_PROVEEDOR.DATOS_BANCARIOS,
|
||
RECIBOS_PROVEEDOR.DATOS_BANCARIOS,
|
||
|
||
CONTACTOS.ID as ID_PROVEEDOR, CONTACTOS.NOMBRE, CONTACTOS.NIF_CIF,
|
||
|
||
RECIBOS_PROVEEDOR.FECHA_ALTA,
|
||
RECIBOS_PROVEEDOR.FECHA_MODIFICACION,
|
||
RECIBOS_PROVEEDOR.USUARIO
|
||
|
||
FROM RECIBOS_PROVEEDOR
|
||
LEFT JOIN V_REC_PRO_SITUACION
|
||
ON (V_REC_PRO_SITUACION.ID_RECIBO = RECIBOS_PROVEEDOR.ID)
|
||
LEFT JOIN FACTURAS_PROVEEDOR
|
||
ON (FACTURAS_PROVEEDOR.ID = RECIBOS_PROVEEDOR.ID_FACTURA)
|
||
LEFT JOIN FORMAS_PAGO
|
||
ON (FORMAS_PAGO.ID = FACTURAS_PROVEEDOR.ID_FORMA_PAGO)
|
||
LEFT JOIN CONTACTOS
|
||
ON (CONTACTOS.ID = FACTURAS_PROVEEDOR.ID_PROVEEDOR)
|
||
LEFT JOIN REMESAS_PROVEEDOR
|
||
ON (REMESAS_PROVEEDOR.ID = RECIBOS_PROVEEDOR.ID_REMESA)
|
||
/*
|
||
LEFT JOIN V_REC_PRO_COMPENSADOS
|
||
ON (V_REC_PRO_COMPENSADOS.ID_RECIBO = RECIBOS_PROVEEDOR.ID)
|
||
LEFT JOIN RECIBOS_PROVEEDOR RECIBO_COMPENSADO1
|
||
ON (RECIBO_COMPENSADO1.ID = RECIBOS_PROVEEDOR.ID_RECIBO_COMPENSADO)
|
||
LEFT JOIN V_REC_PRO_SITUACION RECIBO_COMPENSADO2
|
||
ON (RECIBO_COMPENSADO2.ID_RECIBO = RECIBOS_PROVEEDOR.ID_RECIBO_COMPENSADO)
|
||
*/
|
||
;
|
||
|
||
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,
|
||
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,
|
||
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)
|
||
GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17
|
||
;
|
||
|
||
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,
|
||
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,
|
||
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)
|
||
GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17
|
||
;
|
||
|
||
|
||
/*VISTAS PARA INFORMES ESTADISTICOS*/
|
||
|
||
CREATE VIEW V_INF_FAC_CLIENTE_TOTAL_ANO(
|
||
ID_EMPRESA,
|
||
ANO,
|
||
IMPORTE_TOTAL)
|
||
AS
|
||
select ID_EMPRESA, EXTRACT(YEAR FROM FECHA_FACTURA) as ANO, SUM(IMPORTE_TOTAL) as IMPORTE_TOTAL
|
||
from FACTURAS_CLIENTE
|
||
group by 1,2
|
||
;
|
||
|
||
CREATE VIEW V_INF_FAC_PROVEEDOR_TOTAL_ANO(
|
||
ID_EMPRESA,
|
||
ANO,
|
||
IMPORTE_TOTAL)
|
||
AS
|
||
select ID_EMPRESA, EXTRACT(YEAR FROM FECHA_FACTURA) as ANO, SUM(IMPORTE_TOTAL) as IMPORTE_TOTAL
|
||
from FACTURAS_PROVEEDOR
|
||
group by 1,2
|
||
;
|
||
|
||
CREATE VIEW V_INF_PRE_CLIENTE_TOTAL_ANO(
|
||
ID_EMPRESA,
|
||
ANO,
|
||
IMPORTE_TOTAL)
|
||
AS
|
||
select ID_EMPRESA, EXTRACT(YEAR FROM FECHA_PRESUPUESTO) as ANO, SUM(IMPORTE_TOTAL) as IMPORTE_TOTAL
|
||
from PRESUPUESTOS_CLIENTE
|
||
group by 1,2
|
||
;
|
||
|
||
CREATE VIEW V_INF_PRE_CLIENTE_AUX(
|
||
ID,
|
||
ACEPTADOS,
|
||
ANULADOS,
|
||
PENDIENTES)
|
||
AS
|
||
select ID,
|
||
CASE WHEN SITUACION = 'ACEPTADO' then 1
|
||
ELSE 0
|
||
end as ACEPTADOS,
|
||
CASE WHEN SITUACION = 'ANULADO' then 1
|
||
ELSE 0
|
||
end as ANULADOS,
|
||
CASE WHEN SITUACION = 'PENDIENTE' then 1
|
||
ELSE 0
|
||
end as PENDIENTES
|
||
|
||
from presupuestos_cliente
|
||
;
|
||
|
||
CREATE VIEW V_INF_PRE_CLIENTE(
|
||
ID_EMPRESA,
|
||
ANO,
|
||
SEMESTRE,
|
||
TRIMESTRE,
|
||
MES,
|
||
ID_PRESUPUESTO,
|
||
FECHA_PRESUPUESTO,
|
||
ID_CLIENTE,
|
||
ACEPTADOS,
|
||
ANULADOS,
|
||
PENDIENTES,
|
||
IMPORTE_TOTAL,
|
||
IMPORTE_TOTAL_ANO)
|
||
AS
|
||
select P.ID_EMPRESA,
|
||
EXTRACT(YEAR FROM P.FECHA_PRESUPUESTO) as ANO,
|
||
CAST((DIV(EXTRACT(MONTH FROM P.FECHA_PRESUPUESTO),7)+1) AS SMALLINT) as SEMESTRE,
|
||
CAST((DIV(EXTRACT(MONTH FROM P.FECHA_PRESUPUESTO)+2,3)) AS SMALLINT) as TRIMESTRE,
|
||
EXTRACT(MONTH FROM P.FECHA_PRESUPUESTO) as MES, P.ID as ID_PRESUPUESTO,
|
||
P.FECHA_PRESUPUESTO, P.ID_CLIENTE, V.ACEPTADOS, V.ANULADOS, V.PENDIENTES, P.IMPORTE_TOTAL, T.IMPORTE_TOTAL as IMPORTE_TOTAL_ANO
|
||
from V_INF_PRE_CLIENTE_AUX V
|
||
left join PRESUPUESTOS_CLIENTE P on (V.ID = P.ID)
|
||
inner join V_INF_PRE_CLIENTE_TOTAL_ANO T on ((T.id_empresa = P.id_empresa) and (T.Ano = EXTRACT(YEAR FROM P.FECHA_PRESUPUESTO)))
|
||
;
|
||
|
||
CREATE VIEW V_INF_FAC_CLIENTE(
|
||
ID_EMPRESA,
|
||
ANO,
|
||
SEMESTRE,
|
||
TRIMESTRE,
|
||
MES,
|
||
FECHA_FACTURA,
|
||
ID_CLIENTE,
|
||
NOMBRE,
|
||
IMPORTE_DESCUENTO,
|
||
BASE_IMPONIBLE,
|
||
IMPORTE_TOTAL,
|
||
IMPORTE_TOTAL_ANO)
|
||
AS
|
||
select f.ID_EMPRESA, EXTRACT(YEAR FROM f.FECHA_FACTURA) as ANO,
|
||
CAST((DIV(EXTRACT(MONTH FROM f.FECHA_FACTURA),7)+1) AS SMALLINT) as SEMESTRE,
|
||
CAST((DIV(EXTRACT(MONTH FROM f.FECHA_FACTURA)+2,3)) AS SMALLINT) as TRIMESTRE,
|
||
EXTRACT(MONTH FROM f.FECHA_FACTURA) as MES,
|
||
f.FECHA_FACTURA, f.ID_CLIENTE, f.NOMBRE, f.IMPORTE_DESCUENTO, f.BASE_IMPONIBLE as BASE_IMPONIBLE, f.IMPORTE_TOTAL, v.importe_total as IMPORTE_TOTAL_ANO
|
||
from FACTURAS_CLIENTE f
|
||
inner join V_INF_FAC_CLIENTE_TOTAL_ANO v on ((v.id_empresa = f.id_empresa) and (v.Ano = EXTRACT(YEAR FROM f.FECHA_FACTURA)))
|
||
order by 1,2,3,4,5 asc
|
||
;
|
||
|
||
CREATE VIEW V_INF_FAC_PROVEEDOR(
|
||
ID_EMPRESA,
|
||
ANO,
|
||
SEMESTRE,
|
||
TRIMESTRE,
|
||
MES,
|
||
FECHA_FACTURA,
|
||
ID_PROVEEDOR,
|
||
NOMBRE,
|
||
IMPORTE_DESCUENTO,
|
||
BASE_IMPONIBLE,
|
||
IMPORTE_TOTAL,
|
||
IMPORTE_TOTAL_ANO)
|
||
AS
|
||
select f.ID_EMPRESA, EXTRACT(YEAR FROM f.FECHA_FACTURA) as ANO,
|
||
CAST((DIV(EXTRACT(MONTH FROM f.FECHA_FACTURA),7)+1) AS SMALLINT) as SEMESTRE,
|
||
CAST((DIV(EXTRACT(MONTH FROM f.FECHA_FACTURA)+2,3)) AS SMALLINT) as TRIMESTRE,
|
||
EXTRACT(MONTH FROM f.FECHA_FACTURA) as MES,
|
||
f.FECHA_FACTURA, f.ID_PROVEEDOR, f.NOMBRE, f.IMPORTE_DESCUENTO, f.BASE_IMPONIBLE, f.IMPORTE_TOTAL, v.importe_total as IMPORTE_TOTAL_ANO
|
||
from FACTURAS_PROVEEDOR f
|
||
inner join V_INF_FAC_PROVEEDOR_TOTAL_ANO v on ((v.id_empresa = f.id_empresa) and (v.Ano = EXTRACT(YEAR FROM f.FECHA_FACTURA)))
|
||
order by 1,2,3,4,5 asc
|
||
;
|
||
|
||
|
||
/******************************************************************************/
|
||
/**** Primary Keys ****/
|
||
/******************************************************************************/
|
||
|
||
ALTER TABLE AGENTES_COMISIONES ADD CONSTRAINT PK_AGENTES_COMISIONES PRIMARY KEY (ID);
|
||
ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT PK_ALBARAN_CLIENTE PRIMARY KEY (ID);
|
||
ALTER TABLE ALBARANES_CLIENTE_DETALLES ADD CONSTRAINT PK_ALBARANES_CLIENTE_DETALLES PRIMARY KEY (ID);
|
||
ALTER TABLE ALBARANES_PROVEEDOR ADD CONSTRAINT PK_ALBARAN_PROVEEDOR PRIMARY KEY (ID);
|
||
ALTER TABLE ALBARANES_PROVEEDOR_DETALLES ADD CONSTRAINT PK_ALBARANES_PROVEEDOR_DETALLES PRIMARY KEY (ID);
|
||
ALTER TABLE ALMACENES ADD CONSTRAINT PK_ALMACENES PRIMARY KEY (ID);
|
||
ALTER TABLE ARTICULOS ADD CONSTRAINT PK_ARTICULOS PRIMARY KEY (ID);
|
||
ALTER TABLE ARTICULOS_PROVEEDORES ADD CONSTRAINT PK_ARTICULOS_PROVEEDORES PRIMARY KEY (ID);
|
||
ALTER TABLE CATEGORIAS ADD CONSTRAINT PK_CATEGORIAS PRIMARY KEY (ID);
|
||
ALTER TABLE CLIENTES_DATOS ADD CONSTRAINT PK_CLIENTES_DATOS PRIMARY KEY (ID_CLIENTE);
|
||
ALTER TABLE CLIENTES_DTOS_PROVEEDORES ADD CONSTRAINT PK_CLIENTES_DTOS_PROV PRIMARY KEY (ID);
|
||
ALTER TABLE CLIENTES_GRUPOS ADD CONSTRAINT PK_CLIENTES_GRUPOS PRIMARY KEY (ID);
|
||
ALTER TABLE COMISIONES_LIQUIDADAS ADD CONSTRAINT PK_COMISIONES_LIQUIDADAS PRIMARY KEY (ID);
|
||
ALTER TABLE CONFIGURACION ADD CONSTRAINT PK_CONFIGURACION PRIMARY KEY (ID);
|
||
ALTER TABLE CONTACTOS ADD CONSTRAINT PK_CONTACTOS PRIMARY KEY (ID);
|
||
ALTER TABLE CONTACTOS_CATEGORIAS ADD CONSTRAINT PK_CONTACTOS_CATEGORIAS PRIMARY KEY (ID_CONTACTO, ID_CATEGORIA);
|
||
ALTER TABLE CONTACTOS_DATOS_BANCO ADD CONSTRAINT PK_CONTACTOS_DATOS_BANCO PRIMARY KEY (ID);
|
||
ALTER TABLE CONTACTOS_DATOS_PERSONAL ADD CONSTRAINT PK_CONTACTOS_DATOS_PER PRIMARY KEY (ID);
|
||
ALTER TABLE CONTACTOS_DIRECCIONES ADD CONSTRAINT PK_CONTACTOS_DIR PRIMARY KEY (ID);
|
||
ALTER TABLE EMPLEADOS_DATOS ADD CONSTRAINT PK_EMPLEADOS_DATOS PRIMARY KEY (ID_EMPLEADO);
|
||
ALTER TABLE EMPLEADOS_GRUPOS ADD CONSTRAINT PK_EMPLEADOS_GRUPOS PRIMARY KEY (ID);
|
||
ALTER TABLE EMPRESAS ADD CONSTRAINT PK_EMPRESAS PRIMARY KEY (ID);
|
||
ALTER TABLE EMPRESAS_CONTACTOS ADD CONSTRAINT PK_EMPRESAS_CONTACTOS PRIMARY KEY (ID);
|
||
ALTER TABLE EMPRESAS_DATOS_BANCO ADD CONSTRAINT PK_EMPRESAS_DATOS_BANCO PRIMARY KEY (ID);
|
||
ALTER TABLE EMPRESAS_USUARIOS ADD CONSTRAINT PK_EMPRESAS_USUARIOS PRIMARY KEY (ID);
|
||
ALTER TABLE FABRICANTES ADD PRIMARY KEY (ID);
|
||
ALTER TABLE FACTURAS_CLIENTE ADD CONSTRAINT PK_FACTURAS_CLIENTE PRIMARY KEY (ID);
|
||
ALTER TABLE FACTURAS_CLIENTE_DETALLES ADD CONSTRAINT PK_FACTURAS_CLIENTE_DETALLES PRIMARY KEY (ID);
|
||
ALTER TABLE FACTURAS_PROVEEDOR ADD CONSTRAINT PK_FACTURAS_PROVEEDOR PRIMARY KEY (ID);
|
||
ALTER TABLE FACTURAS_PROVEEDOR_DETALLES ADD CONSTRAINT PK_FACTURAS_PROVEEDOR_DETALLES PRIMARY KEY (ID);
|
||
ALTER TABLE FACTURAS_PROVEEDOR_PEDIDOS ADD CONSTRAINT PK_FACTURAS_PROVEEDOR_PEDIDOS PRIMARY KEY (ID);
|
||
ALTER TABLE FAMILIAS ADD CONSTRAINT PK_FAMILIAS PRIMARY KEY (ID);
|
||
ALTER TABLE FORMAS_PAGO ADD PRIMARY KEY (ID);
|
||
ALTER TABLE FORMAS_PAGO_PLAZOS ADD PRIMARY KEY (ID);
|
||
ALTER TABLE INFORMES ADD CONSTRAINT PK_INFORMES PRIMARY KEY (ID);
|
||
ALTER TABLE MOVIMIENTOS ADD CONSTRAINT PK_MOVIMIENTOS PRIMARY KEY (ID);
|
||
ALTER TABLE OBRAS_EJECUCIONES ADD CONSTRAINT PK_OBRAS_EJE PRIMARY KEY (ID);
|
||
ALTER TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ADD CONSTRAINT PK_OBRAS_EJE_PRE PRIMARY KEY (ID);
|
||
ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT PK_OBRAS_EJE_PED_PROV PRIMARY KEY (ID);
|
||
ALTER TABLE PAGOS_CLIENTE ADD CONSTRAINT PK_PAGOS_CLIENTE PRIMARY KEY (ID);
|
||
ALTER TABLE PAGOS_PROVEEDOR ADD CONSTRAINT PK_PAGOS_PROVEEDOR PRIMARY KEY (ID);
|
||
ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT PK_PEDIDOS_CLIENTE PRIMARY KEY (ID);
|
||
ALTER TABLE PEDIDOS_CLIENTE_DETALLES ADD CONSTRAINT PK_PEDIDOS_CLIENTE_DETALLES PRIMARY KEY (ID);
|
||
ALTER TABLE PEDIDOS_PROVEEDOR ADD CONSTRAINT PK_PEDIDOS_PROVEEDOR PRIMARY KEY (ID);
|
||
ALTER TABLE PEDIDOS_PROVEEDOR_DETALLES ADD CONSTRAINT PK_PEDIDOS_PROVEEDOR_DETALLES PRIMARY KEY (ID);
|
||
ALTER TABLE PERMISOS ADD CONSTRAINT PK_PERMISOS PRIMARY KEY (ID);
|
||
ALTER TABLE PERMISOSEX ADD CONSTRAINT PK_PERMISOSEX PRIMARY KEY (ID);
|
||
ALTER TABLE POBLACIONES ADD CONSTRAINT PK_POBLACIONES PRIMARY KEY (ID);
|
||
ALTER TABLE PRESUPUESTOS_CLIENTE ADD CONSTRAINT PK_PRESUPUESTOS_CLIENTE PRIMARY KEY (ID);
|
||
ALTER TABLE PRESUPUESTOS_CLIENTE_DETALLES ADD CONSTRAINT PK_PRESUPUESTOS_CLIENTE_DETALLE PRIMARY KEY (ID);
|
||
ALTER TABLE PROVEEDORES_DATOS ADD CONSTRAINT PK_PROVEEDORES_DATOS PRIMARY KEY (ID_PROVEEDOR);
|
||
ALTER TABLE PROVEEDORES_GRUPOS ADD CONSTRAINT PK_PROVEEDORES_GRUPOS PRIMARY KEY (ID);
|
||
ALTER TABLE PROVINCIAS ADD CONSTRAINT PK_PROVINCIAS PRIMARY KEY (ID);
|
||
ALTER TABLE RECIBOS_CLIENTE ADD CONSTRAINT PK_RECIBOS_CLIENTE PRIMARY KEY (ID);
|
||
ALTER TABLE RECIBOS_PROVEEDOR ADD CONSTRAINT PK_RECIBOS_PROVEEDOR PRIMARY KEY (ID);
|
||
ALTER TABLE REFERENCIAS ADD CONSTRAINT PK_REFERENCIAS PRIMARY KEY (ID);
|
||
ALTER TABLE REMESAS_CLIENTE ADD CONSTRAINT PK_REMESAS_CLIENTE PRIMARY KEY (ID);
|
||
ALTER TABLE REMESAS_PROVEEDOR ADD CONSTRAINT PK_REMESAS_PROVEEDOR PRIMARY KEY (ID);
|
||
ALTER TABLE TIENDA_WEB ADD CONSTRAINT PK_TIENDA_WEB PRIMARY KEY (ID);
|
||
ALTER TABLE TIPOS_IVA ADD PRIMARY KEY (ID);
|
||
ALTER TABLE UNIDADES_MEDIDA ADD PRIMARY KEY (ID);
|
||
ALTER TABLE USUARIOS ADD CONSTRAINT PK_USUARIOS PRIMARY KEY (ID);
|
||
ALTER TABLE USUARIOS_LOGON ADD CONSTRAINT PK_USUARIOS_LOGON PRIMARY KEY (LOGONID);
|
||
|
||
|
||
/******************************************************************************/
|
||
/**** Foreign Keys ****/
|
||
/******************************************************************************/
|
||
|
||
ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT FK_ALBARAN_CLIENTE1 FOREIGN KEY (ID_CLIENTE) REFERENCES CONTACTOS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
|
||
ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT FK_ALBARAN_CLIENTE2 FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
|
||
ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT FK_ALBARAN_CLIENTE3 FOREIGN KEY (ID_PEDIDO) REFERENCES PEDIDOS_CLIENTE (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
|
||
ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT FK_ALBARAN_CLIENTE4 FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_CLIENTE (ID) ON DELETE SET NULL ON UPDATE SET NULL;
|
||
ALTER TABLE ALBARANES_PROVEEDOR ADD CONSTRAINT FK_ALBARANES_PROVEEDOR3 FOREIGN KEY (ID_PEDIDO) REFERENCES PEDIDOS_PROVEEDOR (ID) ON DELETE NO ACTION ON UPDATE CASCADE;
|
||
ALTER TABLE ALBARANES_PROVEEDOR ADD CONSTRAINT FK_ALBARANES_PROVEEDOR4 FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_PROVEEDOR (ID) ON DELETE SET NULL ON UPDATE CASCADE;
|
||
ALTER TABLE ALBARANES_PROVEEDOR ADD CONSTRAINT FK_ALBARAN_PROVEEDOR1 FOREIGN KEY (ID_PROVEEDOR) REFERENCES CONTACTOS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
|
||
ALTER TABLE ALBARANES_PROVEEDOR ADD CONSTRAINT FK_ALBARAN_PROVEEDOR2 FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
|
||
ALTER TABLE ALMACENES ADD CONSTRAINT FK_ALMACENES_EMPRESAS FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
|
||
ALTER TABLE ARTICULOS ADD CONSTRAINT FK_ARTICULOS_EMPRESA FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
|
||
ALTER TABLE COMISIONES_LIQUIDADAS ADD CONSTRAINT FK_COMISIONES_LIQUIDADAS FOREIGN KEY (ID_AGENTE) REFERENCES CONTACTOS (ID);
|
||
ALTER TABLE EMPRESAS_CONTACTOS ADD CONSTRAINT FK_EMPRESAS_CONTACTOS FOREIGN KEY (ID_CONTACTO) REFERENCES CONTACTOS (ID) ON DELETE CASCADE ON UPDATE CASCADE;
|
||
ALTER TABLE EMPRESAS_DATOS_BANCO ADD CONSTRAINT FK_EMPRESAS_DATOS_BANCO FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE CASCADE ON UPDATE CASCADE;
|
||
ALTER TABLE FACTURAS_CLIENTE ADD CONSTRAINT FK_FACTURAS_CLIENTE_EMPRESAS FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
|
||
ALTER TABLE FACTURAS_PROVEEDOR ADD CONSTRAINT FK_FACTURAS_PROVEEDOR_EMPRESAS FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
|
||
ALTER TABLE MOVIMIENTOS ADD CONSTRAINT FK_MOVIMIENTOS2 FOREIGN KEY (ID_ALMACEN) REFERENCES ALMACENES (ID);
|
||
ALTER TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ADD CONSTRAINT FK_OBRAS_EJE_PRE_1 FOREIGN KEY (ID_EJECUCION) REFERENCES OBRAS_EJECUCIONES (ID);
|
||
ALTER TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ADD CONSTRAINT FK_OBRAS_EJE_PRE_2 FOREIGN KEY (ID_PRESUPUESTO) REFERENCES PRESUPUESTOS_CLIENTE (ID);
|
||
ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT FK_OBRAS_EJE_PED_PROV_1 FOREIGN KEY (ID_EJECUCION) REFERENCES OBRAS_EJECUCIONES (ID);
|
||
ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT FK_OBRAS_EJE_PED_PROV_2 FOREIGN KEY (ID_PEDIDO) REFERENCES PEDIDOS_PROVEEDOR (ID);
|
||
ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT FK_OBRAS_EJE_PED_PROV_3 FOREIGN KEY (ID_PRESUPUESTO) REFERENCES PRESUPUESTOS_CLIENTE (ID);
|
||
ALTER TABLE PAGOS_CLIENTE ADD CONSTRAINT FK_PAGOS_CLIENTE FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_CLIENTE (ID);
|
||
ALTER TABLE PAGOS_PROVEEDOR ADD CONSTRAINT FK_PAGOS_PROVEEDOR FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_PROVEEDOR (ID);
|
||
ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT FK_PEDIDOS_CLIENTE FOREIGN KEY (ID_CLIENTE) REFERENCES CONTACTOS (ID);
|
||
ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT FK_PEDIDOS_CLIENTE_ID_EMPRESA FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID);
|
||
ALTER TABLE PEDIDOS_PROVEEDOR ADD CONSTRAINT FK_PEDIDOS_PROVEEDOR FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID);
|
||
ALTER TABLE PEDIDOS_PROVEEDOR ADD CONSTRAINT FK_PEDIDOS_PROVEEDOR2 FOREIGN KEY (ID_PROVEEDOR) REFERENCES CONTACTOS (ID);
|
||
ALTER TABLE PEDIDOS_PROVEEDOR ADD CONSTRAINT FK_PEDIDOS_PROVEEDOR_1 FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_PROVEEDOR (ID) ON DELETE SET NULL ON UPDATE CASCADE;
|
||
ALTER TABLE PRESUPUESTOS_CLIENTE ADD CONSTRAINT FK_PRESUPUESTOS_CLIENTE_1 FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID);
|
||
ALTER TABLE PRESUPUESTOS_CLIENTE ADD CONSTRAINT FK_PRESUPUESTOS_CLIENTE_2 FOREIGN KEY (ID_CLIENTE) REFERENCES CONTACTOS (ID);
|
||
ALTER TABLE PRESUPUESTOS_CLIENTE ADD CONSTRAINT FK_PRESUPUESTOS_CLIENTE_3 FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_CLIENTE (ID) ON DELETE SET NULL ON UPDATE SET NULL;
|
||
ALTER TABLE RECIBOS_CLIENTE ADD CONSTRAINT FK_RECIBOS_CLIENTE FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_CLIENTE (ID) ON DELETE CASCADE ON UPDATE CASCADE;
|
||
ALTER TABLE RECIBOS_CLIENTE ADD CONSTRAINT FK_RECIBOS_CLIENTE2 FOREIGN KEY (ID_REMESA) REFERENCES REMESAS_CLIENTE (ID) ON DELETE SET NULL ON UPDATE SET NULL;
|
||
ALTER TABLE RECIBOS_PROVEEDOR ADD CONSTRAINT FK_RECIBOS_PROVEEDOR FOREIGN KEY (ID_FACTURA) REFERENCES FACTURAS_PROVEEDOR (ID) ON DELETE CASCADE ON UPDATE CASCADE;
|
||
ALTER TABLE RECIBOS_PROVEEDOR ADD CONSTRAINT FK_RECIBOS_PROVEEDOR1 FOREIGN KEY (ID_REMESA) REFERENCES REMESAS_PROVEEDOR (ID) ON DELETE SET NULL ON UPDATE SET NULL;
|
||
ALTER TABLE REMESAS_CLIENTE ADD CONSTRAINT FK_REMESAS_CLIENTE FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID);
|
||
ALTER TABLE REMESAS_PROVEEDOR ADD CONSTRAINT FK_REMESAS_PROVEEDOR FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID);
|
||
ALTER TABLE TIENDA_WEB ADD CONSTRAINT FK_EMPRESAS_TIENDA_WEB FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE CASCADE ON UPDATE CASCADE;
|
||
|
||
|
||
/******************************************************************************/
|
||
/**** Indices ****/
|
||
/******************************************************************************/
|
||
|
||
CREATE INDEX IDX_AGENTES_COMISIONES1 ON AGENTES_COMISIONES (ID_AGENTE);
|
||
CREATE INDEX IDX_AGENTES_COMISIONES2 ON AGENTES_COMISIONES (ID_PROVEEDOR);
|
||
CREATE INDEX IDX_ALBARANES_CLIENTE1 ON ALBARANES_CLIENTE (ID_FORMA_PAGO);
|
||
CREATE INDEX IDX_ALBARANES_CLIENTE2 ON ALBARANES_CLIENTE (TIPO);
|
||
CREATE INDEX ALBARANES_CLIENTE_IDX1 ON ALBARANES_CLIENTE (ID_ALMACEN);
|
||
CREATE INDEX ALBARANES_CLIENTE_IDX2 ON ALBARANES_CLIENTE (ID_DIRECCION);
|
||
CREATE INDEX ALBARANES_CLIENTE_IDX3 ON ALBARANES_CLIENTE (FECHA_ALBARAN);
|
||
CREATE INDEX IDX_ALBARANES_CLIENTE_DETALLES ON ALBARANES_CLIENTE_DETALLES (ID_ARTICULO);
|
||
CREATE INDEX IDX_ALBARANES_CLIENTE_DETALLES1 ON ALBARANES_CLIENTE_DETALLES (ID_ALBARAN);
|
||
CREATE INDEX ALBARANES_CLIENTE_DETALLES_IDX1 ON ALBARANES_CLIENTE_DETALLES (ID_PEDIDO);
|
||
CREATE INDEX IDX_ALBARANES_PROVEEDOR1 ON ALBARANES_PROVEEDOR (ID_ALMACEN);
|
||
CREATE INDEX IDX_ALBARANES_PROVEEDOR2 ON ALBARANES_PROVEEDOR (ID_FORMA_PAGO);
|
||
CREATE INDEX IDX_ALBARANES_PROVEEDOR3 ON ALBARANES_PROVEEDOR (TIPO);
|
||
CREATE INDEX ALBARANES_PROVEEDOR_IDX1 ON ALBARANES_PROVEEDOR (ID_ALBARAN);
|
||
CREATE INDEX ALBARANES_PROVEEDOR_IDX2 ON ALBARANES_PROVEEDOR (FECHA_ALBARAN);
|
||
CREATE INDEX IDX_ALBARANES_PROV_DETALLES ON ALBARANES_PROVEEDOR_DETALLES (ID_ALBARAN);
|
||
CREATE INDEX IDX_ALBARANES_PROV_DETALLES1 ON ALBARANES_PROVEEDOR_DETALLES (ID_ARTICULO);
|
||
CREATE INDEX ALBARANES_PROVEEDOR_DETALL_IDX1 ON ALBARANES_PROVEEDOR_DETALLES (ID_PEDIDO);
|
||
CREATE INDEX ALMACENES_IDX1 ON ALMACENES (TIPO_ALMACEN);
|
||
CREATE INDEX ARTICULOS_PROVEEDORES_IDX1 ON ARTICULOS_PROVEEDORES (ID_ARTICULO);
|
||
CREATE INDEX ARTICULOS_PROVEEDORES_IDX2 ON ARTICULOS_PROVEEDORES (ID_PROVEEDOR);
|
||
CREATE INDEX IDX_CLIENTES_DATOS ON CLIENTES_DATOS (ID_TIPO_IVA);
|
||
CREATE INDEX IDX_CLIENTES_DATOS1 ON CLIENTES_DATOS (ID_FORMA_PAGO);
|
||
CREATE INDEX IDX_CLIENTES_DATOS_ID_AGENTE ON CLIENTES_DATOS (ID_AGENTE);
|
||
CREATE INDEX IDX_CLIENTES_DTOS_PROV_ID_CLI ON CLIENTES_DTOS_PROVEEDORES (ID_CLIENTE);
|
||
CREATE INDEX IDX_CLIENTES_DTOS_PROV_ID_PROV ON CLIENTES_DTOS_PROVEEDORES (ID_PROVEEDOR);
|
||
CREATE INDEX IDX_COMISIONES_LIQUIDADAS ON COMISIONES_LIQUIDADAS (ID_EMPRESA);
|
||
CREATE INDEX IDX_CONFIGURACION ON CONFIGURACION (ID_EMPRESA);
|
||
CREATE INDEX IDX_CONTACTOS_CATEGORIAS ON CONTACTOS_CATEGORIAS (ID_CONTACTO);
|
||
CREATE INDEX IDX_CONTACTOS_CATEGORIAS1 ON CONTACTOS_CATEGORIAS (ID_CATEGORIA);
|
||
CREATE INDEX IDX_CONTACTOS_DATOS_BANCO ON CONTACTOS_DATOS_BANCO (ID_CONTACTO);
|
||
CREATE INDEX IDX_CONTACTOS_PER_ID_CONTACTO ON CONTACTOS_DATOS_PERSONAL (ID_CONTACTO);
|
||
CREATE INDEX IDX_CONTACTOS_DIR_ID_CONTACTO ON CONTACTOS_DIRECCIONES (ID_CONTACTO);
|
||
CREATE INDEX IDX_EMPRESAS_CONTACTOS ON EMPRESAS_CONTACTOS (ID_EMPRESA, ID_CONTACTO);
|
||
CREATE INDEX IDX_EMPRESAS_USUARIOS ON EMPRESAS_USUARIOS (ID_EMPRESA, ID_USUARIO);
|
||
CREATE INDEX IDX_FACTURAS_CLIENTE ON FACTURAS_CLIENTE (ID_FORMA_PAGO);
|
||
CREATE INDEX IDX_FACTURAS_CLIENTE1 ON FACTURAS_CLIENTE (ID_TIPO_IVA);
|
||
CREATE INDEX IDX_FACTURAS_CLIENTE2 ON FACTURAS_CLIENTE (ID_COMISION_LIQUIDADA);
|
||
CREATE INDEX IDX_FACTURAS_CLIENTE3 ON FACTURAS_CLIENTE (ID_CLIENTE);
|
||
CREATE INDEX FACTURAS_CLIENTE_IDX1 ON FACTURAS_CLIENTE (FECHA_FACTURA);
|
||
CREATE INDEX FACTURAS_CLIENTE_IDX2 ON FACTURAS_CLIENTE (FECHA_VENCIMIENTO);
|
||
CREATE INDEX IDX_FACTURAS_CLIENTE_DETALLES1 ON FACTURAS_CLIENTE_DETALLES (ID_FACTURA);
|
||
CREATE INDEX IDX_FACTURAS_CLIENTE_DETALLES2 ON FACTURAS_CLIENTE_DETALLES (ID_ARTICULO);
|
||
CREATE INDEX IDX_FACTURAS_PROVEEDOR ON FACTURAS_PROVEEDOR (ID_PROVEEDOR);
|
||
CREATE INDEX IDX_FACTURAS_PROVEEDOR1 ON FACTURAS_PROVEEDOR (ID_FORMA_PAGO);
|
||
CREATE INDEX IDX_FACTURAS_PROVEEDOR2 ON FACTURAS_PROVEEDOR (ID_TIPO_IVA);
|
||
CREATE INDEX FACTURAS_PROVEEDOR_IDX1 ON FACTURAS_PROVEEDOR (FECHA_FACTURA);
|
||
CREATE INDEX FACTURAS_PROVEEDOR_IDX2 ON FACTURAS_PROVEEDOR (FECHA_VENCIMIENTO);
|
||
CREATE INDEX FACTURAS_PROVEEDOR_IDX3 ON FACTURAS_PROVEEDOR (ID_PEDIDO)
|
||
CREATE INDEX IDX_FACTURAS_PROVEEDOR_DETALLES ON FACTURAS_PROVEEDOR_DETALLES (ID_ARTICULO);
|
||
CREATE INDEX FACTURAS_PROVEEDOR_DETALLE_IDX1 ON FACTURAS_PROVEEDOR_DETALLES (ID_FACTURA);
|
||
CREATE INDEX IDX_FACTURAS_PROVEEDOR_PEDIDOS ON FACTURAS_PROVEEDOR_PEDIDOS (ID_PEDIDO);
|
||
CREATE INDEX FACTURAS_PROVEEDOR_PEDIDOS_IDX1 ON FACTURAS_PROVEEDOR_PEDIDOS (ID_FACTURA);
|
||
CREATE INDEX IDX_FORMAS_PAGO_PLAZOS ON FORMAS_PAGO_PLAZOS (ID_FORMA_PAGO);
|
||
CREATE INDEX IDX_INFORMES ON INFORMES (ID_EMPRESA);
|
||
CREATE INDEX IDX_MOVIMIENTOS ON MOVIMIENTOS (TIPO);
|
||
CREATE INDEX MOVIMIENTOS_IDX1 ON MOVIMIENTOS (ID_ARTICULO);
|
||
CREATE INDEX MOVIMIENTOS_IDX2 ON MOVIMIENTOS (FECHA_MOVIMIENTO);
|
||
CREATE INDEX MOVIMIENTOS_IDX3 ON MOVIMIENTOS (ID_ALMACEN_RESERVA);
|
||
CREATE INDEX OBRAS_DATOS_IDX1 ON OBRAS_DATOS (ID_ALMACEN);
|
||
CREATE INDEX OBRAS_DATOS_IDX2 ON OBRAS_DATOS (ID_CLIENTE);
|
||
CREATE INDEX PAGOS_CLIENTE_IDX1 ON PAGOS_CLIENTE (FECHA_PAGO);
|
||
CREATE INDEX PAGOS_PROVEEDOR_IDX1 ON PAGOS_PROVEEDOR (FECHA_PAGO);
|
||
CREATE INDEX IDX_PEDIDOS_CLIENTE ON PEDIDOS_CLIENTE (ID_FORMA_PAGO);
|
||
CREATE INDEX PEDIDOS_CLIENTE_IDX1 ON PEDIDOS_CLIENTE (FECHA_PEDIDO);
|
||
CREATE INDEX IDX_PEDIDOS_CLIENTE_DETALLES ON PEDIDOS_CLIENTE_DETALLES (ID_PEDIDO);
|
||
CREATE INDEX IDX_PEDIDOS_CLIENTE_DETALLES1 ON PEDIDOS_CLIENTE_DETALLES (ID_ARTICULO);
|
||
CREATE INDEX IDX_PEDIDOS_PROVEEDOR ON PEDIDOS_PROVEEDOR (ID_PEDIDO_CLIENTE);
|
||
CREATE INDEX IDX_PEDIDOS_PROVEEDOR1 ON PEDIDOS_PROVEEDOR (ID_ALMACEN);
|
||
CREATE INDEX IDX_PEDIDOS_PROVEEDOR2 ON PEDIDOS_PROVEEDOR (ID_FORMA_PAGO);
|
||
CREATE INDEX IDX_PEDIDOS_PROVEEDOR3 ON PEDIDOS_PROVEEDOR (ID_OBRA);
|
||
CREATE INDEX IDX_PEDIDOS_PROVEEDOR4 ON PEDIDOS_PROVEEDOR (ID_PROVEEDOR);
|
||
CREATE INDEX PEDIDOS_PROVEEDOR_IDX1 ON PEDIDOS_PROVEEDOR (FECHA_PEDIDO);
|
||
CREATE INDEX IDX_PEDIDOS_PROVEEDOR_DETALLES ON PEDIDOS_PROVEEDOR_DETALLES (ID_ARTICULO);
|
||
CREATE INDEX PEDIDOS_PROVEEDOR_DETALLES_IDX1 ON PEDIDOS_PROVEEDOR_DETALLES (ID_PEDIDO);
|
||
CREATE INDEX POBLACIONES_IDX1 ON POBLACIONES (ID_PROVINCIA);
|
||
CREATE INDEX PRESUPUESTOS_CLIENTE_IDX1 ON PRESUPUESTOS_CLIENTE (FECHA_PRESUPUESTO);
|
||
CREATE INDEX PRESUPUESTOS_CLIENTE_DETAL_IDX1 ON PRESUPUESTOS_CLIENTE_DETALLES (ID_PRESUPUESTO);
|
||
CREATE INDEX PRESUPUESTOS_CLIENTE_DETAL_IDX2 ON PRESUPUESTOS_CLIENTE_DETALLES (ID_ARTICULO);
|
||
CREATE INDEX IDX_PROVEEDORES_DATOS ON PROVEEDORES_DATOS (ID_TIPO_IVA);
|
||
CREATE INDEX IDX_PROVEEDORES_DATOS1 ON PROVEEDORES_DATOS (ID_FORMA_PAGO);
|
||
CREATE INDEX IDX_RECIBOS_CLIENTE ON RECIBOS_CLIENTE (ID_RECIBO_COMPENSADO);
|
||
CREATE INDEX RECIBOS_CLIENTE_IDX1 ON RECIBOS_CLIENTE (FECHA_EMISION);
|
||
CREATE INDEX RECIBOS_CLIENTE_IDX2 ON RECIBOS_CLIENTE (FECHA_VENCIMIENTO);
|
||
CREATE INDEX IDX_RECIBOS_PROVEEDOR ON RECIBOS_PROVEEDOR (ID_RECIBO_COMPENSADO);
|
||
CREATE INDEX RECIBOS_PROVEEDOR_IDX1 ON RECIBOS_PROVEEDOR (FECHA_EMISION);
|
||
CREATE INDEX RECIBOS_PROVEEDOR_IDX2 ON RECIBOS_PROVEEDOR (FECHA_VENCIMIENTO);
|
||
CREATE INDEX IDX_REFERENCIAS ON REFERENCIAS (ID_EMPRESA);
|
||
CREATE INDEX IDX_REMESAS_CLIENTE ON REMESAS_CLIENTE (ID_DATOS_BANCO);
|
||
CREATE INDEX REMESAS_CLIENTE_IDX1 ON REMESAS_CLIENTE (FECHA_REMESA);
|
||
CREATE INDEX IDX_REMESAS_PROVEEDOR ON REMESAS_PROVEEDOR (ID_DATOS_BANCO);
|
||
CREATE INDEX REMESAS_PROVEEDOR_IDX1 ON REMESAS_PROVEEDOR (FECHA_REMESA);
|
||
|
||
|
||
/******************************************************************************/
|
||
/**** Stored Procedures ****/
|
||
/******************************************************************************/
|
||
|
||
SET TERM ^ ;
|
||
|
||
CREATE PROCEDURE PRO_ART_RECALCULAR_PVP (
|
||
ID_EMPRESA INTEGER,
|
||
PARAM_MARGEN NUMERIC(2,2),
|
||
PARAM_TIEMPO NUMERIC(11,2))
|
||
AS
|
||
declare variable id_articulo integer;
|
||
declare variable mano_obra numeric(11,2);
|
||
begin
|
||
UPDATE ARTICULOS
|
||
SET PARAM_TIEMPO = :PARAM_TIEMPO,
|
||
PARAM_MARGEN = :PARAM_MARGEN,
|
||
MANO_OBRA = (TIEMPO * :PARAM_TIEMPO)
|
||
WHERE ID_EMPRESA = :ID_EMPRESA;
|
||
|
||
for select ID, MANO_OBRA
|
||
from articulos
|
||
where ID_EMPRESA = :ID_EMPRESA
|
||
into :ID_ARTICULO, :MANO_OBRA
|
||
do
|
||
begin
|
||
update articulos_proveedores
|
||
set PRECIO_PVP_VENTA = (PRECIO_NETO + PRECIO_PORTE) * (((:PARAM_MARGEN) / 100) + 1),
|
||
PRECIO_PVP_TOTAL = ((PRECIO_NETO + PRECIO_PORTE) * (((:PARAM_MARGEN) / 100) + 1)) + :MANO_OBRA
|
||
where id_articulo = :ID_ARTICULO;
|
||
end
|
||
|
||
suspend;
|
||
end
|
||
^
|
||
|
||
|
||
CREATE PROCEDURE PRO_PRES_CAPITULOS (
|
||
AID INTEGER)
|
||
RETURNS (
|
||
ID INTEGER,
|
||
ID_PRESUPUESTO INTEGER,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
CONCEPTO VARCHAR(2000),
|
||
IMPORTE_TOTAL NUMERIC(11,2),
|
||
VISIBLE SMALLINT)
|
||
AS
|
||
declare variable num_filas integer;
|
||
declare variable contador integer;
|
||
declare variable existe numeric(11,2);
|
||
declare variable total_acumulado numeric(11,2);
|
||
begin
|
||
existe = 0;
|
||
total_acumulado = 0.0;
|
||
contador = 0;
|
||
num_filas = 0;
|
||
|
||
/* <20>Existe el presupuesto? */
|
||
for select count(*)
|
||
from presupuestos_cliente_detalles
|
||
where id_presupuesto = :AID
|
||
into :num_filas
|
||
do
|
||
begin
|
||
if (num_filas = 0) then
|
||
suspend;
|
||
end
|
||
|
||
/* Ver si hay conceptos al principio sin capitulos */
|
||
for select id, id_presupuesto, posicion, tipo_detalle
|
||
from presupuestos_cliente_detalles
|
||
where id_presupuesto = :AID
|
||
order by id_presupuesto, posicion
|
||
rows 1
|
||
into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE
|
||
do
|
||
begin
|
||
if (TIPO_DETALLE = 'Concepto') then
|
||
EXISTE = 1;
|
||
end
|
||
|
||
if (existe = 1) then
|
||
begin
|
||
contador = 0;
|
||
/* Existen conceptos sin capitulo */
|
||
for select tipo_detalle, importe_total, coalesce(visible, 1)
|
||
from presupuestos_cliente_detalles
|
||
where id_presupuesto = :AID
|
||
order by id_presupuesto, posicion
|
||
into :TIPO_DETALLE, :IMPORTE_TOTAL, :VISIBLE
|
||
do
|
||
begin
|
||
contador = contador + 1;
|
||
|
||
if ((visible <> 0) and (tipo_detalle = 'Concepto')) then
|
||
total_acumulado = total_acumulado + importe_total;
|
||
|
||
if ((tipo_detalle <> 'Concepto') or (contador = num_filas)) then
|
||
begin
|
||
importe_total = total_acumulado;
|
||
tipo_detalle = 'Titulo';
|
||
concepto = 'General';
|
||
visible = 1;
|
||
ID = -1;
|
||
posicion = -1;
|
||
suspend;
|
||
break;
|
||
end
|
||
end
|
||
end
|
||
|
||
|
||
for select id, id_presupuesto, posicion, tipo_detalle, F_RTFTOTEXT(concepto) as concepto,
|
||
importe_total, coalesce(visible, 1)
|
||
from presupuestos_cliente_detalles
|
||
where ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo opcional'))and id_presupuesto = :AID
|
||
order by id_presupuesto, posicion
|
||
into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE, :CONCEPTO,
|
||
:IMPORTE_TOTAL, :VISIBLE
|
||
do
|
||
suspend;
|
||
end
|
||
^
|
||
|
||
|
||
CREATE PROCEDURE PRO_PRES_CAPITULOS_CONCEPTOS (
|
||
AID INTEGER)
|
||
RETURNS (
|
||
ID INTEGER,
|
||
ID_PRESUPUESTO INTEGER,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
ID_CAPITULO INTEGER,
|
||
ID_ARTICULO INTEGER,
|
||
REFERENCIA VARCHAR(255),
|
||
CONCEPTO VARCHAR(2000),
|
||
CANTIDAD NUMERIC(11,2),
|
||
UNIDAD_MEDIDA VARCHAR(255),
|
||
IMPORTE_UNIDAD NUMERIC(11,2),
|
||
DESCUENTO NUMERIC(2,2),
|
||
IMPORTE_PORTE NUMERIC(11,2),
|
||
IMPORTE_TOTAL NUMERIC(11,2),
|
||
VISIBLE SMALLINT)
|
||
AS
|
||
declare variable capitulo_actual integer;
|
||
begin
|
||
capitulo_actual = -1;
|
||
ID_CAPITULO = -1;
|
||
for select pre.id, pre.id_presupuesto, pre.posicion, pre.tipo_detalle,
|
||
pre.id_articulo, articulos.referencia,
|
||
F_RTFTOTEXT(F_RTFTOTEXT(pre.CONCEPTO)) as CONCEPTO,
|
||
pre.cantidad, pre.unidad_medida,
|
||
case
|
||
when (pre.cantidad = 0) then 0
|
||
when (pre.descuento <> 0) then (pre.importe_total / pre.cantidad)
|
||
else pre.importe_unidad
|
||
end as importe_unidad,
|
||
pre.descuento, pre.importe_porte,
|
||
pre.importe_total, coalesce(pre.visible, 1)
|
||
from presupuestos_cliente_detalles pre
|
||
left join articulos on (pre.id_articulo = articulos.id)
|
||
where pre.id_presupuesto = :AID
|
||
order by pre.id_presupuesto, pre.posicion
|
||
into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE, :ID_ARTICULO,
|
||
:REFERENCIA, :CONCEPTO, :CANTIDAD, :UNIDAD_MEDIDA, :IMPORTE_UNIDAD, :DESCUENTO,
|
||
:IMPORTE_PORTE, :IMPORTE_TOTAL, :VISIBLE
|
||
do
|
||
begin
|
||
if (:tipo_detalle <> 'Concepto') then
|
||
begin
|
||
capitulo_actual = :ID;
|
||
ID_CAPITULO = capitulo_actual;
|
||
end
|
||
else
|
||
suspend;
|
||
end
|
||
end
|
||
^
|
||
|
||
|
||
CREATE PROCEDURE PRO_PRES_RESUMEN (
|
||
AID INTEGER)
|
||
RETURNS (
|
||
ID INTEGER,
|
||
ID_PRESUPUESTO INTEGER,
|
||
POSICION INTEGER,
|
||
TIPO_DETALLE VARCHAR(25),
|
||
CONCEPTO VARCHAR(2000),
|
||
IMPORTE_TOTAL NUMERIC(11,2),
|
||
VISIBLE SMALLINT)
|
||
AS
|
||
declare variable num_capitulos integer;
|
||
declare variable num_filas integer;
|
||
declare variable contador integer;
|
||
declare variable existe numeric(11,2);
|
||
declare variable total_acumulado numeric(11,2);
|
||
declare variable concepto_capitulo varchar(2000);
|
||
declare variable tipo varchar(25);
|
||
begin
|
||
existe = 0;
|
||
total_acumulado = 0.0;
|
||
contador = 0;
|
||
num_filas = 0;
|
||
num_capitulos = 0;
|
||
concepto_capitulo = '';
|
||
tipo = '';
|
||
|
||
/* <20>Existe el presupuesto? */
|
||
for select count(*)
|
||
from presupuestos_cliente_detalles
|
||
where id_presupuesto = :AID
|
||
into :num_filas
|
||
do
|
||
begin
|
||
if (num_filas = 0) then
|
||
suspend;
|
||
end
|
||
|
||
/* Ver si hay conceptos al principio sin capitulos */
|
||
for select id, id_presupuesto, posicion, tipo_detalle
|
||
from presupuestos_cliente_detalles
|
||
where id_presupuesto = :AID
|
||
order by id_presupuesto, posicion
|
||
rows 1
|
||
into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE
|
||
do
|
||
begin
|
||
if (TIPO_DETALLE = 'Concepto') then
|
||
EXISTE = 1;
|
||
end
|
||
|
||
num_capitulos = 1;
|
||
if (existe = 1) then
|
||
begin
|
||
contador = 0;
|
||
/* Existen conceptos sin capitulo */
|
||
for select tipo_detalle, coalesce(importe_total,0), coalesce(visible, 1)
|
||
from presupuestos_cliente_detalles
|
||
where id_presupuesto = :AID
|
||
order by id_presupuesto, posicion
|
||
into :TIPO_DETALLE, :IMPORTE_TOTAL, :VISIBLE
|
||
do
|
||
begin
|
||
contador = contador + 1;
|
||
|
||
if ((visible <> 0) and (tipo_detalle = 'Concepto')) then
|
||
total_acumulado = total_acumulado + importe_total;
|
||
|
||
if ((tipo_detalle <> 'Concepto') or (contador = num_filas)) then
|
||
begin
|
||
importe_total = total_acumulado;
|
||
tipo_detalle = 'Titulo';
|
||
if (num_capitulos > 1) then
|
||
concepto = 'CAP<EFBFBD>TULO ' || num_capitulos ||'. General';
|
||
else
|
||
concepto = 'General';
|
||
visible = 1;
|
||
ID = -1;
|
||
posicion = -1;
|
||
suspend;
|
||
break;
|
||
end
|
||
end
|
||
end
|
||
|
||
/* Tratar el resto de las filas */
|
||
for select id, id_presupuesto, posicion, tipo_detalle,
|
||
F_RTFTOTEXT(concepto) as concepto, coalesce(importe_total,0), coalesce(visible, 1)
|
||
from presupuestos_cliente_detalles
|
||
where id_presupuesto = :AID and
|
||
tipo_detalle in ('Titulo', 'Titulo opcional', 'Subtotal')
|
||
order by posicion
|
||
into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE, :CONCEPTO,
|
||
:IMPORTE_TOTAL, :VISIBLE
|
||
do
|
||
begin
|
||
contador = contador + 1;
|
||
if ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo opcional')) then
|
||
begin
|
||
concepto_capitulo = concepto;
|
||
tipo = tipo_detalle;
|
||
end
|
||
if (tipo_detalle = 'Subtotal') then
|
||
begin
|
||
concepto = 'CAP<EFBFBD>TULO ' || num_capitulos || '. ' || concepto_capitulo;
|
||
tipo_detalle = tipo;
|
||
num_capitulos = num_capitulos + 1;
|
||
suspend;
|
||
end
|
||
end
|
||
end
|
||
^
|
||
|
||
SET TERM ; ^
|
||
|
||
/******************************************************************************/
|
||
/**** Descriptions ****/
|
||
/******************************************************************************/
|
||
|