Code:
PLS-00201: identifier 'string' must be declared 

Cause: 
You tried to reference either an undeclared variable, exception, procedure, or other 
item, or an item to which no privilege was granted or an item to which privilege was granted 
only through a role.
 
Action: 
1) Check your spelling and declaration of the referenced name. 
2) Verify that the declaration for the referenced item is placed correctly in the block structure. 
3) If the referenced item is indeed declared but you don't have privileges to refer to that item, 
for security reasons, you will be notified only that the item is not declared. 
4) If the referenced item is indeed declared and you believe that you have privileges to refer 
to that item, check the privileges; if the privileges were granted only via a role, then this is 
expected and documented behavior. Stored objects (packages, procedures, functions, triggers, 
views) run in the security domain of the object owner with no roles enabled except PUBLIC. 
Again, you will be notified only that the item was not declared.