CREATE TABLE GRSITEMAGENDAOL (
  NRAGENDAOL VARCHAR2(10) NOT NULL, 
  CDFORNECED VARCHAR2(21) NOT NULL, 
  CDFORNOL VARCHAR2(21) NOT NULL, 
  CDPRODUTO VARCHAR2(10) NOT NULL, 
  CDMARCA VARCHAR2(5) NOT NULL, 
  DTENTREGAGENDA DATE NOT NULL, 
  QTESTOQFORNOL DOUBLE PRECISION DEFAULT NULL NULL, 
  VRPREUNIAGENDA DOUBLE PRECISION DEFAULT NULL NULL, 
  QTPREVITMFORNOL DOUBLE PRECISION DEFAULT NULL NULL, 
  QTPROGITMFORNOL DOUBLE PRECISION DEFAULT NULL NULL, 
  QTRECEEITFORNOL DOUBLE PRECISION DEFAULT NULL NULL, 
  IDITEMAGENDADO VARCHAR2(1) DEFAULT NULL NULL, 
  DSENTREGAGENDA VARCHAR2(150) DEFAULT NULL NULL, 
  IDENTREGAGENDA VARCHAR2(1) DEFAULT 'N' NOT NULL, 
  IDAJUSTADO VARCHAR2(1) DEFAULT 'N' NOT NULL, 
  QTDISPOFORNOL DOUBLE PRECISION DEFAULT NULL NULL, 
  NRORG NUMBER(10) DEFAULT 1 NOT NULL, 
  IDATIVO VARCHAR2(1) DEFAULT 'S' NOT NULL, 
  DTINCLUSAO DATE DEFAULT NULL NULL, 
  CDOPERINCLUSAO VARCHAR2(12) DEFAULT '1' NULL, 
  DTULTATU DATE DEFAULT NULL NULL, 
  NRORGINCLUSAO NUMBER(10) DEFAULT 1 NULL, 
  NRORGULTATU NUMBER(10) DEFAULT 1 NULL, 
  CDOPERULTATU VARCHAR2(12) DEFAULT NULL NULL,
  CONSTRAINT PK_GRSITEMAGENDAOL PRIMARY KEY(NRAGENDAOL, CDFORNECED, CDFORNOL, CDPRODUTO, CDMARCA, DTENTREGAGENDA)
)
/
ALTER TABLE GRSITEMAGENDAOL ADD CONSTRAINT FK_GRSITEMAGENDAOL_AG FOREIGN KEY (NRAGENDAOL, CDFORNECED) REFERENCES GRSAGENDAOL (NRAGENDAOL, CDFORNECED)
/
ALTER TABLE GRSITEMAGENDAOL ADD CONSTRAINT FK_GRSITEMAGENDAOL_PARAM FOREIGN KEY (CDFORNOL, CDFORNECED) REFERENCES GRSPARAMFORNOL (CDFORNOL, CDFORNECED)
/
ALTER TABLE GRSITEMAGENDAOL ADD CONSTRAINT FK_GRSITEMAGENDAOL_PROD FOREIGN KEY (CDPRODUTO) REFERENCES PRODUTO (CDPRODUTO)
/
ALTER TABLE GRSITEMAGENDAOL ADD CONSTRAINT FK_GRSITEMAGENDAOL_MARC FOREIGN KEY (CDMARCA) REFERENCES MARCA (CDMARCA)
/
ALTER TABLE GRSITEMAGENDAOL ADD CONSTRAINT CKC_IDATIVO_GRSITEMAGENDAOL CHECK (IDATIVO IN ('S', 'N'))
/
ALTER TABLE GRSITEMAGENDAOL ADD CONSTRAINT CKC_IDENTREGAGENDA CHECK (IDENTREGAGENDA in ('S','N'))
/
ALTER TABLE GRSITEMAGENDAOL ADD CONSTRAINT CKC_IDITEMAGENDADO CHECK (IDITEMAGENDADO IS NULL OR (IDITEMAGENDADO IN ('N', 'S')))
/
CREATE INDEX FK_GRSITEMAGENDAOL_AG ON GRSITEMAGENDAOL (NRAGENDAOL, CDFORNECED)
/
CREATE INDEX FK_GRSITEMAGENDAOL_PARAM ON GRSITEMAGENDAOL (CDFORNECED, CDFORNOL)
/
CREATE INDEX FK_GRSITEMAGENDAOL_PROD ON GRSITEMAGENDAOL (CDPRODUTO)
/
CREATE INDEX FK_GRSITEMAGENDAOL_MARC ON GRSITEMAGENDAOL (CDMARCA)
/
CREATE TABLE POSESTOL (
  CDFORNECED VARCHAR2(21) NOT NULL, 
  CDPRODUTO VARCHAR2(10) NOT NULL, 
  DTPOSESTOL DATE NOT NULL, 
  CDMARCA VARCHAR2(5) DEFAULT NULL NULL, 
  QTPOSESTOL DOUBLE PRECISION DEFAULT NULL NULL, 
  NRORG NUMBER(10) DEFAULT 1 NOT NULL, 
  IDATIVO VARCHAR2(1) DEFAULT 'S' NOT NULL, 
  DTINCLUSAO DATE DEFAULT NULL NULL, 
  CDOPERINCLUSAO VARCHAR2(12) DEFAULT '1' NULL, 
  DTULTATU DATE DEFAULT NULL NULL, 
  NRORGINCLUSAO NUMBER(10) DEFAULT 1 NULL, 
  NRORGULTATU NUMBER(10) DEFAULT 1 NULL, 
  CDOPERULTATU VARCHAR2(12) DEFAULT NULL NULL,
  CONSTRAINT PK_POSESTOL PRIMARY KEY(CDFORNECED, CDPRODUTO, DTPOSESTOL)
)
/
ALTER TABLE POSESTOL ADD CONSTRAINT FK_CDFORNESTOL FOREIGN KEY (CDFORNECED) REFERENCES FORNECEDOR (CDFORNECED)
/
ALTER TABLE POSESTOL ADD CONSTRAINT FK_CDPRODESTOL FOREIGN KEY (CDPRODUTO) REFERENCES PRODUTO (CDPRODUTO)
/
ALTER TABLE POSESTOL ADD CONSTRAINT CKC_IDATIVO_POSESTOL CHECK (IDATIVO IN ('S', 'N'))
/
CREATE INDEX FK_CDFORNESTOL ON POSESTOL (CDFORNECED)
/
CREATE INDEX FK_CDPRODESTOL ON POSESTOL (CDPRODUTO)