--
-- workflow__add_trans_role_assign_map/3
--
create or replace function workflow__add_trans_role_assign_map(
  character varying,
  character varying,
  character varying
) returns int4 as $$

declare
  p_workflow_key		alias for $1;
  p_transition_key		alias for $2;
  p_assign_role_key		alias for $3;
  v_num_rows			integer;
begin
        select count(*)
          into v_num_rows
          from wf_transition_role_assign_map
	 where workflow_key = p_workflow_key
           and transition_key = p_transition_key
           and assign_role_key = p_assign_role_key;

        if v_num_rows = 0 then
	    insert into wf_transition_role_assign_map (
		workflow_key,
		transition_key,
		assign_role_key
	    ) values (
		p_workflow_key,
		p_transition_key,
		p_assign_role_key
	    );
        end if;

	return 0;
end;$$ language plpgsql;