[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    wie ich bereits sagte, geht viel und auch dieses, ich habe allerdings keinen Bock mich auf Diskussionen einzulassen, nach dem Muster: das war mir bekannt, hilft mir aber auch nicht weiter...

    Zitat Zitat von VAHLE Beitrag anzeigen
    Die Platzhalter (?) waren mir auch bekannt, aber das löst mein Problem leider auch nicht.

    Vergesst bitte einmal diese spezielle Aufgabenstellung hier.
    Ist es überhaupt irgendwie möglich, an den Inhalt eines Feldes zu kommen, dessen Name selbst Inhalt eines Programmfeldes ist ?


    (php kann ja z.B. auch mit variablen Feldnamen umgehen (z.B. var1=@FeldName - glaube ich)
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  2. #2
    Registriert seit
    Nov 2002
    Beiträge
    19
    @Bender:

    Entschuldigung, aber ich bin mir keiner Schuld bewusst, dass ich mich hier irgendwie im Ton vergriffen haben könnte...

    Ich hab mir heute den ganzen Morgen lang den Kopf über dieses Problem zerbrochen und bin bereits an allen hier genannten Lösungsansätzen gescheitert.

    Warum Du Dich jetzt persönlich angegriffen fühlst, kann ich irgendwie nicht ganz nachvollziehen.

  3. #3
    Registriert seit
    Jan 2001
    Beiträge
    133
    Also ich habe das Thema auch schon mal diskutiert. siehe http://www.newsolutions.de/forum-sys...feldnamen.html
    Jedoch führte auch das damals zu keinem Ergebnis. Ich finde es auch immer recht schade, wenn man am Ende der Diskussion dann nur den Tip bekommt, mal über sein "Konzept dahinter nachzudenken" Wer so ein Problem hat, hat meistens auch eine anspruchsvolle Aufgabe dahinter, da kann sich der geneigte Schreiber sicher sein. Und das Argument mit den anderen Programmiersprachen die das auch nicht oder eben doch können, weil es nur Interpreter Sprachen sind, zieht auch irgendwie nicht. Wat issn mit Delphi und Pascal ??? Die können das und sind ... na ?

    Also Olli ich bin auf Deiner Seite, suche auch noch nach einer Lösung, wenn auch nicht so intensiv, weil ich hab leider wie wir alle ja noch mehr zutun. Im Moment arbeite ich damit, das ich den kompletten SQL String aus einer Datenbank zusammenbaue, in der vorher die Feldnamen und Definitionen abgelegt sind. Man ist aber immer noch bei den Inhalten eingeschränkt und leider kann man nicht nativ mit read und write auf die Daten losgehen, sondern nur mit SQL.

    Wenn Murphy und alle Götter der Programmierung mir hold sind und ich eine Lösung habe, werde ich davon sicher hier zu berichten wissen. Ich bin mir sicher es wird eine Lösung geben, wie auch immer die aussieht.

    Mögen die Bits mit uns sein !

    Thomas

  4. #4
    Registriert seit
    Jan 2006
    Beiträge
    82
    Hallo,

    ich bin auch eurer Meinung und bin auch an der Lösung interessiert, denn:

    GEHT NICHT, GIBTS NICHT

  5. #5
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    Wir sind wieder mal an einer Stelle, wo es an einer genauen Beschreibung fehlt, welches Problem eigentlich gelöst werden soll. Hier werden nämlich schon wieder zwei Dinge vermischt.
    @Liebhoff: siehe originärer Thread!
    Zu diesem Thema hier:
    Zu Interpreter Sprachen hat Baldur schon was gesagt, hier sei nur ergänzt, dass hier Flexibilität mit abnehmender Sicherheit erkauft wird: Fehler die zur Compiletime erkannt werden, treten nicht zur Laufzeit auf. Zu Delphi und Pascal sei angemerkt, dass originäres Pascal das keineswegs konnte und sich das auch nicht mit der eigentlichen Sprachphilosophie verträgt. Delphi kann sowas, ähnlich wie Java: dieser Mechanismus nennt sich Reflection und bezieht sich auch nicht auf alles innerhalb einer Klasse, sondern im wesentlichen auf die Exporte. Den Weg das in RPG zu nutzen habe ich in einem früheren Posting beschrieben.
    Zum Design von sowas: auch in Java und Delphi muss man gute Gründe haben das zu nutzen, denn man bekommt nix für lau. Reflection hebelt Typprüfung aus und man kriegt Runtime Fehler (Type missmatch beim upcast), die man sonst garnicht bekommen kann, weil der Compiler einen davon abhält.
    Im Falle von RPG muss man hier noch vorsichtiger sein, weil die RPG Runtime nich typsicher ist; der Compiler prüft zuwenig zur Compiletime und die Runtime weiss bei Pointern nicht auf was sie da zeigt.
    Fazit: Wer unbedingt Reflection benötigt (ja, das gibt es wirklich), der sollte dafür eine Programmiersprache benutzen, die das vernünftig unterstützt. Wer das mit Gewalt (Dump auswerten ist ja wohl ein Scherz?!) in RPG versucht, liegt genauso schief, wie jemand, der eine FIBU in CL schreiben will.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  6. #6
    Registriert seit
    Nov 2002
    Beiträge
    19
    Zitat Zitat von BenderD Beitrag anzeigen
    ... liegt genauso schief, wie jemand, der eine FIBU in CL schreiben will.
    Da hast Du mich jetzt auf eine Idee gebracht

    Nein, im Ernst, ich bin mittlerweile auch zu der Erkenntnis gekommen, dass ich mein Problem anders angehen werde.
    Die Sache mit dem Dump war zugegebenermassen eine etwas gewagte Idee - halt von hinten durch die Brust ins Auge geschossen .
    Ich werde die Fälle, die momentan halt bekannt sind im RPG "hart" codieren und auf das dynamische Design verzichten.
    Sollten in Zukunft weitere Möglichkeiten hinzukommen, werde ich halt das Programm nochmal anfassen müssen.

    Vielen Dank auf jeden Fall für eure rege Beteiligung.

    Gruß,
    Olli

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Sieh dir doch meine letzte Antwort dort an:
    http://www.newsolutions.de/forum-sys...-new-post.html
    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

  8. #8
    Registriert seit
    Jan 2001
    Beiträge
    133
    Wenn Du magst, schicke ich dir gerne mal ein RPG wo eine CSV Datei (mit Semikolon als Separator, aber auch der ist variabel einstellbar) aufbereitet und geschrieben wird. Die Beschreibungen der Dateien und Felder liegen in physischen Dateien.

    Ist schon sehr variabel meine Lösung, nur werde ich das SQL nicht los. Lieber würde ich mit nativ RPG arbeiten.

    Kannst mir bei Bedarf ja mal eine Mail an liebhoff@liebhoff.de senden.

    Thomas

  9. #9
    Registriert seit
    Jun 2001
    Beiträge
    2.044

    Hmm

    Ist es möglich, und wenn ja, wie, im RPG den Inhalt eines Feldes zu ermitteln, dessen Name erst zur Laufzeit bekannt ist (der Name des Feldes wird aus einer externen Datei ermittelt).
    Falls ich das richtig verstanden habe ...
    Du hast eine Satz (String) und irgendwo her bekommst du die info, welches Feld aus dem Satz du brauchst.

    jetzt brauchst du den Inhalt des Feldes aus dem Satz.

    Wir machen das (ungefähr)so:
    call getfeldi
    parm Dateiname, feldname numfeld(15,6) alpafeld(1024) SATZ

    getfeldi:
    Lies qadbilfi für die Datei, bis Feld gefunden. errechne dabei mit der 'echten' Feldlänge die startpos im String,
    dann hab ich startpos, länge und art und schiebe es in das Num oder ein alpha Feld

    Robi

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    @Robi
    Das ist nur der 1. Teil.
    Nun nimm den gefundenen Namen aus dem String, suche im Speicher nach deiner Variablen dieses Namens (kennt ja nur der Compiler) und ersetze dann im String den gefunden Namen durch den im Speicher aktuell befindlichen Wert.
    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. Variable Feldnamen
    By Liebhoff in forum IBM i Hauptforum
    Antworten: 20
    Letzter Beitrag: 11-03-08, 09:47
  2. "Environment variable not found"
    By Kampi4 in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 09-10-06, 10:19
  3. Variable Zahlenkonvertieren
    By Xanas in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 28-08-06, 12:21
  4. cl declare variable
    By TARASIK in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 24-08-06, 10:09
  5. String mit HexInhalt muss als Hex-Wert in Variable
    By cheffe1008 in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 16-05-06, 07:45

Berechtigungen

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