Diante da aula me surgiu uma dúvida. Quando o professor criou a procedure format_cnpj ele utilizou o comando p_cnpj IN OUT cliente.cnpj%type. 
Até ai tudo bem, porém ao tentar fazer a mesma coisa na procedure incluir_cliente ele não permite e gera um erro. Alguém consegue me explicar o porquê disso ocorrer? Creio que seja devido a não retornar esse valor, mas não ficou claro para mim. :(
create or replace PROCEDURE incluir_cliente(
    p_id in cliente.id%type,
    p_razao_social IN cliente.razao_social%type,
    p_CNPJ IN OUT  cliente.CNPJ%type,
    p_segmercado_id IN cliente.segmercado_id%type,
    p_faturamento_previsto IN cliente.faturamento_previsto%type
)
IS
    v_categoria cliente.categoria%type;
BEGIN
    v_categoria := categoria_cliente(p_faturamento_previsto);
    format_cnpj(p_cnpj);
    INSERT INTO cliente values(
        p_id,
        p_razao_social ,
        p_CNPJ,
        p_segmercado_id ,
        SYSDATE,
        p_faturamento_previsto,
        v_categoria
    );
    COMMIT;
END;Obrigado desde já :)
 
            