Grant the ability to execute a user-defined function by granting the EXECUTE object-level privilege.
You must be the owner of the user-defined function, or have EXECUTE privilege with administrative rights on the function.
Ownership of a user-defined function belongs to the user who created it, and no privilege is required for that user to execute it.
You have created a function and you want other user to be able to use it.
The grantee can now execute the procedure.