I have found the following guidelines useful in working with wrapped code:
Create batch files so that you can easily, quickly, and uniformly wrap one or more files. In Windows NT, I create bat files that contain lines like this in my source code directories:
Of course, you can also create parameterized scripts and pass in the names of the files you want to wrap.
You can only wrap package specifications and bodies, object type specifications and bodies, and standalone functions and procedures. You can run the wrapped binary against any other kind of SQL or PL/SQL statement, but those files will not be changed.
You can tell that a program is wrapped by examining the program header. It will contain the keyword WRAPPED, as in:
PACKAGE BODY package_name WRAPPED
Even if you don’t notice the keyword WRAPPED on the first line, you will immediately know that you are looking at wrapped code because the text in USER_SOURCE will look like this:
LINE TEXT -------- ---- 45 abcd 46 95a425ff 47 a2 48 7 PACKAGE:
and no matter how bad your coding style is, it surely isn’t that bad!
Wrapped code is much larger than the original source. I have found in my experience that a 57 KB readable package body turns into a 153 KB wrapped package body, while an 86 KB readable package body turns into a 357 KB wrapped package body. These increases in file size do result in increased requirements for storing source code in the database. The size of compiled code stays the same, although the time it takes to compile may increase.