CREATE OR ALTER TRIGGER TTBEAN_B0U_01 FOR TBEAN
ACTIVE BEFORE UPDATE POSITION 0
AS
Begin

        if (OLD.CODIGO <> NEW.CODIGO or OLD.PREFIXO <> NEW.PREFIXO) Then
            Begin

             NEW.CODIGO = fn_lpad(NEW.CODIGO,4,'0');

            if (Old.CNP = '1') then
                Begin
                Exception "..." 'CODIGO EAN/GTIN NAO PODE SER ALTERADO POR JA ESTAR REGISTRADO NO CNP (CADASTRO NACIONADO DE PRODUTOS)';
                End
             
            if (Old.RFID = '1') then
                Begin
                Exception "..." 'CODIGO EAN JA SINCRONIZADO NO RFID, OPERACAO CANCELADA.';
                End


            --Update TbProduto Set PAFECF = ''
            --WHERE COR_CODIGO = NEW.COR_ID
            --  AND MODELO_CODIGO = NEW.MODELO_ID
            --  AND STATUS = '1';

                if(char_length(NEW.PREFIXO||NEW.CODIGO) = 12)then
                begin
                    NEW.EAN = NEW.PREFIXO||NEW.CODIGO||FN_DIGITOEAN(NEW.PREFIXO||NEW.CODIGO);
                end

            End

End;