Release 10.1A: OpenEdge Development:
Progress 4GL Reference

> ## GET-SIGNATURE( ) method

> Returns the `signature` of the internal procedure or user-defined function whose name you supply.

> Specifically:

> - If you provide the name of an internal procedure, GET-SIGNATURE returns the type and mode of each parameter.

> - If you provide the name of a user-defined function, GET-SIGNATURE returns the return type, and the type and mode of each parameter.

> - If you provide the nil procedure name (""), GET-SIGNATURE returns the signature of the procedure whose handle you supply.

> - If you provide a name that does not match any of the internal procedures or user-defined functions in the procedure, GET-SIGNATURE returns the empty string ("").

> - If you provide a remote (proxy) procedure handle or the name of a Web service procedure, GET-SIGNATURE returns the empty string ("").

> - If you provide the name of a DLL entry point, GET-SIGNATURE returns the Progress equivalent of the C data type of each parameter of the entry point. For more information, see OpenEdge Development: Programming Interfaces .

> Note: GET-SIGNATURE does not return the signature of any internal procedure defined using the PROCEDURE statement’s PRIVATE option. Similarly, GET-SIGNATURE does not return the signature of any user-defined function defined using the FUNCTION statement’s PRIVATE option.

> Return type: CHARACTER

> Applies to: THIS-PROCEDURE system handle (and all procedure handles)

> Syntax
>     GET-SIGNATURE ( int-proc-name )

> ``int-proc-name``

> The name of an internal procedure or user-defined function.

> GET-SIGNATURE returns a string with the following format:

>     type , return-type ,
>       [ mode name p-type [ , mode name p-type ] ... ]

> ``type``

> The type of the internal procedure. Types include:

> - PROCEDURE — A Progress internal procedure.
> - FUNCTION — A Progress user-defined function whose definition resides in the procedure.
> - EXTERN — A Progress user-defined function whose definition resides in another procedure.
> - DLL-ENTRY — A DLL entry point.
> - MAIN — The main procedure.
> ``return-type``

> (User-defined functions only) The Progress data type that a user-defined function returns.

> `mode` `name` `p-type`

> A parameter description where `mode` is the mode of the parameter, `name` is the name of the parameter, and `p-type` is the type of parameter. The parameter type is either a data type (scalar or array) or, for a buffer parameter, the name of the table associated with the buffer.

> The modes are:

> - INPUT
> - OUTPUT
> - INPUT-OUTPUT
> - BUFFER
> - INPUT TABLE
> - OUTPUT TABLE
> - INPUT-OUTPUT TABLE

> The data types are:

> - CHARACTER
> - DATE
> - DATETIME
> - DATETIME-TZ
> - DECIMAL
> - INTEGER
> - LOGICAL
> - MEMPTR
> - RAW
> - RECID
> - ROWID
> - WIDGET-HANDLE

> When you define the parameter type as a determinate array with a constant extent value, the GET-SIGNATURE( ) method returns the constant extent value specified as part of the signature (for example, `EXTENT 100`). When you define the parameter type as a determinate array with a variable extent value, or as an indeterminate array, the GET-SIGNATURE( ) method returns only the extent keyword (that is, `EXTENT`, with no extent value).

Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095