Informix Error -7546: Unknown routine type <text>, routine type must be one of 'f' </text> or 'p'.
Cause and resolution
Unknown routine type <text>, routine type must be one of 'f' </text> or 'p'.
You used an invalid routine type when using mi_create_signature() to create a function or procedure.
Specify either 'f' or 'p' as the routine type.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-7546 fires when mi_create_signature() is called with an invalid routine type — per the
official guidance.
- A routine type other than
'f'(function) or'p'(procedure) passed tomi_create_signature(), per the official guidance — the direct, only cause.
Solutions / Resolution
- Specify either
'f'or'p'as the routine type, per the official guidance.
Examples
An invalid routine type
mi_create_signature(conn, "compute_total", 'x', ...);
/* -7546: 'x' is not a valid routine type */
Corrected
mi_create_signature(conn, "compute_total", 'f', ...);
Diagnostic Checks
- Check the routine-type character passed to
mi_create_signature(), and confirm it's'f'or'p'.
Related Errors / Related Topics
- -7531 — "Invalid user defined routine type: must be function or procedure." A related
routine-type restriction, at UDR-lookup time rather than at
mi_create_signature()call time.
mi_create_signature() was called with a routine type other than 'f'/'p' — correct it.