oracle8.1.6 begin :1 := portal.new ( name => :name, layout_id => :layout_id, template_id => :template_id, portal_template_p => :portal_template_p, context_id => :context_id ); acs_permission.grant_permission ( object_id => :1, grantee_id => :user_id, privilege => 'portal_read_portal' ); acs_permission.grant_permission ( object_id => :1, grantee_id => :user_id, privilege => 'portal_edit_portal' ); if :portal_template_p = 't' then acs_permission.grant_permission ( object_id => :1, grantee_id => :user_id, privilege => 'portal_admin_portal' ); end if; end; begin portal.delete (portal_id => :portal_id); end; update portal_element_map set region = :region, sort_key = (select nvl((select max(sort_key) + 1 from portal_element_map where portal_id = :portal_id and region = :region), 1) from dual) where element_id = :element_id insert into portal_element_map (element_id, name, pretty_name, portal_id, datasource_id, region, sort_key) values (:new_element_id, :ds_name, :ds_name, :portal_id, :ds_id, :region, nvl((select max(sort_key) + 1 from portal_element_map where region = :region), 1)) update portal_element_map set region = :target_region, sort_key = (select nvl((select max(sort_key) + 1 from portal_element_map where portal_id = :portal_id and region = :target_region), 1) from dual) where element_id = :element_id