-- -- person__new/10 -- create or replace function person__new( integer, character varying, timestamp with time zone, integer, character varying, character varying, character varying, character varying, character varying, integer ) returns int4 as $$ declare new__person_id alias for $1; -- default null new__object_type alias for $2; -- default 'person' new__creation_date alias for $3; -- default now() new__creation_user alias for $4; -- default null new__creation_ip alias for $5; -- default null new__email alias for $6; new__url alias for $7; -- default null new__first_names alias for $8; new__last_name alias for $9; new__context_id alias for $10; -- default null v_person_id persons.person_id%TYPE; begin v_person_id := party__new(new__person_id, new__object_type, new__creation_date, new__creation_user, new__creation_ip, new__email, new__url, new__context_id); update acs_objects set title = new__first_names || ' ' || new__last_name where object_id = v_person_id; insert into persons (person_id, first_names, last_name) values (v_person_id, new__first_names, new__last_name); return v_person_id; end;$$ language plpgsql;