[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Aug 2001
    Beiträge
    2.934
    Hallo Carsten,

    Der Aufbau des Routine-Body ist für Stored Procedures und User Defined Functions identisch. Der einzige Unterschied ist, dass bei Funktionen der Rückgabe-Wert mit RETURN ausgegeben werden muss. Wenn Du also bei Stored Procedures Cursor, Schleifen und Fetches brauchst, benötigst Du die ebenso bei User Defined Functions

    Das folgende Beispiel sollte Dein gewünschtes Ergebnis ermitteln und ausgeben:
    PHP-Code:
    CREATE FUNCTION MySchema/MyFkt (
        
    PARARTNR CHAR(5) ) 
        
    RETURNS VARCHAR(1024)
        
    LANGUAGE SQL 
        SPECIFIC MySchema
    /MyFkt
        NOT DETERMINISTIC 
        READS SQL DATA 
        CALLED ON NULL INPUT
        NO EXTERNAL ACTION 
        DISALLOW PARALLEL 
        FENCED 
    Begin
       
    Declare ReturnVal  Varchar(1024) Default ' ';

       FOR 
    CsrC1 AS C1 CURSOR 
           
    FOR SELECT LiefNr 
                  FROM table1
                  Where ArtNr 
    ParArtNr 
               
    DO Set ReturnVal ReturnVal concat ' ' concat CsrC1.LiefNr
       
    END FOR; 

       Return 
    LTrim(ReturnVal);
    End
    Übrigens die FOR-Schleife kombiniert Cursor-Definition, Schleife und Fetch.

    Ansonsten würde ich Dir die beiden folgenden Redbooks empfehlen:
    Stored Procedures, Triggers and User Defined Functions on DB2 Universal Database for iSeries
    Modernizing IBM eServer iSeries Application Data Access - A Roadmap Cornerstone


    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  2. #2
    Registriert seit
    Dec 2003
    Beiträge
    8
    Hallo zusammen,

    super vielen Dank.
    Habe die Function erzeugt und angepasst.
    Das funktioniert.

    Vielen Dank auch für die Buchtipps. Sowas ist immer wertvoll.

    Grüße

    Carsten

Similar Threads

  1. User defined function
    By KM in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 04-08-06, 11:34
  2. SQL UDF Function ausführung mit Fehler
    By jakarto in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 24-07-06, 14:41
  3. problem mit eigener sql function
    By Stefan_Sk in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 26-05-06, 17:37
  4. CREATE SQL FUNCTION
    By Xanas in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 23-02-06, 11:29
  5. UDF / Create Function
    By Schorsch in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 21-10-05, 09:40

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •