--funcao e trigger para atualizar coluna dm_financeiro-- CREATE FUNCTION atualiza_wireless_dm_financeiro (integer) RETURNS TRIGGER AS $$ DECLARE pessoa_cd_pessoa ALIAS FOR $1; BEGIN UPDATE wireless SET dm_financeiro = ( SELECT CASE WHEN COUNT(*) > 0 THEN 'Sim' ELSE 'Não' END FROM titulo WHERE cd_devedor = pessoa_cd_pessoa AND cd_fato = 18 AND dt_vencto < now() AND dt_pagto IS NULL ) WHERE cd_pessoa = pessoa_cd_pessoa; RETURN NEW; END $$ LANGUAGE plpgsql; CREATE TRIGGER wireless_atualiza_dm_financeiro AFTER INSERT OR UPDATE ON titulo FOR EACH ROW EXECUTE PROCEDURE atualiza_wireless_dm_financeiro (NEW.cd_pessoa);