

CREATE GENERATOR GTBDRE_GERENCIAL_APRE;

CREATE TABLE TBDRE_GERENCIAL_APRE (
    ID           INTEGER NOT NULL,
    DESCRICAO    VARCHAR(50),
    NIVEL        INTEGER,
    VINCULO_ID   INTEGER,
    FORMULA1     BLOB SUB_TYPE 0 SEGMENT SIZE 80,
    OPERACAO     VARCHAR(1),
    FORMULA2     BLOB SUB_TYPE 0 SEGMENT SIZE 80,
    ORDEM        INTEGER,
    STATUS       INTEGER,
    COR          VARCHAR(20),
    COMERCIAL    INTEGER DEFAULT 1,
    SERVICOS     INTEGER DEFAULT 1,
    CONSOLIDADO  INTEGER DEFAULT 1
);


ALTER TABLE TBDRE_GERENCIAL_APRE ADD CONSTRAINT PK_TBDRE_GERENCIAL_APRE PRIMARY KEY (ID);

CREATE OR ALTER TRIGGER TTBDRE_GERENCIAL_APRE_TOT_B01I FOR TBDRE_GERENCIAL_APRE
ACTIVE BEFORE INSERT POSITION 0
as
begin
  if (new.id is null) then
    new.id = gen_id(GTBDRE_GERENCIAL_APRE,1);
end;

COMMENT ON TABLE TBDRE_GERENCIAL_APRE IS 'tabela de apresentacao da dre';

COMMENT ON COLUMN TBDRE_GERENCIAL_APRE.NIVEL IS  '1-grupo, 2-subgrupo';

COMMENT ON COLUMN TBDRE_GERENCIAL_APRE.VINCULO_ID IS 'id do grupo ou subgrupo';

COMMENT ON COLUMN TBDRE_GERENCIAL_APRE.FORMULA1 IS 'formula que contem os grupos ou subgrupos';

COMMENT ON COLUMN TBDRE_GERENCIAL_APRE.OPERACAO IS 'se vai somar ou subtrair (+, -, * ou /)';

COMMENT ON COLUMN TBDRE_GERENCIAL_APRE.FORMULA2 IS 'sql que retorna um numero, geralmente usado para consultar impostos';