A los parámetros char que pasas como constantes has de definirles el tipo y tamaño : char('1', 1), char('00000232', 12), al menos en V5R2.

Sí, parece enormemente estúpido tener que hacer esto, pero es lo que hay. Hasta IBM hace estupideces como ésta de vez en cuando.

Saludos.

Fernando Pérez 

Cerámica Saloni. Dpto. Auditoría y Organización



Carlos Augusto Correa García wrote:
Saludos amigos del foro, tengo una duda.
*
He creado una función externa de la sgte manera:*
CREATE FUNCTION MYLIB.FX_SCR_CALIFICACIONSBS (
   PTIPDOC CHAR(1) ,
   PDOCUME CHAR(12) )
   RETURNS DECIMAL(1, 0)     LANGUAGE RPGLE
   SPECIFIC AUCO.FX_SCR_CALIFICACIONSBS
   NOT DETERMINISTIC
   READS SQL DATA
   CALLED ON NULL INPUT
   DISALLOW PARALLEL
   EXTERNAL NAME 'MYLIB/R7401883'
   PARAMETER STYLE SQL ;

COMMENT ON SPECIFIC FUNCTION AUCO.FX_SCR_CALIFICACIONSBS
   IS 'Devuelve Calificación SBS' ;

*El programa RPG (Programa externo) es el sgte:*

H DATEDIT(*DMY)                                                   *---------------------------------------------------------------*
* APLICACION: Credit Scoring                                     * TITULO    : Devuelve Calificación SBS                          *---------------------------------------------------------------*
FFILESBS   IF   E           K DISK                                C     *ENTRY        PLIST                                         C                   PARM                    pTipdoc           1   C                   PARM                    pDocume          12   C                   PARM                    pCalSBS           1 0 C*---------------------------------------------------------------*
C     CLA001        KLIST                                         C                   KFLD                    pTipreg               C                   KFLD                    pTipdoc               C                   KFLD                    sDocume               C                   seton                                        LR
C* Hay más codigo ...........................................

*Pero a la hora de ejecutarlo*

SELECT FX_SCR_CALIFICACIONSBS ('1', '00000232')
FROM SYSIBM.SYSDUMMY1


*Me da error, Veamos*

> SELECT FX_SCR_CALIFICACIONSBS ('1', '00000232')   FROM SYSIBM.SYSDUMMY1

Estado de SQL: 42704
Código de proveedor: -204
Mensaje: [SQL0204] FX_SCR_CALIFICACIONSBS en *LIBL de tipo *N no encontrado. Causa . . . . . :   FX_SCR_CALIFICACIONSBS en *LIBL tipo *N no se ha encontrado. Si se trata de una sentencia ALTER TABLE y el tipo es *N, no se ha encontrado una restricción o partición. Si no se trata de una sentencia ALTER TABLE y el tipo es *N, no se ha encontrado una función, procedimiento o desencadenante. Si no se ha encontrado una función, FX_SCR_CALIFICACIONSBS es el programa de servicio que contiene la función. La función no se encontrará si el nombre externo y el nombre de uso no coinciden exactamente. Examine en las anotaciones de trabajo para ver si encuentra un mensaje que dé más detalles sobre el nombre de función que se está buscando y el nombre que no coincide. Recuperación  . :   Cambie el nombre y vuelva a intentar la petición. Si el objeto es un grupo de nodos, asegúrese de que el producto DB2 Multisystem está instalado en el sistema y cree un grupo de nodos con el mandato CL CRTNODGRP. Si no se ha encontrado la función externa, asegúrese de que las mayúsculas y minúsculas del EXTERNAL NAME en la sentencia CREATE FUNCTION coinciden exactamente con las mayúsculas y minúsculas del nombre exportado por el programa de servicio.

Se ha finalizado el proceso ya que la sentencia resaltada no se ha completado satisfactoriamente
-----------------------------------------------------------------------------------------------------

En resume
En otras funciones si me ha funcionado porco con solo un parámetro y con parametros numéricos.
Esta vez me está fallando pues la verdad no he visto mucho del tema

Denme alguna ide pues ya se me agotaron
Saludos

-------------------------------
Carlos Augusto Correa García
Area de Sistemas - Desarrollo
CMAC PIURA S.A.C.














begin:vcard
fn;quoted-printable:Fernando P=C3=A9rez
n;quoted-printable:P=C3=A9rez;Fernando
org;quoted-printable:;Auditor=C3=ADa y Organizaci=C3=B3n
email;internet:[EMAIL PROTECTED]
tel;work:Ext. 627
x-mozilla-html:TRUE
version:2.1
end:vcard

__________________________________________________
Forum.HELP400 es un servicio más de NEWS/400.
© Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________

Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400

Responder a