If you get an error message you don;t understand, google it:
ORA-06502 : PL/SQL: Numeric or Value error : Character string buffer too small - Google Search[
^]
The second link explains what causes the problem, and it's pretty obvious:
ORA-06502: PL/SQL: numeric or value error: character string buffer too small – Yawin Tutor[
^]
The string you are trying to load into the output parameter is too long to fit in the number of characters you have defined it to be. So your variable is declared as VARCHAR2[50] for example, and you are trying to put 51 characters in it.
We can't fix that for you: it's a function of code we can't see, combined with data we have no access to, and you probably need both to begin working out a suitable length. So start by copying your procedure and return a length instead of the string itself. That should help you track down the beginnings of the problem.