First of all - the NULL indicators

- nMag
- nArt
- nCau

should not be "const" - I don't think that this is the reason for the error, but it's not right.

Also the parameter style shouldn't be GENERAL but DB2SQL - AFAIK a table function cannot be defined correctly with parameter style general. That could be the problem.

HTH
Daniel


Am 06.04.2026 um 18:50 schrieb gio.cot via RPG400-L <rpg400-l@xxxxxxxxxxxxxxxxxx>:

Hi all

I'm plyaing with UDFx



I have registered ths UDF



CREATE OR REPLACE FUNCTION mylib.ZGIACART_Z (

CODART CHAR(17) ,

DATARIF decimal(8, 0)

)

RETURNS TABLE (

mag char ( 2),

art char ( 17),

cau decimal ( 3 , 0),

GIACENZA DECIMAL( 15 , 3)

)

LANGUAGE RPGLE

PARAMETER STYLE general

-- SPECIFIC GIACENZART

NOT DETERMINISTIC

-- MODIFIES SQL DATA

no sql

DISALLOW PARALLEL

EXTERNAL NAME 'mylib/ZGIACART';





This the SQLRPGLE input :



**FREE

ctl-opt dftactgrp(*no) option(*nodebugio) ACTGRP(*NEW) ;



// ctl-opt DFTACTGRP(*NO) ACTGRP(*NEW);



dcl-pi *n;

pCodArt varchar(17) const;

pDataRif packed(8: 0) const ;

// Output fields

oMag char(2);

oArt char(17);

oCau packed( 3 : 0 );

oGiacenza packed(15:3);

// Null indicators

nCodArt ind const;

nDataRif ind const;

nMag ind const;

nArt ind const;

nCau ind const;

nGiacenza ind;

// SQL parms

xsqlState char(5);

funcName varchar(517) const;

specName varchar(128) const;

msgText varchar(1000);

callType int(10) const;

end-pi;





when i try to invoke the UDF via Sql



select * from table(mylib.ZGIACART_Z('020146 ' , 20261231 )) as
t;



i receive Message: SQL: 42884

[SQL0440] The routine ZGIACART in mylib was not found with the specified
parameters. Cause. . . . . : A function or procedure with the specified name
and compatible arguments was not found. This could be due to a permission
error. Correction . . . : Specify the correct number and type of parameters
in the CALL statement, CREATE OR REPLACE statement, or function invocation.
Retry the request.



Where am I wrong ?



Thanks in advance













--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related questions.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2026 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.