Subject Re: [firebird-support] UDF definition metadata on FB 2.0.3
Author Tom Munro Glass
On Wed, 17 Oct 2007, Helen Borrie wrote:
> At 06:31 AM 17/10/2007, you wrote:
> >I have defined the ib_udf.dll external functions using ib_udf2.sql but if
> > I look at the UDF metadata the details that have changed since ib_udf.sql
> > do not show up. To be precise, the arguments defined with NULL (e.g.
> > ascii_char) do not show the NULL, and the metadata for "LOWER" does not
> > show it as a quoted name.
> >
> >Is this determined by the client software I am using (IBOConsole) or
> >is this a
> >problem with FB?
>
> Have you looked at them with isql SHOW FUNCTIONS ? and/or SHOW TABLE
> RDB$FUNCTIONS and SHOW TABLE RDB$FUNCTION_ARGUMENTS ?
>
> And did you drop the old declarations before applying the new?
>
> ./heLen
>

Here is the output from ISQL for a couple of functions:

SQL> show functions "LOWER";

Function LOWER:
Function library is ib_udf
Entry point is IB_UDF_lower
Returns FREE_IT CSTRING(255) CHARACTER SET NONE
Argument 1: NULL CSTRING(255) CHARACTER SET NONE
SQL> show functions ASCII_CHAR;

Function ASCII_CHAR:
Function library is ib_udf
Entry point is IB_UDF_ascii_char
Returns FREE_IT CSTRING(1) CHARACTER SET NONE
Argument 1: NULL INTEGER

Note that LOWER is not shown with quotes. ASCII_CHAR does seem to be correct,
in that Argument 1 includes the NULL.

Yes, I did drop the old declarations before applying the new ones.

Regards
Tom