[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Feb 2001
    Beiträge
    20.808
    Und wenn eben UCS2 dann "65535C" oder die Free-Alternative.
    Und was hat die Übergabe mit dem Returnwert zu tun?
    Die Übergabe als Parameter darf und soll ja auch nicht geändert werden.
    CONST ist also durchaus erlaubt.
    Vielleicht heißt es ja auch VARUCS2?

    CONST und VALUE haben ja gerade den Vorteil, dass ich beliebige Parameter übergeben kann.
    Also bei Dieters Beispiel:

    D MyChar 20
    D MyVarC 20 inz('ABC')

    CleanString(MyChar) => Übergabe von 20 Zeichen (mit Längenangabe vorneweg)
    CleanString(MyVarC) => *bergabe von 3 Zeichen (auch wenn max. 20 möglich wären)

    Gerade das ist ja der Vorteil von varchar/varying.
    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

  2. #2
    Registriert seit
    Jun 2005
    Beiträge
    17
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Und wenn eben UCS2 dann "65535C" oder die Free-Alternative.
    Und was hat die Übergabe mit dem Returnwert zu tun?
    Die Übergabe als Parameter darf und soll ja auch nicht geändert werden.
    CONST ist also durchaus erlaubt.
    Vielleicht heißt es ja auch VARUCS2?
    Ich wollte aber gerne den geänderten Wert des Unterprogramms wieder im Hauptprogramm nutzen - deshalb muss der Parameter sehr wohl geändert werden. Ich hätte natürlich die Variable auch Call-by-Reference übergeben können, wenn ich denn gewußt hätte, wie das geht.

    Zitat Zitat von Fuerchau Beitrag anzeigen
    CONST und VALUE haben ja gerade den Vorteil, dass ich beliebige Parameter übergeben kann.
    Also bei Dieters Beispiel:

    D MyChar 20
    D MyVarC 20 inz('ABC')

    CleanString(MyChar) => Übergabe von 20 Zeichen (mit Längenangabe vorneweg)
    CleanString(MyVarC) => *bergabe von 3 Zeichen (auch wenn max. 20 möglich wären)

    Gerade das ist ja der Vorteil von varchar/varying.
    Die Übergabe lediglich der benutzen Zeichen des Strings hat ja nicht funktioniert, wie ich oben beschrieben habe. Daher muss ich den String im Unterprogramm auf jeden Fall trimmen, weil ich bei 3 Zeichen im String nicht 5000 Schleifendurchläufe machen möchte.

  3. #3
    Registriert seit
    Mar 2002
    Beiträge
    5.392
    Zitat Zitat von rissling Beitrag anzeigen
    Die Übergabe lediglich der benutzen Zeichen des Strings hat ja nicht funktioniert, wie ich oben beschrieben habe. Daher muss ich den String im Unterprogramm auf jeden Fall trimmen, weil ich bei 3 Zeichen im String nicht 5000 Schleifendurchläufe machen möchte.
    ... dann machst Du was falsch und dann gehört der Fehler abgestellt, anstatt einen Fehler mit einem anderen zu kompensieren...
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.808
    Tut mir Leid, dass ich das mal so sagen musst, dann hast du es immer noch nicht verstanden:
    Sieh dir die Definition an:
    d cleanString PR 65535C varying
    d EXTPROC
    ('MYMOD_cleanString')
    d data 65535C value
    d varying

    D.h., die Funktion wird mit einem Feld aufgerufen und gibt ein anderes Feld zurück.
    Also es werden zwar 65k Zeichen übergeben, aber durch %len() nur die Anzahl Zeichen verarbeitet, die gefüllt sind!
    Ansonsten gibt die Funktion den geänderten Wert zurück:

    NeuerWert = cleanString(alterWert);

    Also in deiner Routine dann "return $temp;"!
    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

Similar Threads

  1. unbekannte Datei Feldweise in allg. gültige Tabelle schreiben
    By Robi in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 07-01-16, 08:40
  2. suchen im string mit sql
    By ILEMax in forum NEWSboard Programmierung
    Antworten: 6
    Letzter Beitrag: 11-01-14, 10:32
  3. String ausschneiden
    By heynem in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 20-03-03, 10:15
  4. Programmname aus String ermitteln
    By LaLeLi in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 19-06-02, 09:38
  5. Zur Zeit gültige IBM-Promos nutzen !
    By AS-Trade in forum NEWSboard Server & Hardware Markt
    Antworten: 0
    Letzter Beitrag: 08-09-01, 13:29

Berechtigungen

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