CREATE OR ALTER trigger ttbempresa_grupo_contas_b02i for tbempresa_grupo_contas
active before insert position 1
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
DECLARE VARIABLE DESC_EMPRESA VARCHAR(100);
DECLARE VARIABLE TIPO CHAR(1);
BEGIN

    HISTORICO = '';
    SELECT TRIM(W.NOMEFANTASIA) FROM TBEMPRESA W WHERE W.CODIGO = NEW.EMPRESA_ID INTO DESC_EMPRESA;
    SELECT TRIM(T.TIPO) FROM TBEMPRESA_GRUPO T WHERE T.ID = NEW.EMPRESA_GRUPO_ID INTO TIPO;

    IF(TIPO = 'C') THEN
    BEGIN
        HISTORICO = HISTORICO||' CLIENTE INCLUIDO: '||NEW.EMPRESA_ID||' - '||DESC_EMPRESA;
    END

    IF(TIPO = 'F') THEN
    BEGIN
        HISTORICO = HISTORICO||' FORNECEDOR INCLUIDO: '||NEW.EMPRESA_ID||' - '||DESC_EMPRESA;
    END

    IF (HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBEMPRESA_GRUPO',NEW.EMPRESA_GRUPO_ID,HISTORICO);
    END
END;


CREATE OR ALTER trigger ttbempresa_grupo_contas_b01d for tbempresa_grupo_contas
active before delete position 0
AS
DECLARE VARIABLE HISTORICO VARCHAR(500);
DECLARE VARIABLE DESC_EMPRESA VARCHAR(100);
DECLARE VARIABLE TIPO CHAR(1);
BEGIN

    HISTORICO = '';
    SELECT TRIM(W.NOMEFANTASIA) FROM TBEMPRESA W WHERE W.CODIGO = OLD.EMPRESA_ID INTO DESC_EMPRESA;
    SELECT TRIM(T.TIPO) FROM TBEMPRESA_GRUPO T WHERE T.ID = OLD.EMPRESA_GRUPO_ID INTO TIPO;

    IF(TIPO = 'C') THEN
    BEGIN
        HISTORICO = HISTORICO||' CLIENTE EXCLUIDO: '||OLD.EMPRESA_ID||' - '||DESC_EMPRESA;
    END

    IF(TIPO = 'F') THEN
    BEGIN
        HISTORICO = HISTORICO||' FORNECEDOR EXCLUIDO: '||OLD.EMPRESA_ID||' - '||DESC_EMPRESA;
    END

    IF (HISTORICO <> '') THEN
    BEGIN
        EXECUTE PROCEDURE SPI_HISTORICO('TBEMPRESA_GRUPO',OLD.EMPRESA_GRUPO_ID,HISTORICO);
    END
END
