A procedure is similar to a package in the way that it also allows you to define a sequence of codes. You can add multiple “commands” to a procedure and the command will be executed in sequence. A command contains the code that can be executed by database engine, the operating system, or by ODI itself. Unlike a package, a procedure is designed to be reused. You can parameterize a procedure by providing options.
A procedure can be added into a package in a similar way to adding an interface into a package. Like an interface, a procedure is referenced by a package, instead of making a copy. If you change the procedure, all package referencing it will be changed.
You can create procedure by including the Sunopsis tool, such as sending email to the administrator. It can parameterize the sending email tool so it can be reused.