[NEWSboard IBMi Forum]

Thema: UDF V6R1

Hybrid View

  1. #1
    Registriert seit
    Aug 2006
    Beiträge
    2.077
    Danke, das hat schon mal funktioniert.

    Habe mir das Redbook runtergeladen https://www.redbooks.ibm.com/redbooks/pdfs/sg248326.pdf

    Muss jetzt mal schauen wo ich das Teil für V6 bekomme. Werde mich vermutlich nochmals melden ;-)

    GG 4250

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.254
    Wie Birgitta sagte, skalare Subselects sind grundsätzlich in Klapper ähm... Klammern zu setzen.

    Fetch first 1 rows only optimiert hier gar nichts, denn dies wirkt grundsätzlich nur auf das Ergebnis und nicht auf den Count oder einen Where.
    Je nach Index oder sonstigen Rahmenbedingungen kann ebenso ein Tablescan erfolgen.

    Der Count(*) ohne Where ist sowieso bereits SQL-Optimiert.

    Daher folgende Vereinfachung:

    CREATE FUNCTION rptrade/zaehler /*10.10.19 14:34*/
    ( DEBITOR dec(08) ) RETURNS
    CHAR(04) LANGUAGE SQL READS SQL DATA BEGIN
    return
    case when (select coalesce( count(*), 0) from dat020) = 0 then 'XXXX'
    else '0001'
    end;
    END;

    Der Coalesce ist erforderlich, da ein Subselect auch schon mal NULL zurückliefert wenn keine Daten vorhanden sind.

    Allerdings frage ich mich noch, wofür du den Eingangsparameter DEBITOR benötigst. Fehler der ggf. im Count?
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Jan 2012
    Beiträge
    1.120
    Klar, du hat recht. Bei count bringt fetch first row only nichts. War mein Denkfehler. Wir lösen die Problemstellung, zu wissen, ob bestimmte Einträge vorhanden sind, trotzdem mit fetch first row only, aber nicht mit count. Ich denke, dass es dann etwas bringt:
    Code:
    dcl-s vorhanden char(1) inz('N');
    exec sql select 'J' into :vorhanden from datei where ... fetch first row only;

Similar Threads

  1. SQL Satzaufbau V6R1
    By KingofKning in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 05-04-17, 10:36
  2. V6R1 strdbg
    By KingofKning in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 27-01-16, 09:59
  3. V6R1 Datensicherung
    By KingofKning in forum IBM i Hauptforum
    Antworten: 12
    Letzter Beitrag: 11-11-15, 10:40
  4. Umstieg V5R4 -> V6R1 die II
    By KingofKning in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 29-10-15, 08:32
  5. V6R1 Backlevel
    By KingofKning in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 16-09-15, 18:21

Berechtigungen

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