2009-12-16 17:02:23 +00:00
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* * * * 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 ' ;
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* * * * 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_ALBARANES_CLI_DETALLES_ID ;
SET GENERATOR GEN_ALBARANES_CLI_DETALLES_ID TO 1 ;
2010-01-11 18:07:39 +00:00
CREATE GENERATOR GEN_ALBARANES_CLI_DET_COLOR_ID ;
SET GENERATOR GEN_ALBARANES_CLI_DET_COLOR_ID TO 1 ;
2009-12-16 17:02:23 +00:00
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 ;
2009-12-17 18:51:39 +00:00
CREATE GENERATOR GEN_COMISIONES_VENDEDORES_ID ;
SET GENERATOR GEN_COMISIONES_VENDEDORES_ID TO 1 ;
2009-12-16 17:02:23 +00:00
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 ;
2010-03-12 09:09:34 +00:00
CREATE GENERATOR GEN_PEDIDOS_CLI_DET_COLOR_ID ;
2010-03-04 19:11:24 +00:00
SET GENERATOR GEN_PEDIDOS_CLI_DET_COLOR_ID TO 1 ;
2009-12-16 17:02:23 +00:00
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 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 ,
2010-01-13 18:30:03 +00:00
REFERENCIA_CLIENTE VARCHAR ( 255 ) ,
DESCUENTO2 TIPO_PORCENTAJE ,
2010-01-15 08:27:38 +00:00
IMPORTE_DESCUENTO2 TIPO_IMPORTE ,
DATOS_BANCARIOS VARCHAR ( 255 ) COLLATE ES_ES
2009-12-16 17:02:23 +00:00
) ;
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 ,
2010-03-19 13:03:33 +00:00
ID_PEDIDO TIPO_ID ,
ID_ARTICULO_REEMPLAZADO TIPO_ID
2009-12-16 17:02:23 +00:00
) ;
2010-01-11 18:07:39 +00:00
CREATE TABLE ALBARANES_CLIENTE_DETALLE_COLOR (
ID TIPO_ID NOT NULL ,
ID_DETALLE TIPO_ID NOT NULL ,
COLOR1 INTEGER Default 0 ,
COLOR2 INTEGER Default 0 ,
COLOR3 INTEGER Default 0 ,
COLOR4 INTEGER Default 0 ,
COLOR5 INTEGER Default 0 ,
COLOR6 INTEGER Default 0 ,
COLOR7 INTEGER Default 0 ,
COLOR8 INTEGER Default 0 ,
COLOR9 INTEGER Default 0 ,
COLOR10 INTEGER Default 0 ,
COLOR11 INTEGER Default 0 ,
COLOR12 INTEGER Default 0
) ;
2009-12-16 17:02:23 +00:00
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 ,
2010-01-11 18:07:39 +00:00
MANO_OBRA TIPO_IMPORTE ,
PRECIO NUMERIC ( 11 , 2 ) Default 0 ,
CAMPOTECNICO VARCHAR ( 200 ) ,
CODIGOTECNICO VARCHAR ( 15 ) ,
DISENOTECNICO VARCHAR ( 6 )
2009-12-16 17:02:23 +00:00
) ;
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
) ;
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 ,
VENCIMIENTO_FACTURAS_1 SMALLINT ,
VENCIMIENTO_FACTURAS_2 SMALLINT ,
VENCIMIENTO_FACTURAS_3 SMALLINT ,
2010-01-13 18:30:03 +00:00
FELICITACION TIPO_BOOLEANO ,
DESCUENTO2 TIPO_PORCENTAJE
2009-12-16 17:02:23 +00:00
) ;
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 ) ,
2009-12-21 17:56:36 +00:00
PERSONA_CONTACTO VARCHAR ( 255 ) ,
PAIS VARCHAR ( 255 ) COLLATE ES_ES
2009-12-16 17:02:23 +00:00
) ;
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 )
) ;
2009-12-17 18:51:39 +00:00
CREATE TABLE VENDEDORES_DATOS (
ID_VENDEDOR TIPO_ID NOT NULL ,
COMISION TIPO_PORCENTAJE ,
ID_USUARIO TIPO_ID ) ;
2009-12-16 17:02:23 +00:00
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
) ;
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 ) ,
2010-01-15 08:27:38 +00:00
PERSONA_CONTACTO VARCHAR ( 255 ) ,
2009-12-16 17:02:23 +00:00
RETENCION TIPO_PORCENTAJE ,
2010-01-13 18:30:03 +00:00
IMPORTE_RETENCION TIPO_IMPORTE ,
DESCUENTO2 TIPO_PORCENTAJE ,
IMPORTE_DESCUENTO2 TIPO_IMPORTE
2009-12-16 17:02:23 +00:00
) ;
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
) ;
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 ,
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 ,
2010-02-17 10:44:34 +00:00
ID_DIRECCION TIPO_ID ,
2009-12-16 17:02:23 +00:00
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 ,
2010-03-04 19:11:24 +00:00
REFERENCIA_CLIENTE VARCHAR ( 255 ) ,
DESCUENTO2 TIPO_PORCENTAJE ,
IMPORTE_DESCUENTO2 TIPO_IMPORTE ,
DATOS_BANCARIOS VARCHAR ( 255 ) COLLATE ES_ES
2009-12-16 17:02:23 +00:00
) ;
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
) ;
2010-03-04 19:11:24 +00:00
CREATE TABLE PEDIDOS_CLIENTE_DETALLE_COLOR (
ID TIPO_ID NOT NULL /* TIPO_ID = INTEGER */ ,
ID_DETALLE TIPO_ID NOT NULL /* TIPO_ID = INTEGER */ ,
COLOR1 INTEGER Default 0 ,
COLOR2 INTEGER Default 0 ,
COLOR3 INTEGER Default 0 ,
COLOR4 INTEGER Default 0 ,
COLOR5 INTEGER Default 0 ,
COLOR6 INTEGER Default 0 ,
COLOR7 INTEGER Default 0 ,
COLOR8 INTEGER Default 0 ,
COLOR9 INTEGER Default 0 ,
COLOR10 INTEGER Default 0 ,
COLOR11 INTEGER Default 0 ,
COLOR12 INTEGER Default 0
) ;
2009-12-16 17:02:23 +00:00
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
) ;
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 ) ,
CERTIFICACION VARCHAR ( 255 ) ,
HOMOLOGADO SMALLINT ,
SUBCONTRATA TIPO_BOOLEANO ,
VENCIMIENTO_FACTURAS_1 SMALLINT ,
VENCIMIENTO_FACTURAS_2 SMALLINT ,
VENCIMIENTO_FACTURAS_3 SMALLINT
) ;
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
) ;
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 ,
2010-03-19 13:03:33 +00:00
CASE WHEN ALBARANES_CLIENTE_DETALLES . ID_ARTICULO_REEMPLAZADO IS NULL then COALESCE ( ALBARANES_CLIENTE_DETALLES . ID_ARTICULO , 0 )
ELSE ALBARANES_CLIENTE_DETALLES . ID_ARTICULO_REEMPLAZADO
END AS ID_ARTICULO ,
2009-12-16 17:02:23 +00:00
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 ,
2010-03-19 13:03:33 +00:00
ID_ARTICULO
2009-12-16 17:02:23 +00:00
;
/* 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 ,
2010-01-19 10:00:04 +00:00
FORMA_PAGO ,
2009-12-16 17:02:23 +00:00
FECHA_PREVISTA_ENVIO ,
FECHA_ENVIO ,
2010-01-13 18:30:03 +00:00
FECHA_RECEPCION ,
DESCUENTO2 ,
2010-01-15 08:27:38 +00:00
IMPORTE_DESCUENTO2 ,
DATOS_BANCARIOS )
2009-12-16 17:02:23 +00:00
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 ,
2010-01-19 10:00:04 +00:00
FORMAS_PAGO . DESCRIPCION ,
2009-12-16 17:02:23 +00:00
ALBARANES_CLIENTE . FECHA_PREVISTA_ENVIO ,
ALBARANES_CLIENTE . FECHA_ENVIO ,
2010-01-13 18:30:03 +00:00
ALBARANES_CLIENTE . FECHA_RECEPCION ,
ALBARANES_CLIENTE . DESCUENTO2 ,
2010-01-15 08:27:38 +00:00
ALBARANES_CLIENTE . IMPORTE_DESCUENTO2 ,
ALBARANES_CLIENTE . DATOS_BANCARIOS
2009-12-16 17:02:23 +00:00
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 )
2010-01-19 10:00:04 +00:00
LEFT OUTER JOIN FORMAS_PAGO ON ( FORMAS_PAGO . ID = ALBARANES_CLIENTE . ID_FORMA_PAGO )
2009-12-16 17:02:23 +00:00
;
/* 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 ,
2010-01-11 18:07:39 +00:00
PRECIO_PVP_TOTAL ,
CAMPOTECNICO ,
CODIGOTECNICO ,
DISENOTECNICO ,
PRECIO
)
2009-12-16 17:02:23 +00:00
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 ,
2010-01-11 18:07:39 +00:00
V_ARTICULOS_PVP_MAX . PRECIO_PVP_TOTAL ,
ARTICULOS . CAMPOTECNICO ,
ARTICULOS . CODIGOTECNICO ,
ARTICULOS . DISENOTECNICO ,
ARTICULOS . PRECIO
2009-12-16 17:02:23 +00:00
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 ,
2009-12-21 17:56:36 +00:00
REFERENCIA ,
PAIS )
2009-12-16 17:02:23 +00:00
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 ,
2009-12-21 17:56:36 +00:00
CONTACTOS . REFERENCIA ,
CONTACTOS . PAIS
2009-12-16 17:02:23 +00:00
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 ,
2009-12-21 17:56:36 +00:00
PAIS ,
2010-01-15 08:27:38 +00:00
ID_AGENTE ,
2009-12-16 17:02:23 +00:00
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 ,
DESCUENTO ,
2010-01-13 18:30:03 +00:00
DESCUENTO2 ,
2009-12-16 17:02:23 +00:00
FELICITACION )
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 ,
2009-12-21 17:56:36 +00:00
V_CONTACTOS . PAIS ,
2010-01-15 08:27:38 +00:00
CLIENTES_DATOS . ID_AGENTE ,
2009-12-16 17:02:23 +00:00
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 . DESCUENTO ,
2010-01-13 18:30:03 +00:00
CLIENTES_DATOS . DESCUENTO2 ,
2009-12-16 17:02:23 +00:00
CLIENTES_DATOS . FELICITACION
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
;
2009-12-17 18:51:39 +00:00
/* View: V_VENDEDORES */
CREATE VIEW V_VENDEDORES (
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 ,
2009-12-21 17:56:36 +00:00
PAIS ,
2009-12-18 18:16:01 +00:00
COMISION )
2009-12-17 18:51:39 +00:00
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 ,
2009-12-21 17:56:36 +00:00
V_CONTACTOS . PAIS ,
2009-12-18 18:16:01 +00:00
VENDEDORES_DATOS . COMISION
2009-12-17 18:51:39 +00:00
FROM V_CONTACTOS
INNER JOIN VENDEDORES_DATOS ON ( VENDEDORES_DATOS . ID_VENDEDOR = V_CONTACTOS . ID )
WHERE V_CONTACTOS . ID_CATEGORIA = 3 ;
;
2009-12-16 17:02:23 +00:00
/* 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 ,
2010-01-15 08:27:38 +00:00
PERSONA_CONTACTO ,
2009-12-16 17:02:23 +00:00
FECHA_ALTA ,
FECHA_MODIFICACION ,
USUARIO ,
ID_FORMA_PAGO ,
RECARGO_EQUIVALENCIA ,
ID_TIPO_IVA ,
IMPORTE_NETO ,
IMPORTE_PORTE ,
ID_AGENTE ,
REFERENCIA_COMISION ,
RETENCION ,
2010-01-13 18:30:03 +00:00
IMPORTE_RETENCION ,
DESCUENTO2 ,
IMPORTE_DESCUENTO2 )
2009-12-16 17:02:23 +00:00
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 ,
2010-01-15 08:27:38 +00:00
FACTURAS_CLIENTE . PERSONA_CONTACTO ,
2009-12-16 17:02:23 +00:00
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 ,
2010-01-13 18:30:03 +00:00
FACTURAS_CLIENTE . IMPORTE_RETENCION ,
FACTURAS_CLIENTE . DESCUENTO2 ,
FACTURAS_CLIENTE . IMPORTE_DESCUENTO2
2009-12-16 17:02:23 +00:00
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 ) ;
;
/* View: V_FACTURAS_PROVEEDOR */
CREATE VIEW V_FACTURAS_PROVEEDOR (
ID ,
ID_EMPRESA ,
REFERENCIA ,
TIPO ,
REFERENCIA_PROVEEDOR ,
FECHA_FACTURA ,
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 )
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_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
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 )
;
/* 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
LEFT 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 ,
2010-03-26 17:10:33 +00:00
CAMPOTECNICO ,
CODIGOTECNICO ,
DISENOTECNICO ,
2009-12-16 17:02:23 +00:00
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 ,
2010-03-26 17:10:33 +00:00
ARTICULOS . CAMPOTECNICO ,
ARTICULOS . CODIGOTECNICO ,
ARTICULOS . DISENOTECNICO ,
2009-12-16 17:02:23 +00:00
/* 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 ,
2010-03-26 17:10:33 +00:00
ARTICULOS . UNIDAD_MEDIDA ,
ARTICULOS . CAMPOTECNICO ,
ARTICULOS . CODIGOTECNICO ,
ARTICULOS . DISENOTECNICO
2009-12-16 17:02:23 +00:00
/* 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
;
/* 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 ,
ID_FACTURA ,
REF_FACTURA_PROV )
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 ,
PEDIDOS_PROVEEDOR . ID_FACTURA ,
FACTURAS_PROVEEDOR . REFERENCIA
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 FACTURAS_PROVEEDOR ON ( FACTURAS_PROVEEDOR . ID = PEDIDOS_PROVEEDOR . ID_FACTURA )
;
/* 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 ,
ID_FACTURA ,
FACTURA ,
PERSONA_CONTACTO ,
DESCRIPCION_BONIFICACION ,
IMPORTE_BONIFICACION )
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 . ID_FACTURA ,
FACTURAS_CLIENTE . REFERENCIA ,
PRESUPUESTOS_CLIENTE . PERSONA_CONTACTO ,
PRESUPUESTOS_CLIENTE . DESCRIPCION_BONIFICACION ,
PRESUPUESTOS_CLIENTE . IMPORTE_BONIFICACION
FROM
PRESUPUESTOS_CLIENTE
INNER JOIN CONTACTOS ON ( CONTACTOS . ID = PRESUPUESTOS_CLIENTE . ID_CLIENTE )
LEFT OUTER JOIN FACTURAS_CLIENTE ON ( FACTURAS_CLIENTE . ID = PRESUPUESTOS_CLIENTE . ID_FACTURA )
;
/* 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 ,
2009-12-21 17:56:36 +00:00
PAIS ,
2009-12-16 17:02:23 +00:00
DESCUENTO ,
DESCRIPCION_PROVEEDOR ,
GRUPO_PROVEEDOR ,
REGIMEN_IVA ,
ID_TIPO_IVA ,
ID_FORMA_PAGO ,
TIENDA_WEB ,
HOMOLOGADO ,
CERTIFICACION ,
SUBCONTRATA ,
VENCIMIENTO_FACTURAS_1 ,
VENCIMIENTO_FACTURAS_2 ,
VENCIMIENTO_FACTURAS_3 )
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 ,
2009-12-21 17:56:36 +00:00
V_CONTACTOS . PAIS ,
2009-12-16 17:02:23 +00:00
PROVEEDORES_DATOS . DESCUENTO ,
PROVEEDORES_DATOS . DESCRIPCION_PROVEEDOR ,
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
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
;
/* View: V_RECIBOS_CLIENTE */
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 ,
RECIBO_COMPENSADO1 . REFERENCIA ,
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 ,
2010-01-25 11:14:26 +00:00
FACTURAS_CLIENTE . ID_CLIENTE , FACTURAS_CLIENTE . NOMBRE , FACTURAS_CLIENTE . NIF_CIF ,
FACTURAS_CLIENTE . CALLE , FACTURAS_CLIENTE . POBLACION , FACTURAS_CLIENTE . CODIGO_POSTAL , FACTURAS_CLIENTE . PROVINCIA ,
2009-12-16 17:02:23 +00:00
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 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 ,
ID_PROVEEDOR ,
NOMBRE_PROVEEDOR ,
NIF_CIF_PROVEEDOR ,
FECHA_ALTA ,
FECHA_MODIFICACION ,
USUARIO )
AS
SELECT RECIBOS_PROVEEDOR . ID ,
RECIBOS_PROVEEDOR . ID_RECIBO_COMPENSADO ,
RECIBO_COMPENSADO1 . REFERENCIA ,
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 ,
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
;
2010-02-17 10:44:34 +00:00
/* PEDIDOS DE CLIENTE */
CREATE VIEW V_PED_CLI_ART_SITUACION (
ID_PEDIDO ,
SITUACION ,
ID_ARTICULO ,
CANTIDAD )
AS
SELECT ID_PEDIDO , SITUACION , ID_ARTICULO , SUM ( CANTIDAD ) AS CANTIDAD
FROM V_ALB_CLI_DETALLES
WHERE ( ID_PEDIDO is not null )
GROUP BY ID_PEDIDO ,
SITUACION ,
ID_ARTICULO
;
CREATE VIEW V_PED_CLI_ART_SITUACION_CANT (
ID_PEDIDO ,
ID_ARTICULO ,
CANTIDAD_RESERVADA ,
CANTIDAD_ENVIADA ,
CANTIDAD_SERVIDA )
AS
SELECT ID_PEDIDO , ID_ARTICULO ,
COALESCE ( ( CASE SITUACION when ' PENDIENTE ' THEN CANTIDAD END ) , 0 ) as CANTIDAD_RESERVADA ,
COALESCE ( ( CASE SITUACION when ' ENVIADO ' THEN CANTIDAD END ) , 0 ) as CANTIDAD_ENVIADA ,
COALESCE ( ( CASE SITUACION when ' SERVIDO ' THEN CANTIDAD END ) , 0 ) as CANTIDAD_SERVIDA
FROM V_PED_CLI_ART_SITUACION
;
CREATE VIEW V_PED_CLI_DETALLES (
ID_PEDIDO ,
ID_ARTICULO ,
CANTIDAD )
AS
SELECT PEDIDOS_CLIENTE_DETALLES . ID_PEDIDO ,
COALESCE ( PEDIDOS_CLIENTE_DETALLES . ID_ARTICULO , 0 ) ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLES . CANTIDAD , 0 ) ) AS CANTIDAD
FROM PEDIDOS_CLIENTE_DETALLES
/* 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_CLIENTE_DETALLES . ID_ARTICULO = ARTICULOS . ID )
WHERE ( PEDIDOS_CLIENTE_DETALLES . ID_ARTICULO is not null )
AND ( ARTICULOS . INVENTARIABLE = 1 )
* /
GROUP BY PEDIDOS_CLIENTE_DETALLES . ID_PEDIDO ,
PEDIDOS_CLIENTE_DETALLES . ID_ARTICULO
;
CREATE VIEW V_PED_CLI_ARTICULOS_AUX (
ID_PEDIDO ,
ID_ARTICULO ,
CANTIDAD_PEDIDA ,
CANTIDAD_RESERVADA ,
CANTIDAD_ENVIADA ,
CANTIDAD_SERVIDA )
AS
SELECT
V_PED_CLI_DETALLES . ID_PEDIDO ,
V_PED_CLI_DETALLES . ID_ARTICULO ,
V_PED_CLI_DETALLES . CANTIDAD AS CANTIDAD_PEDIDA ,
0 AS CANTIDAD_RESERVADA ,
0 AS CANTIDAD_ENVIADA ,
0 AS CANTIDAD_SERVIDA
FROM V_PED_CLI_DETALLES
UNION ALL
SELECT
V_PED_CLI_ART_SITUACION_CANT . ID_PEDIDO ,
V_PED_CLI_ART_SITUACION_CANT . ID_ARTICULO ,
2010-03-19 13:03:33 +00:00
0 AS CANTIDAD_PEDIDA ,
2010-02-17 10:44:34 +00:00
V_PED_CLI_ART_SITUACION_CANT . CANTIDAD_RESERVADA AS CANTIDAD_RESERVADA ,
V_PED_CLI_ART_SITUACION_CANT . CANTIDAD_ENVIADA AS CANTIDAD_ENVIADA ,
V_PED_CLI_ART_SITUACION_CANT . CANTIDAD_SERVIDA AS CANTIDAD_SERVIDA
FROM V_PED_CLI_ART_SITUACION_CANT
;
CREATE VIEW V_PED_CLI_ARTICULOS (
ID_PEDIDO ,
ID_ARTICULO ,
CANTIDAD_PEDIDA ,
CANTIDAD_RESERVADA ,
CANTIDAD_ENVIADA ,
CANTIDAD_SERVIDA ,
CANTIDAD_PENDIENTE )
AS
SELECT ID_PEDIDO ,
ID_ARTICULO ,
SUM ( CANTIDAD_PEDIDA ) ,
SUM ( CANTIDAD_RESERVADA ) as CANTIDAD_RESERVADA ,
SUM ( CANTIDAD_ENVIADA ) as CANTIDAD_ENVIADA ,
SUM ( CANTIDAD_SERVIDA ) as CANTIDAD_SERVIDA ,
( SUM ( CANTIDAD_PEDIDA ) - ( SUM ( CANTIDAD_RESERVADA ) +
SUM ( CANTIDAD_ENVIADA ) +
SUM ( CANTIDAD_SERVIDA ) ) ) as CANTIDAD_PENDIENTE
FROM V_PED_CLI_ARTICULOS_AUX
GROUP BY ID_PEDIDO ,
ID_ARTICULO
HAVING SUM ( CANTIDAD_PEDIDA ) IS NOT NULL
;
CREATE VIEW V_PED_CLI_ART_SIN_ALBARAN (
ID ,
ID_PEDIDO ,
ID_EMPRESA ,
REFERENCIA_PEDIDO ,
REFERENCIA_CLI_PEDIDO ,
FECHA_PEDIDO ,
FECHA_PREVISTA_PEDIDO ,
ID_CLIENTE ,
CALLE ,
CODIGO_POSTAL ,
POBLACION ,
PROVINCIA ,
PERSONA_CONTACTO ,
TELEFONO ,
IVA ,
ID_FORMA_PAGO ,
CLIENTE ,
ID_ARTICULO ,
FAMILIA ,
REFERENCIA ,
DESCRIPCION ,
CANTIDAD_PEDIDA ,
CANTIDAD_RESERVADA ,
CANTIDAD_ENVIADA ,
CANTIDAD_SERVIDA ,
CANTIDAD_PENDIENTE ,
PRECIO )
AS
SELECT
V_PED_CLI_ARTICULOS . ID_PEDIDO | | 0 | | V_PED_CLI_ARTICULOS . ID_ARTICULO as ID , /* Para tener un ID unico sobre el que poder consultar en la sentencia de selecci<63> n del grid */
V_PED_CLI_ARTICULOS . ID_PEDIDO ,
PEDIDOS_CLIENTE . ID_EMPRESA ,
PEDIDOS_CLIENTE . referencia ,
PEDIDOS_CLIENTE . referencia_cliente ,
PEDIDOS_CLIENTE . fecha_pedido ,
PEDIDOS_CLIENTE . fecha_prevista_envio ,
PEDIDOS_CLIENTE . id_cliente ,
PEDIDOS_CLIENTE . CALLE ,
PEDIDOS_CLIENTE . CODIGO_POSTAL ,
PEDIDOS_CLIENTE . POBLACION ,
PEDIDOS_CLIENTE . PROVINCIA ,
PEDIDOS_CLIENTE . PERSONA_CONTACTO ,
PEDIDOS_CLIENTE . TELEFONO ,
PEDIDOS_CLIENTE . IVA ,
PEDIDOS_CLIENTE . ID_FORMA_PAGO ,
CONTACTOS . nombre ,
V_PED_CLI_ARTICULOS . ID_ARTICULO ,
articulos . familia ,
articulos . referencia ,
articulos . descripcion ,
V_PED_CLI_ARTICULOS . CANTIDAD_PEDIDA ,
V_PED_CLI_ARTICULOS . CANTIDAD_RESERVADA ,
V_PED_CLI_ARTICULOS . CANTIDAD_ENVIADA ,
V_PED_CLI_ARTICULOS . CANTIDAD_SERVIDA ,
V_PED_CLI_ARTICULOS . CANTIDAD_PENDIENTE ,
ARTICULOS . PRECIO
from V_PED_CLI_ARTICULOS
left join PEDIDOS_CLIENTE on ( PEDIDOS_CLIENTE . id = V_PED_CLI_ARTICULOS . id_pedido )
left join CONTACTOS on ( contactos . id = PEDIDOS_CLIENTE . id_cliente )
left join articulos on ( articulos . id = V_PED_CLI_ARTICULOS . ID_ARTICULO )
where cantidad_pendiente > 0
;
CREATE VIEW V_PED_CLI_PENDIENTES_PROCESO (
ID_PEDIDO )
AS
SELECT distinct V_PED_CLI_ARTICULOS . id_pedido
FROM V_PED_CLI_ARTICULOS
WHERE ( V_PED_CLI_ARTICULOS . CANTIDAD_PEDIDA > V_PED_CLI_ARTICULOS . CANTIDAD_SERVIDA )
;
CREATE VIEW V_PED_CLI_CON_ALBARANES (
ID_PEDIDO )
AS
SELECT distinct ID_PEDIDO
FROM ( SELECT DISTINCT ALBARANES_CLIENTE_DETALLES . ID_PEDIDO , ALBARANES_CLIENTE_DETALLES . ID_ALBARAN
FROM ALBARANES_CLIENTE_DETALLES )
GROUP BY ID_PEDIDO
having COUNT ( ID_ALBARAN ) > 0
;
CREATE VIEW V_PED_CLI_PROCESO (
ID_PEDIDO )
AS
select v_ped_cli_pendientes_proceso . ID_PEDIDO
from v_ped_cli_pendientes_proceso
inner join v_ped_cli_con_albaranes on ( v_ped_cli_con_albaranes . ID_PEDIDO = v_ped_cli_pendientes_proceso . ID_PEDIDO )
;
CREATE VIEW V_PED_CLI_SITUACION (
ID_PEDIDO ,
SITUACION )
AS
select id_pedido ,
case when sum ( enpro ) = 3 then ' EN PROCESO '
when sum ( enpro ) = 2 then ' PENDIENTE '
when sum ( enpro ) = 1 then ' SERVIDO '
end
from
(
select id as id_pedido , 1 as ser , 1 as pend , 1 as enpro
from pedidos_cliente
union
select id_pedido , 0 as ser , 1 as pend , 1 as enpro
from v_ped_cli_pendientes_proceso
union
select id_pedido , 0 as ser , 0 as pend , 1 as enpro
from v_ped_cli_proceso
)
group by id_pedido
;
CREATE VIEW V_PEDIDOS_CLIENTE (
ID ,
ID_EMPRESA ,
ID_CLIENTE ,
NOMBRE ,
REFERENCIA ,
REFERENCIA_CLIENTE ,
SITUACION ,
FECHA_PEDIDO ,
ID_DIRECCION ,
CALLE ,
CODIGO_POSTAL ,
POBLACION ,
PROVINCIA ,
PERSONA_CONTACTO ,
TELEFONO ,
OBSERVACIONES ,
INCIDENCIAS ,
INCIDENCIAS_ACTIVAS ,
FECHA_ALTA ,
FECHA_MODIFICACION ,
USUARIO ,
IMPORTE_NETO ,
IMPORTE_PORTE ,
DESCUENTO ,
IMPORTE_DESCUENTO ,
2010-03-04 19:11:24 +00:00
DESCUENTO2 ,
IMPORTE_DESCUENTO2 ,
2010-02-17 10:44:34 +00:00
BASE_IMPONIBLE ,
IVA ,
IMPORTE_IVA ,
IMPORTE_TOTAL ,
ID_FORMA_PAGO ,
2010-03-04 19:11:24 +00:00
FORMA_PAGO ,
2010-02-17 10:44:34 +00:00
REF_TIENDA_WEB ,
2010-03-04 19:11:24 +00:00
FECHA_PREVISTA_ENVIO ,
DATOS_BANCARIOS )
2010-02-17 10:44:34 +00:00
AS
SELECT
PEDIDOS_CLIENTE . ID ,
PEDIDOS_CLIENTE . ID_EMPRESA ,
PEDIDOS_CLIENTE . ID_CLIENTE ,
CONTACTOS . NOMBRE ,
PEDIDOS_CLIENTE . REFERENCIA ,
PEDIDOS_CLIENTE . REFERENCIA_CLIENTE ,
2010-03-08 19:09:51 +00:00
TRIM ( V_PED_CLI_SITUACION . SITUACION ) ,
2010-02-17 10:44:34 +00:00
PEDIDOS_CLIENTE . FECHA_PEDIDO ,
PEDIDOS_CLIENTE . ID_DIRECCION ,
PEDIDOS_CLIENTE . CALLE ,
PEDIDOS_CLIENTE . CODIGO_POSTAL ,
PEDIDOS_CLIENTE . POBLACION ,
PEDIDOS_CLIENTE . PROVINCIA ,
PEDIDOS_CLIENTE . PERSONA_CONTACTO ,
PEDIDOS_CLIENTE . TELEFONO ,
PEDIDOS_CLIENTE . OBSERVACIONES ,
PEDIDOS_CLIENTE . INCIDENCIAS ,
PEDIDOS_CLIENTE . INCIDENCIAS_ACTIVAS ,
PEDIDOS_CLIENTE . FECHA_ALTA ,
PEDIDOS_CLIENTE . FECHA_MODIFICACION ,
PEDIDOS_CLIENTE . USUARIO ,
PEDIDOS_CLIENTE . IMPORTE_NETO ,
PEDIDOS_CLIENTE . IMPORTE_PORTE ,
PEDIDOS_CLIENTE . DESCUENTO ,
PEDIDOS_CLIENTE . IMPORTE_DESCUENTO ,
2010-03-04 19:11:24 +00:00
PEDIDOS_CLIENTE . DESCUENTO2 ,
PEDIDOS_CLIENTE . IMPORTE_DESCUENTO2 ,
2010-02-17 10:44:34 +00:00
PEDIDOS_CLIENTE . BASE_IMPONIBLE ,
PEDIDOS_CLIENTE . IVA ,
PEDIDOS_CLIENTE . IMPORTE_IVA ,
PEDIDOS_CLIENTE . IMPORTE_TOTAL ,
PEDIDOS_CLIENTE . ID_FORMA_PAGO ,
2010-03-04 19:11:24 +00:00
FORMAS_PAGO . DESCRIPCION ,
2010-02-17 10:44:34 +00:00
PEDIDOS_CLIENTE . REF_TIENDA_WEB ,
2010-03-04 19:11:24 +00:00
PEDIDOS_CLIENTE . FECHA_PREVISTA_ENVIO ,
PEDIDOS_CLIENTE . DATOS_BANCARIOS
2010-02-17 10:44:34 +00:00
FROM
V_PED_CLI_SITUACION
INNER JOIN PEDIDOS_CLIENTE ON ( PEDIDOS_CLIENTE . ID = V_PED_CLI_SITUACION . ID_PEDIDO )
INNER JOIN CONTACTOS ON ( PEDIDOS_CLIENTE . ID_CLIENTE = CONTACTOS . ID )
2010-03-04 19:11:24 +00:00
LEFT OUTER JOIN FORMAS_PAGO ON ( FORMAS_PAGO . ID = PEDIDOS_CLIENTE . ID_FORMA_PAGO )
2010-02-17 10:44:34 +00:00
;
2010-03-19 13:03:33 +00:00
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* * * VISTAS PARA EL CONTROL DE COLORES PENDIENTES * * */
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2010-02-17 10:44:34 +00:00
2010-03-19 13:03:33 +00:00
CREATE VIEW V_ALB_CLI_DETALLE_COLORES (
/* ID_ALBARAN, */
ID_PEDIDO ,
/* SITUACION,
ID_ALMACEN ,
* /
ID_ARTICULO ,
COLOR1 ,
COLOR2 ,
COLOR3 ,
COLOR4 ,
COLOR5 ,
COLOR6 ,
COLOR7 ,
COLOR8 ,
COLOR9 ,
COLOR10 ,
COLOR11 ,
COLOR12 )
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 ) as ID_ARTICULO ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR1 , 0 ) ) AS COLOR1 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR2 , 0 ) ) AS COLOR2 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR3 , 0 ) ) AS COLOR3 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR4 , 0 ) ) AS COLOR4 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR5 , 0 ) ) AS COLOR5 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR6 , 0 ) ) AS COLOR6 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR7 , 0 ) ) AS COLOR7 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR8 , 0 ) ) AS COLOR8 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR9 , 0 ) ) AS COLOR9 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR10 , 0 ) ) AS COLOR10 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR11 , 0 ) ) AS COLOR11 ,
SUM ( COALESCE ( ALBARANES_CLIENTE_DETALLE_COLOR . COLOR12 , 0 ) ) AS COLOR12
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 )
LEFT JOIN ALBARANES_CLIENTE_DETALLE_COLOR
ON ( ALBARANES_CLIENTE_DETALLE_COLOR . ID_DETALLE = ALBARANES_CLIENTE_DETALLES . ID )
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
;
CREATE VIEW V_PED_CLI_DETALLE_COLORES (
ID_PEDIDO ,
ID_ARTICULO ,
COLOR1 ,
COLOR2 ,
COLOR3 ,
COLOR4 ,
COLOR5 ,
COLOR6 ,
COLOR7 ,
COLOR8 ,
COLOR9 ,
COLOR10 ,
COLOR11 ,
COLOR12 )
AS
SELECT PEDIDOS_CLIENTE_DETALLES . ID_PEDIDO ,
COALESCE ( PEDIDOS_CLIENTE_DETALLES . ID_ARTICULO , 0 ) as ID_ARTICULO ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR1 , 0 ) ) AS COLOR1 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR2 , 0 ) ) AS COLOR2 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR3 , 0 ) ) AS COLOR3 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR4 , 0 ) ) AS COLOR4 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR5 , 0 ) ) AS COLOR5 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR6 , 0 ) ) AS COLOR6 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR7 , 0 ) ) AS COLOR7 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR8 , 0 ) ) AS COLOR8 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR9 , 0 ) ) AS COLOR9 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR10 , 0 ) ) AS COLOR10 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR11 , 0 ) ) AS COLOR11 ,
SUM ( COALESCE ( PEDIDOS_CLIENTE_DETALLE_COLOR . COLOR12 , 0 ) ) AS COLOR12
FROM PEDIDOS_CLIENTE_DETALLES
LEFT JOIN PEDIDOS_CLIENTE_DETALLE_COLOR
ON ( PEDIDOS_CLIENTE_DETALLE_COLOR . ID_DETALLE = PEDIDOS_CLIENTE_DETALLES . ID )
GROUP BY PEDIDOS_CLIENTE_DETALLES . ID_PEDIDO ,
PEDIDOS_CLIENTE_DETALLES . ID_ARTICULO
;
CREATE VIEW V_PED_CLI_ART_COLORES_PEND (
ID_PEDIDO ,
ID_ARTICULO ,
COLOR1 ,
COLOR2 ,
COLOR3 ,
COLOR4 ,
COLOR5 ,
COLOR6 ,
COLOR7 ,
COLOR8 ,
COLOR9 ,
COLOR10 ,
COLOR11 ,
COLOR12 )
AS
select v_ped_cli_detalle_colores . ID_PEDIDO , v_ped_cli_detalle_colores . ID_ARTICULO ,
v_ped_cli_detalle_colores . COLOR1 - coalesce ( v_alb_cli_detalle_colores . COLOR1 , 0 ) ,
v_ped_cli_detalle_colores . COLOR2 - coalesce ( v_alb_cli_detalle_colores . COLOR2 , 0 ) ,
v_ped_cli_detalle_colores . COLOR3 - coalesce ( v_alb_cli_detalle_colores . COLOR3 , 0 ) ,
v_ped_cli_detalle_colores . COLOR4 - coalesce ( v_alb_cli_detalle_colores . COLOR4 , 0 ) ,
v_ped_cli_detalle_colores . COLOR5 - coalesce ( v_alb_cli_detalle_colores . COLOR5 , 0 ) ,
v_ped_cli_detalle_colores . COLOR6 - coalesce ( v_alb_cli_detalle_colores . COLOR6 , 0 ) ,
v_ped_cli_detalle_colores . COLOR7 - coalesce ( v_alb_cli_detalle_colores . COLOR7 , 0 ) ,
v_ped_cli_detalle_colores . COLOR8 - coalesce ( v_alb_cli_detalle_colores . COLOR8 , 0 ) ,
v_ped_cli_detalle_colores . COLOR9 - coalesce ( v_alb_cli_detalle_colores . COLOR9 , 0 ) ,
v_ped_cli_detalle_colores . COLOR10 - coalesce ( v_alb_cli_detalle_colores . COLOR10 , 0 ) ,
v_ped_cli_detalle_colores . COLOR11 - coalesce ( v_alb_cli_detalle_colores . COLOR11 , 0 ) ,
v_ped_cli_detalle_colores . COLOR12 - coalesce ( v_alb_cli_detalle_colores . COLOR12 , 0 )
from v_ped_cli_detalle_colores
left join v_alb_cli_detalle_colores
on ( ( v_alb_cli_detalle_colores . ID_PEDIDO = v_ped_cli_detalle_colores . id_pedido )
and ( v_alb_cli_detalle_colores . id_articulo = v_ped_cli_detalle_colores . id_articulo ) )
;
2010-02-17 10:44:34 +00:00
2009-12-16 17:02:23 +00:00
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* * * * Primary Keys * * * */
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
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 ) ;
2010-01-11 18:07:39 +00:00
ALTER TABLE ALBARANES_CLIENTE_DETALLE_COLOR ADD CONSTRAINT PK_ALBARANES_CLIENTE_DETALLE_CO PRIMARY KEY ( ID ) ;
2009-12-16 17:02:23 +00:00
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 ) ;
2009-12-17 18:51:39 +00:00
ALTER TABLE VENDEDORES_DATOS ADD CONSTRAINT PK_VENDEDORES_DATOS PRIMARY KEY ( ID_VENDEDOR ) ;
2009-12-16 17:02:23 +00:00
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 ) ;
2010-03-04 19:11:24 +00:00
ALTER TABLE PEDIDOS_CLIENTE_DETALLE_COLOR ADD CONSTRAINT PK_PEDIDOS_CLIENTE_DETALLE_CO PRIMARY KEY ( ID ) ;
2009-12-16 17:02:23 +00:00
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_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 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 . 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 * * * */
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */