CREATE GENERATOR GTBCONFI_ALOCACAO_MODELO;

CREATE TABLE TBCONFI_ALOCACAO_MODELO (
    ID         INTEGER NOT NULL,
    DESCRICAO  VARCHAR(50),
    STATUS     INTEGER
);

ALTER TABLE TBCONFI_ALOCACAO_MODELO ADD CONSTRAINT PK_TBCONFIGURACAO_ALOCACAO_MODE PRIMARY KEY (ID);


SET TERM ^ ;

CREATE OR ALTER TRIGGER TTBCONFI_ALOCACAO_MODELO_B01I FOR TBCONFI_ALOCACAO_MODELO
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.ID IS NULL) THEN
    NEW.ID = GEN_ID(GTBCONFI_ALOCACAO_MODELO,1);
END
^

SET TERM ; ^

ALTER TABLE TBCONFI_ALOCACAO_MODELO_ITENS
    ADD ORDEM INTEGER;

CREATE TABLE TBCONFI_ALOCACAO_MODELO_ITENS (
    ID INTEGER NOT NULL,
    CONFI_ALOCACAO_ID INTEGER,
    GP_ID INTEGER);

ALTER TABLE TBCONFI_ALOCACAO_MODELO_ITENS
ADD CONSTRAINT PK_TBCONFI_ALOCACAO_MODELO_ITEN
PRIMARY KEY (ID);

CREATE SEQUENCE GTBCONFI_ALOCACAO_MODELO_ITENS;

SET TERM ^ ;

CREATE TRIGGER TTBCONFI_ALOC_MOD_ITENS_B01I FOR TBCONFI_ALOCACAO_MODELO_ITENS
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.ID IS NULL) THEN
    NEW.ID = GEN_ID(GTBCONFI_ALOCACAO_MODELO_ITENS,1);
END
^

SET TERM ; ^

ALTER TABLE TBMODELO
    ADD CONF_AGRUPAMENTO_ID INTEGER;

ALTER TABLE TBCONFI_ALOCACAO_MODELO_ITENS
    ADD PRINCIPAL INTEGER;

ALTER TABLE TBAGRUPAMENTO_PEDIDO
    ADD VINCULO_AGRUPAMENTO INTEGER DEFAULT 0;

CREATE INDEX ITBAGRUPAMENTO_PEDIDO_12
ON TBAGRUPAMENTO_PEDIDO (VINCULO_AGRUPAMENTO);

--ALTER TABLE TBESTEIRA ADD TIPO_AGRUPAMENTO VARCHAR(10);

ALTER TABLE TBCONFI_ALOCACAO_MODELO_ITENS ALTER COLUMN ORDEM
SET DEFAULT 0;

CREATE OR ALTER VIEW TBGP(
    ID,
    DESCRICAO,
    FAMILIA_ID,
    PERFIL,
    STATUS,
    REMESSAS,
    DOM,
    SEG,
    TER,
    QUA,
    QUI,
    SEX,
    SAB,
    TEMPO,
    CODIGO1,
    H_SEG,
    H_TER,
    H_QUA,
    H_QUI,
    H_SEX,
    H_SAB,
    H_DOM,
    SUPERVISOR1,
    SUPERVISOR2,
    REG_ESTOQUE,
    REG_QUANTIDADE,
    FLAG,
    MONITOR,
    PERFIL_PED,
    MENSAGEM,
    CCUSTO,
    DIAS,
    VER_PECA_DISPONIVEL,
    VER_PARES,
    HABILITA_QUEBRA_TALAO_SKU,
    REQUISITA_SOBRA,
    REMESSAS_ABERTO,
    TIPO_META_PRODUCAO,
    TIPO_GP,
    SUB_TIPO_GP,
    TIPO_AGRUPAMENTO)
AS
SELECT
    CODIGO,
    DESCRICAO,
    FAMILIA_CODIGO,
    PERFIL,
    STATUS,
    TALOES,
    DOM,
    SEG,
    TER,
    QUA,
    QUI,
    SEX,
    SAB,
    TEMPO,
    CODIGO1,
    H_SEG,
    H_TER,
    H_QUA,
    H_QUI,
    H_SEX,
    H_SAB,
    H_DOM,
    SUPERVISOR1,
    SUPERVISOR2,
    REG_ESTOQUE,
    REG_QUANTIDADE,
    FLAG,
    MONITOR,
    PERFIL_PED,
    MENSAGEM,
    CCUSTO,
    TALOES,
    VER_PECA_DISPONIVEL,
    VER_PARES,
    HABILITA_QUEBRA_TALAO_SKU,
    REQUISITA_SOBRA,
    TALOES,
    TIPO_META_PRODUCAO,
    TIPO_GP,
    SUB_TIPO_GP,
    TIPO_AGRUPAMENTO
FROM TBESTEIRA
;

ALTER TABLE TBAGRUPAMENTO_PEDIDO
    ADD PRODUTO_ORIGEM INTEGER;

CREATE INDEX ITBAGRUPAMENTO_PEDIDO_13
ON TBAGRUPAMENTO_PEDIDO (PRODUTO_ORIGEM);

CREATE INDEX ITBMODELO_21
ON TBMODELO (grupo_id);

ALTER TABLE TBAGRUPAMENTO_CARGA_SKU_UP
    ADD TIPO_AGP VARCHAR(10);

CREATE TABLE TBMODELO_CONJUNTO_GRADE (
    ID INTEGER NOT NULL,
    MODELO_PAI_ID INTEGER,
    MODELO_FILHO_ID INTEGER,
    TAMANHO_PAI INTEGER,
    TAMANHO_FILHO INTEGER);

ALTER TABLE TBMODELO_CONJUNTO_GRADE
ADD CONSTRAINT PK_TBMODELO_CONJUNTO_GRADE
PRIMARY KEY (ID);

CREATE SEQUENCE GTBMODELO_CONJUNTO_GRADE;

SET TERM ^ ;

create trigger ttbmodelo_conjunto_GRADE_b01i for tbmodelo_conjunto_GRADE
active before insert position 0
as
begin
  if (new.id is null) then
    new.id = gen_id(gtbmodelo_conjunto_GRADE,1);
end
^

SET TERM ; ^

