Do you really need to pass the job number in as an argument?
Within the job, you can call SYS_CONTEXT( 'USERENV', 'BG_JOB_ID' )
to get the job_id
without needing to pass it in as a parameter (that will return NULL
if the procedure is not called in a job.