The always free ora* CODEDOC is a framework for creating technical documentation for PL/SQL packages. It can produce output in a format similar to Oracle’s APEX API and Database PL/SQL Packages references.
The description text of each part of a package can be modified by comments in the package specification (syntax details can be found here) or directly inside the APEX application ocd-apex.
The API package provides access to all relevant information in JSON format. Simply use the informationfunction:
select ocd.api.information('YOUR_PACKAGE_NAME') from dual;With the JSON output you can build whatever you want. Look before getting started at the existing ora* CODEDOC publishers here to see what has already been implemented by the community.
When you get something like this...
{"name":"YOUR_PACKAGE_NAME","status":"NO_DATA_FOUND"}...simply analyze the package explicitly using:
begin
ocd.api.inspect(
i_package_code => dbms_metadata.get_ddl('PACKAGE_SPEC', 'YOUR_PACKAGE_NAME'),
i_package_name => 'YOUR_PACKAGE_NAME'
);
end;
You can also recompile the package in your IDE or via command.
alter package YOUR_PACKAGE_NAME compile;
There are several things to know about the syntax of code documentation. Details can be found here.
OCD supports many different publishers. From single standalone HTML files to a complete APEX application, nearly everything is possible. Read here about existing publishers.
To install ora* CODEDOC execute the script admin_install.sql. This will create a new user OCD, grant all required privileges to that user and grant the API package to public. You should change the pre-defined environment variables ocd_password and ocd_tablespace according to your environment.
The OCD user receives the following privileges:
- create session
- create table
- create sequence
- create view,
- create procedure
- create type
- create trigger
- administer database trigger
ora* CODEDOC will run on any Oracle Database version 18c or above.
If you have an interesting feature in mind, that you would like to see in ora* CODEDOC please create a new issue.
ora* CODEDOC is released under the MIT license.