This repository has been archived on 2024-11-28. You can view files and clone it, but cannot push or open issues or pull requests.
Miguelo_FactuGES/Script.sql
2007-06-25 15:19:31 +00:00

301 lines
11 KiB
SQL
Raw Permalink Blame History

CREATE DOMAIN CODIGOSALMACENES AS
SMALLINT;
CREATE DOMAIN NOMBRESALMACEN AS
VARCHAR(100)
COLLATE ES_ES;
CREATE DOMAIN TIPOSALMACEN AS
VARCHAR(1)
DEFAULT 'O'
COLLATE ES_ES;
CREATE DOMAIN UNIDADESMEDIDA AS
VARCHAR(30)
COLLATE ES_ES;
CREATE DOMAIN SITUACIONESPEDIDO AS
VARCHAR(30) CHARACTER SET ISO8859_1
NOT NULL
COLLATE ES_ES;
insert into contadores values (18, 'ALMACENES', NULL, 0);
insert into contadores values (19, 'PEDIDOSPROVEEDOR', 12, 0);
/*INSERT INTO DETALLECONTADORES (CODIGOEMPRESA, CODIGOTABLA, SERIADO, DIA, MES, ANO, CONTADOR, CONTDIA, CONTMES, CONTANO) VALUES(0, 18, 'ALM', 0, 0, 0, 0, NULL, NULL, NULL);*/
INSERT INTO DETALLECONTADORES (CODIGOEMPRESA, CODIGOTABLA, SERIADO, DIA, MES, ANO, CONTADOR, CONTDIA, CONTMES, CONTANO) VALUES(0, 19, 'PED', 0, 0, 1, 0, NULL, NULL, '06');
CREATE TABLE UNIDADESMEDIDA (
DESCRIPCION UNIDADESMEDIDA NOT NULL
);
ALTER TABLE UNIDADESMEDIDA ADD CONSTRAINT PK_UNIDADESMEDIDA PRIMARY KEY (DESCRIPCION);
CREATE TABLE SITUPEDIDOS (
DESCRIPCION SITUACIONESPEDIDO NOT NULL
);
INSERT INTO SITUPEDIDOS (DESCRIPCION) VALUES('No emitido');
INSERT INTO SITUPEDIDOS (DESCRIPCION) VALUES('Emitido');
INSERT INTO SITUPEDIDOS (DESCRIPCION) VALUES('Parcialmente recibido');
INSERT INTO SITUPEDIDOS (DESCRIPCION) VALUES('Totalmente recibido');
INSERT INTO SITUPEDIDOS (DESCRIPCION) VALUES('Devuelto');
COMMIT WORK;
CREATE TABLE ARTICULOS (
CODIGO CODIGOS NOT NULL,
FAMILIA FAMILIAS,
DESCRIPCION DESCRIPCIONES,
UNIDADESMEDIDA UNIDADESMEDIDA,
OBSERVACIONES OBSERVACIONES,
PRECIO IMPORTES6
);
ALTER TABLE ARTICULOS ADD CONSTRAINT PK_ARTICULOS PRIMARY KEY (CODIGO);
CREATE TABLE ALMACENES (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGO CODIGOSALMACENES NOT NULL,
TIPO TIPOSALMACEN NOT NULL,
NOMBRE NOMBRESALMACEN,
CALLE CALLES,
NUMERO NUMPISOS,
PISO NUMPISOS,
CODIGOPOSTAL CODIGOSPOSTALES,
POBLACION POBLACIONES,
PROVINCIA PROVINCIAS,
TELEFONO TELEFONOS,
PERSONACONTACTO NOMBRES,
CODIGOCLIENTE CODIGOS
);
ALTER TABLE ALMACENES ADD CONSTRAINT PK_ALMACENES PRIMARY KEY (CODIGOEMPRESA, CODIGO);
ALTER TABLE ALMACENES ADD FOREIGN KEY (CODIGOEMPRESA) REFERENCES EMPRESAS (CODIGO) ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE ALMACENES ADD FOREIGN KEY (CODIGOCLIENTE) REFERENCES CLIENTES (CODIGO) ON DELETE NO ACTION ON UPDATE NO ACTION;
CREATE TABLE ESTADOALMACEN (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGOALMACEN CODIGOSALMACENES NOT NULL,
CODIGOARTICULO CODIGOS NOT NULL,
EXISTENCIAS CANTIDADES,
STOCKMIN INTEGER,
STOCKMAX INTEGER,
FECHARECEPCION FECHAS,
PRECIORECEPCION IMPORTES6
);
ALTER TABLE ESTADOALMACEN ADD CONSTRAINT PK_ESTADOALMACEN PRIMARY KEY (CODIGOEMPRESA, CODIGOALMACEN, CODIGOARTICULO);
ALTER TABLE ESTADOALMACEN ADD FOREIGN KEY (CODIGOARTICULO) REFERENCES ARTICULOS (CODIGO) ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE ESTADOALMACEN ADD FOREIGN KEY (CODIGOEMPRESA, CODIGOALMACEN) REFERENCES ALMACENES (CODIGOEMPRESA, CODIGO) ON DELETE CASCADE ON UPDATE NO ACTION;
CREATE TABLE ESTADOOBRASHISTORICAS (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGOOBRA CODIGOSALMACENES NOT NULL,
FECHACIERRE FECHAS NOT NULL,
CODIGOARTICULO CODIGOS NOT NULL,
FAMILIA FAMILIAS,
DESCRIPCION DESCRIPCIONES,
UNIDADESMEDIDA UNIDADESMEDIDA,
EXISTENCIAS CANTIDADES,
OBSERVACIONES OBSERVACIONES,
PRECIORECEPCION IMPORTES6,
FECHARECEPCION FECHAS
);
ALTER TABLE ESTADOOBRASHISTORICAS ADD CONSTRAINT PK_ESTADOOBRASHISTORICAS PRIMARY KEY (CODIGOEMPRESA, FECHACIERRE, CODIGOOBRA, CODIGOARTICULO);
ALTER TABLE ESTADOOBRASHISTORICAS ADD FOREIGN KEY (CODIGOEMPRESA, CODIGOOBRA, FECHACIERRE) REFERENCES OBRASHISTORICAS (CODIGOEMPRESA, CODIGO, FECHACIERRE) ON DELETE CASCADE ON UPDATE NO ACTION;
CREATE TABLE OBRASPRESUPUESTOS (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGOALMACEN CODIGOSALMACENES NOT NULL,
CODIGOPRESUPUESTO CODIGOSESPECIALES NOT NULL
);
ALTER TABLE OBRASPRESUPUESTOS ADD CONSTRAINT PK_OBRASPRESUPUESTOS PRIMARY KEY (CODIGOPRESUPUESTO, CODIGOALMACEN, CODIGOEMPRESA);
ALTER TABLE OBRASPRESUPUESTOS ADD CONSTRAINT FK_OBRASPRESUPUESTOS FOREIGN KEY (CODIGOEMPRESA, CODIGOALMACEN) REFERENCES ALMACENES (CODIGOEMPRESA, CODIGO) ON DELETE CASCADE ON UPDATE CASCADE;
/*ALTER TABLE OBRASPRESUPUESTOS ADD CONSTRAINT FK_OBRASPRESUPUESTOS2 FOREIGN KEY (CODIGOEMPRESA, CODIGOPRESUPUESTO) REFERENCES PRESUPUESTOSCLIENTE (CODIGOEMPRESA, CODIGO) ON DELETE CASCADE ON UPDATE CASCADE;*/
CREATE TABLE OBRASHISTORICASPRESUPUESTOS (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGOALMACEN CODIGOSALMACENES NOT NULL,
FECHACIERRE FECHAS NOT NULL,
CODIGOPRESUPUESTO CODIGOSESPECIALES NOT NULL
);
ALTER TABLE OBRASHISTORICASPRESUPUESTOS ADD CONSTRAINT PK_OBRASHISTORICASPRESUPUES PRIMARY KEY (CODIGOEMPRESA, CODIGOALMACEN, FECHACIERRE, CODIGOPRESUPUESTO);
ALTER TABLE OBRASHISTORICASPRESUPUESTOS ADD CONSTRAINT FK_OBRASHISTORICASPRESUPUES FOREIGN KEY (CODIGOEMPRESA, CODIGOALMACEN, FECHACIERRE) REFERENCES OBRASHISTORICAS (CODIGOEMPRESA, CODIGO, FECHACIERRE) ON DELETE CASCADE ON UPDATE CASCADE;
CREATE TABLE OBRASHISTORICAS (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGO CODIGOSALMACENES NOT NULL,
FECHACIERRE FECHAS NOT NULL,
NOMBRE NOMBRESALMACEN,
CALLE CALLES,
NUMERO NUMPISOS,
PISO NUMPISOS,
CODIGOPOSTAL CODIGOSPOSTALES,
POBLACION POBLACIONES,
PROVINCIA PROVINCIAS,
TELEFONO TELEFONOS,
PERSONACONTACTO NOMBRES
);
ALTER TABLE OBRASHISTORICAS ADD CONSTRAINT PK_OBRASHISTORICAS PRIMARY KEY (CODIGOEMPRESA, CODIGO, FECHACIERRE);
ALTER TABLE OBRASHISTORICAS ADD FOREIGN KEY (CODIGOEMPRESA) REFERENCES EMPRESAS (CODIGO) ON DELETE NO ACTION ON UPDATE NO ACTION;
CREATE TABLE TIPOSMOVIMIENTOS (
DESCRIPCION VARCHAR(20) NOT NULL
);
INSERT INTO TIPOSMOVIMIENTOS (DESCRIPCION) VALUES('Traslado');
INSERT INTO TIPOSMOVIMIENTOS (DESCRIPCION) VALUES('Regularizaci<EFBFBD>n');
INSERT INTO TIPOSMOVIMIENTOS (DESCRIPCION) VALUES('Pedido');
INSERT INTO TIPOSMOVIMIENTOS (DESCRIPCION) VALUES('Devolucion');
COMMIT WORK;
CREATE TABLE MOVIMIENTOS (
CODIGO CODIGOSESPECIALES NOT NULL,
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGOALMACEN CODIGOSALMACENES NOT NULL,
CODIGOARTICULO CODIGOS NOT NULL,
NOMBREALMACEN NOMBRESALMACEN,
DESCRIPCIONARTICULO DESCRIPCIONES,
FAMILIA FAMILIAS,
UNIDADES UNIDADESMEDIDA,
TIPOOPERACION VARCHAR(12) NOT NULL,
TIPOMOVIMIENTO VARCHAR(15) NOT NULL,
CANTIDAD CANTIDADES NOT NULL,
STOCKNUEVO CANTIDADES,
STOCKANTIGUO CANTIDADES,
FECHA FECHAS NOT NULL,
HORA HORAS NOT NULL,
USUARIO NOMBRES NOT NULL,
CAUSA OBSERVACIONES,
NOMBRECLIENTE NOMBRES
);
ALTER TABLE MOVIMIENTOS ADD CONSTRAINT
PK_MOVIMIENTOS
PRIMARY KEY (CODIGO);
ALTER TABLE MOVIMIENTOS ADD
FOREIGN KEY (CODIGOEMPRESA, CODIGOALMACEN) REFERENCES ALMACENES (CODIGOEMPRESA, CODIGO)
ON DELETE CASCADE;
CREATE TABLE PEDIDOSPROVEEDOR (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGO CODIGOSESPECIALES NOT NULL,
FECHAALTA FECHAS NOT NULL,
FECHAEMISION FECHAS,
FECHARECEPCION FECHAS,
FECHADEVOLUCION FECHAS,
SITUACION SITUACIONESPEDIDO NOT NULL,
USUARIO NOMBRES NOT NULL,
NOTAS OBSERVACIONES,
CODIGOPROVEEDOR CODIGOS,
NIFCIF NIFCIFS,
NOMBRE NOMBRES,
FAX TELEFONOS,
PERSONACONTACTO NOMBRES,
CODIGOCLIENTE CODIGOS,
CODIGOALMACEN CODIGOSALMACENES,
NOMBREALMACEN NOMBRESALMACEN,
CALLEALMACEN CALLES,
NUMEROALMACEN NUMPISOS,
PISOALMACEN NUMPISOS,
CODIGOPOSTALALMACEN CODIGOSPOSTALES,
POBLACIONALMACEN POBLACIONES,
PROVINCIAALMACEN PROVINCIAS,
PERSONACONTACTOALMACEN NOMBRES,
IMPORTETOTAL IMPORTES2,
CODIGOFACTURA CODIGOSESPECIALES,
CODIGOOBRA CODIGOSALMACENES,
NOMBREOBRA NOMBRESALMACEN
);
ALTER TABLE PEDIDOSPROVEEDOR ADD CONSTRAINT PK_PEDIDOSPROVEEDOR PRIMARY KEY (CODIGOEMPRESA, CODIGO);
ALTER TABLE PEDIDOSPROVEEDOR ADD FOREIGN KEY (CODIGOEMPRESA) REFERENCES EMPRESAS (CODIGO) ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE PEDIDOSPROVEEDOR ADD FOREIGN KEY (CODIGOEMPRESA, CODIGOFACTURA) REFERENCES FACTURASPROVEEDOR (CODIGOEMPRESA, CODIGO) ON UPDATE CASCADE;
CREATE TABLE DETALLESPEDIDOSPROVEEDOR (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGOPEDIDO CODIGOSESPECIALES NOT NULL,
NUMCONCEPTO NUMCONCEPTOS NOT NULL,
CODIGOARTICULO CODIGOS,
REFERENCIA REFERENCIAS,
DESCRIPCION DESCRIPCIONES,
CANTIDAD CANTIDADES,
UNIDADESMEDIDA UNIDADESMEDIDA,
PRECIO IMPORTES6,
DESCUENTO PORCENTAJES,
TOTAL IMPORTES6,
PENDIENTES CANTIDADES
);
ALTER TABLE DETALLESPEDIDOSPROVEEDOR ADD CONSTRAINT PK_DETALLESPEDIDOSPROVEEDOR PRIMARY KEY (CODIGOEMPRESA, CODIGOPEDIDO, NUMCONCEPTO);
ALTER TABLE DETALLESPEDIDOSPROVEEDOR ADD FOREIGN KEY (CODIGOEMPRESA, CODIGOPEDIDO) REFERENCES PEDIDOSPROVEEDOR (CODIGOEMPRESA, CODIGO) ON DELETE CASCADE ON UPDATE CASCADE;
CREATE INDEX DETALLESPEDIDOSPROVEEDOR_IDX1 ON DETALLESPEDIDOSPROVEEDOR (CODIGOARTICULO);
CREATE TABLE OBRASHISTORICAS (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGO CODIGOSALMACENES NOT NULL,
FECHACIERRE FECHAS NOT NULL,
NOMBRE NOMBRESALMACEN,
CALLE CALLES,
NUMERO NUMPISOS,
PISO NUMPISOS,
CODIGOPOSTAL CODIGOSPOSTALES,
POBLACION POBLACIONES,
PROVINCIA PROVINCIAS,
TELEFONO TELEFONOS,
PERSONACONTACTO NOMBRES
);
ALTER TABLE OBRASHISTORICAS ADD CONSTRAINT PK_OBRASHISTORICAS PRIMARY KEY (CODIGOEMPRESA, CODIGO, FECHACIERRE);
ALTER TABLE OBRASHISTORICAS ADD CONSTRAINT FK_OBRASHISTORICAS FOREIGN KEY (CODIGOEMPRESA) REFERENCES EMPRESAS (CODIGO);
CREATE TABLE ESTADOOBRASHISTORICAS (
CODIGOEMPRESA CODIGOSEMPRESAS NOT NULL,
CODIGOOBRA CODIGOSALMACENES NOT NULL,
FECHACIERRE FECHAS NOT NULL,
CODIGOARTICULO CODIGOS NOT NULL,
FAMILIA FAMILIAS,
DESCRIPCION DESCRIPCIONES,
UNIDADESMEDIDA UNIDADESMEDIDA,
EXISTENCIAS CANTIDADES,
OBSERVACIONES OBSERVACIONES,
PRECIORECEPCION IMPORTES6,
FECHARECEPCION FECHAS
);
ALTER TABLE ESTADOOBRASHISTORICAS ADD CONSTRAINT PK_ESTADOOBRASHISTORICAS PRIMARY KEY (CODIGOEMPRESA, FECHACIERRE, CODIGOOBRA, CODIGOARTICULO);
ALTER TABLE ESTADOOBRASHISTORICAS ADD FOREIGN KEY (CODIGOEMPRESA, CODIGOOBRA, FECHACIERRE) REFERENCES OBRASHISTORICAS (CODIGOEMPRESA, CODIGO, FECHACIERRE) ON DELETE CASCADE ON UPDATE NO ACTION;
ALTER TABLE ARTICULOS ADD UNIDADESMEDIDA UNIDADESMEDIDA COLLATE ES_ES;