Thanks pamu for your help
Whatever i want, if there is a bad parameter in the input file, the function f1 should not process the line with a bad parameter.
I put your suggestion in red but i have this return code.

You call them directly, outside [ ], like you would an external program.

Code:

if g1 $1 $2 $3
then
...
else
...
fi

And your function should use return to give an integer value that if can use in this manner. It's like exit but only quits a function or sourced script instead of the entire program. Zero means success, nonzero means failure, just like the exit status of an external utility. Your EC variable trick works but such indirectness isn't necessary.

When i launch the script, there are malfunctions.
1) Each line with right or wrong paramaters are printed twice.
I would like the line that has an error is not edited. It should only return the error code.
And others to be edited once.

Do not PM people to bring them back faster. PMing people for technical support is against the rules.

That program is so big and messy I can't tell what you're trying to do, let alone what's wrong with it. Suspect there's a far simpler way to do what you want, whatever it is. Please explain its purpose.

Here f1 is a simple function to test the function g1.
g1 is a function which tests the parameters format of an input file.
Theses parameters are YEAR BEGIN_hour END_hour.
Month must be between 1 and 12
Day must be between 1 and 31
Hour must be between 00 and 23 (2 digits)
Minutes must be between 00 and 59 (2 digits)

case 0)
If the script is launched without argument, an inputfile named list_file will be created with comments.
The main engine ie case 1)
If the inputfile exists, the script tests if there are parameters.
Then it parses each parameters to check the validity of the format

When i launch the script, there are malfunctions.
1) Each line with right or wrong parameters are printed twice.
I would like the line that has an error is not printed. It should only return the error code.
And others to be edited once.