如何编辑包内的函数(Oracle)

时间:2015-11-17 18:38:52

标签: oracle plsql plsqldeveloper

我有一个oracle包。里面有一些程序和功能。我需要编辑一个过程和一个函数,但是我没有为函数或包内部编辑选项。我能怎么做?下面是我的完整代码:

CREATE OR REPLACE PACKAGE TS_ODO.ODO_AUT_RCS_DIRECIONAMENTO
is
    -- Purpose : Realizar pesquisa de direcionamento
    --
    function p_versao                                                           return varchar2;
    --
    type rec_direcionamento   is record  ( COD_PRESTADOR        VARCHAR2(40)
                                          ,COD_PRESTADOR_TS     NUMBER(15)
                                          ,NOM_ORIENTADOR       VARCHAR2(150)
                                          ,NOME_PRESTADOR       VARCHAR2(60)
                                          ,IND_VINCULACAO       VARCHAR2(2)
                                          ,COD_MUNICIPIO        NUMBER(6)
                                          ,SEQ_ENDERECO         NUMBER(3)
                                          ,END_PRESTADOR        VARCHAR2(100)
                                          ,NUM_ENDERECO         VARCHAR2(30)
                                          ,TXT_COMPLEMENTO      VARCHAR2(100)
                                          ,TXT_HORARIOS         VARCHAR2(4000)
                                          ,NOME_BAIRRO          VARCHAR2(72)
                                          ,NOME_CIDADE          VARCHAR2(72)
                                          ,NUM_DDD_TELEFONE_1   VARCHAR2(4)
                                          ,NUM_DDD_TELEFONE_2   VARCHAR2(4)
                                          ,NUM_DDD_TELEFONE_3   VARCHAR2(4)
                                          ,NUM_DDD_TELEFONE_4   VARCHAR2(4)
                                          ,NUM_DDD_TELEFONE_5   VARCHAR2(4)
                                          ,NUM_TELEFONE_1       VARCHAR2(15)
                                          ,NUM_TELEFONE_2       VARCHAR2(15)
                                          ,NUM_TELEFONE_3       VARCHAR2(15)
                                          ,NUM_TELEFONE_4       VARCHAR2(15)
                                          ,NUM_TELEFONE_5       VARCHAR2(15)
                                          ,SGL_UF               VARCHAR2(2)
                                          ,COD_REGIAO_ODO       NUMBER(5)
                                          ,NOM_REGIAO_ODO       VARCHAR2(100)
                                          ,COD_SUBREGIAO_ODO    NUMBER(5)
                                          ,NOM_SUBREGIAO_ODO    VARCHAR2(100)
                                          ,PONTUACAO_ORIENTADOR NUMBER
                                          ,QTD_ESTACIONAMENTO   NUMBER
                                          ,QTD_ACESSIBILIDADE   NUMBER
                                          ,NOME_ESPECIALIDADE   VARCHAR2(4000)
                                          --CL537383#02 - INICIO
                                          ,CODIGO_ESPECIALIDADE VARCHAR2(4000)
                                          --CL537383#02 - FIM
                                          ,IND_ESPECIALISTA     VARCHAR2(4000)
                                          ,ORIGEM               VARCHAR2(9)
                                          );
    --
    type tbl_direcionamento    is table of rec_direcionamento;
    --
    type rec_item              is record ( cod_item                             varchar2(10)
                                         , desc_item                            varchar2(150)
                                         , ind_tipo                             varchar2(1)
                                         , ind_cobertura                        varchar2(1)
                                         , ind_carencia                         varchar2(1)
                                         , ind_carencia_pre                     varchar2(1)
                                         , cod_retorno                          number
                                         , msg_retorno                          varchar2(4000)
                                         ) ;
    type tbl_item              is table of rec_item;
    --
    type rec_carencia          is record (item_medico          varchar2(8)
                                         ,nome_item            varchar2(260)
                                         ,cobertura            varchar2(3)
                                         ,qtd_dias_carencia    number(3)
                                         ,data_base_carencia   date
                                         ,data_fim_carencia    date);
    --
    type tbl_carencia          is table of rec_carencia;
    --
    procedure get_xml_item              ( p_xml_out                     out clob
                                        , p_num_associado               in varchar2
                                        , p_cod_plano                   in varchar2
                                        , p_cod_item                    in varchar2
                                        );
    --
    procedure get_data                  ( p_data                        out varchar2
                                        , p_cod_formato                 in  varchar2 default 'dd/mm/yyyy'
                                        );
    --
    procedure get_controle_sistema      ( p_val_parametro               out varchar
                                        , p_cod_parametro               in  varchar
                                        , p_val_default                 in  varchar2        default ''
                                        );
    --
    procedure get_obs_prestador         ( p_txt_obs                     out clob
                                        , p_cod_prestador_ts            in  pls_integer
                                        );
    --
    procedure get_especialidade_elegivel( p_cod_retorno                 out pls_integer
                                        , p_xml_filtro                  in  clob
                                        );
    --
    procedure get_procedimento_elegivel ( p_cod_retorno                 out pls_integer
                                        , p_xml_filtro                  in  clob
                                        );
    --
    procedure get_xml_tabela            ( p_xml_out                     out clob
                                        , p_nome_tabela                 in varchar
                                        , p_where                       in varchar2 default null
                                        , p_order                       in varchar  default  null
                                        , p_nome_cabecalho              in varchar  default  null --Se não informado usar o nome da tabela
                                        );
    --
    function get_cursor                 ( p_nome_tabela                 in varchar              , p_campo_value            in varchar                  , p_campo_desc            in varchar                  , p_order                 in varchar                  , p_where   in varchar   default null   , p_campo_aux  in varchar   default null ) return sys_refcursor;
    function get_unidade_usuario        ( p_cod_usuario                 in varchar2             , p_cod_filial             in pls_integer )            return sys_refcursor;
    function get_operadora_usuario      ( p_cod_usuario                 in varchar2 )           return sys_refcursor;
    function get_filial_usuario         ( p_cod_usuario                 in varchar2 )           return sys_refcursor;
    function get_rede_prestador         ( p_cod_prestador_ts            in pls_integer )        return sys_refcursor;
    --
    function get_tbl_direcionamento     ( p_xml_filtro                  in clob
                                        , p_oldnew                      in varchar2 default 'NEW'
                                        )                                                       return tbl_direcionamento
    pipelined
    parallel_enable;
    --
    function get_rs_direcionamento      ( p_xml_filtro                  in clob )               return sys_refcursor;
    function get_rs_especialidades_hab  ( p_xml_filtro                  in clob )               return sys_refcursor;
    function get_rs_prestador_substituto( p_xml_filtro                  in clob )               return sys_refcursor;
    function get_rs_sub_regiao          ( p_cod_regiao_odo              in pls_integer          , p_nom_subregiao_odo      in varchar2 )               return sys_refcursor;
    --
    function get_dados_associado        ( p_xml_associado in clob , p_ctr_logs in varchar2 default 'N' ) return SYS_REFCURSOR;
    --
    function get_carencia               ( p_num_associado in varchar2 ) return tbl_carencia pipelined;
    --
end;

我需要编辑此功能:function get_rs_direcionamento。使用右键打开包内的上下文菜单,没有选项:编辑或查看等。仅描述,测试,选择上下文菜单中的选项,但这些选项都不会解决。

1 个答案:

答案 0 :(得分:1)

请参阅文档ALTER PACKAGE

  

由于包中的所有对象都存储为一个单元,因此ALTER PACKAGE语句将所有包对象重新编译在一起。你不能   使用ALTER PROCEDURE语句或ALTER FUNCTION语句   单独重新编译作为a的一部分的过程或函数   封装