CREATE TABLE ERP_I_PLANTPRODUCTSETTINGS
(
TRANSFER_ID      NUMBER NOT NULL,
TRANSFER_STATUS  NUMBER DEFAULT 0 NOT NULL 
 CONSTRAINT CHK_ERP_IPLANTPRODSET_V1 CHECK (TRANSFER_STATUS IN (-1,0,1)),
PLANTCODE        VARCHAR2(6) NOT NULL,
PRODUCTCODE      VARCHAR2(12) NOT NULL,
ACTIVE_YN        VARCHAR2(1) NOT NULL,
TIMESTAMP        DATE DEFAULT SYSDATE NOT NULL
);
COMMENT ON COLUMN ERP_I_PLANTPRODUCTSETTINGS.TRANSFER_STATUS
  IS '0 = ready to be read, 1 = read correctly';
ALTER TABLE ERP_I_PLANTPRODUCTSETTINGS
 ADD CONSTRAINT PK_ERP_I_PLANTPRODUCTSET PRIMARY KEY (TRANSFER_ID);
CREATE INDEX XIF1ERP_I_PLANTPRODUCTSET ON ERP_I_PLANTPRODUCTSETTINGS(TRANSFER_STATUS);
ALTER TABLE ERP_I_PLANTPRODUCTSETTINGS
  ADD CONSTRAINT UK_ERP_I_PLANTPRODUCTSET UNIQUE (TRANSFER_ID, PLANTCODE, PRODUCTCODE);

CREATE TABLE ERP_I_PLANTPRODUCTSET_LOG
(
  TRANSFER_ID     NUMBER NOT NULL,
  TRANSFER_STATUS NUMBER DEFAULT 0 NOT NULL  CONSTRAINT CHK_ERP_I_PLANTPRODSET_LOG_V1 CHECK (TRANSFER_STATUS IN (-1,0,1)),
  TEXT            VARCHAR2(1000) NULL,
  PROCESS_STATUS  NUMBER DEFAULT 0 NOT NULL,
  TIMESTAMP       DATE DEFAULT SYSDATE NOT NULL
);
COMMENT ON COLUMN ERP_I_PLANTPRODUCTSET_LOG.TRANSFER_STATUS
  IS '0 = ready to be read, 1 = read correctly';
COMMENT ON COLUMN ERP_I_PLANTPRODUCTSET_LOG.PROCESS_STATUS
  IS '0 = processed correctly, 1 = process stopped with errors';
ALTER TABLE ERP_I_PLANTPRODUCTSET_LOG
  ADD CONSTRAINT PK_ERP_I_PLANTPRODSET_LOG PRIMARY KEY (TRANSFER_ID);
ALTER TABLE ERP_I_PLANTPRODUCTSET_LOG
  ADD CONSTRAINT FK_ERP_I_PLANTPRODSET_LOG FOREIGN KEY (TRANSFER_ID)
  REFERENCES ERP_I_PLANTPRODUCTSETTINGS(TRANSFER_ID) ON DELETE CASCADE;