In program block , using task which declared outside

In reply to dave_59:

In reply to peter:
Use a
module
instead of a
program
.

Yes, it works regardless of module/program/interface.
it is the syntax problem
Thanks for your help.
Would you explain that a task/function call will search up the hierarchy?
Do you mean that it will find task in the top module , if find nothing , i will search it search down from the top?