[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    May 2005
    Beiträge
    64

    CPYTOIMPF - Ausgabe auf anderen Server möglich?

    Hallo Gemeinde
    Hab in der Hilfe dazu nichts gefunden und auch hier mit der Suchfunktion.
    Hat das schon einer gemacht?

    Ich will eine CSV-Datei von Server A ins IFS von Server B ausgeben.

  2. #2
    Registriert seit
    Jun 2001
    Beiträge
    1.973
    CPYTOIMPF Kopiert ein PF

    Eine CSV Datei ist keine PF

    Willst du vom IFS einer iSeries A oder PC-Server A ins ifs einer iSeries B kopieren?
    Oder ein PF als CSV auf eine andere iSeries

    Kannst du mit mkdir das ifs der anderen Mounten?, k.a. ob das geht aber dann wäre das kein Prob.

    Sonst könnte iSeries B ein DDM File auf die A legen und den CPYTROIMPF selber auslösen.
    Oder von A mit FTP nach B schubsen und den CPYTOIMPF als call aufrufen,
    oder ...
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  3. #3
    Registriert seit
    May 2005
    Beiträge
    64
    Sorry, man sollte immer Gegenlesen vor dem Posten.
    Wir wollen eine PF ins IFS auf einem anderen Server kopieren respektive um es genauer zu beschreiben, ich muss Files von 3 Servern auf einem weiteren zusammenfügen. Die Dateien sind inhaltlich übereinstimmend.
    FTP-Verfahren auf Basis der iSeries hatten wir schon im Einsatz, war aber zu instabil und wir konnten den Grund dafür nicht finden.
    Aber das mit der DDM-File wäre noch ein Lösungsansatz.

  4. #4
    Registriert seit
    Jun 2001
    Beiträge
    1.973
    oder mit einem kleinen SQL Pgm und "connect to"
    die Daten auf das Zielsystem schubsen.
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  5. #5
    Registriert seit
    May 2005
    Beiträge
    64
    Wohl dem der Programmierer ist. Wir können uns leider nur mit CL und Cmd behelfen.

  6. #6
    Registriert seit
    Jun 2001
    Beiträge
    1.973
    Wir machen (fast) alles ...
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Das geht auch ohne Programm nur mit CLP:
    Per WRKDIRE kann man die anderen DB's native verbinden und dann per SQL direkt zugreifen.
    Die Notation ist dann:

    select f1, f2, ...
    from RDBNAME.LIB.FILE
    where ...

    Voraussetzung ist am Besten, wenn das ausführende Profil auf allen Systemen mit identischem Kennwort vorhanden ist.


    Nun lässt sich mit einem CLP und dem Kommando RUNSQL (Achtung: nicht RUNSQLSTM) jeder beliebige SQL ausführen.
    Also warum nicht:

    RUNSQL '
    create table qtemp.xxx as
    (
    select .... from lib.file where ...
    union all
    select ... from RDB2.lib.file where ...
    union all
    select ... from RDB3.lib.file where ...
    ) with data
    '

    cpyfrmimpf qtemp/xxx .....

    Nachtrag:
    Mit ACS SQL-Scripts kann man dies auch auf einem PC automatisieren, da auch CSV ausgegeben werden können. Somit hat man die Daten u.U. direkt auf dem PC der die Daten ggf. ja haben will.
    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
    Jun 2001
    Beiträge
    1.973
    SQl im CL ..
    ja da war mal was ...
    Haben wir NIE verwendet, da müsste ich mal öfter dran denken ...
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  9. #9
    Registriert seit
    May 2005
    Beiträge
    64
    Besten Dank, ich werde das einmal ausprobieren.

  10. #10
    Registriert seit
    Jan 2007
    Beiträge
    904
    ... wobei, ich lass meine SQL's im CL immer über RUNSQLSTM laufen. Dies lässt mir die Möglichkeit offen, die SQL-Anweisungen zu ändern, ohne dass ich das CL neu kompilieren muss.
    kf

  11. #11
    Registriert seit
    Aug 2001
    Beiträge
    2.869
    Zitat Zitat von camouflage Beitrag anzeigen
    ... wobei, ich lass meine SQL's im CL immer über RUNSQLSTM laufen. Dies lässt mir die Möglichkeit offen, die SQL-Anweisungen zu ändern, ohne dass ich das CL neu kompilieren muss.
    Nur leider kannst Du dabei keine Fehler behandeln, oder implementierst Du dynamische Compound statements mit Condition Handler? Wen ja, dann kannst Du auch gleich eine Stored Procedure (oder User Defined Function) daraus machen.
    Was ich sowieso empfehlen würde. Diese Prozedur kann ja dann aus dem CL aufgerufen werden.
    Birgitta Hauser

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

  12. #12
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Außerdem verlangt das RUNSQLSTM, dass die SQL-Erweiterungsoption für z.B. STRSQL installiert ist.
    Bei manchen Kunden ist diese Option eben nicht installiert. Dann gibts auch kein RUNSQLSTM.
    SQL ist aber grundsätzlicher Bestandteil des OS und deshalb ausführbar.
    Daher hatte ich früher ein eigenes RUNSQL als ILERPG-Programm, was nun durch das systemeigene RUNSQL abgelöst werden konnte.
    Wenn du jedoch auch SRCPF's verwenden willst, schreib einfach einen Wrapper.

    RUNSQLSTM hat jedoch auch Vorteile.
    Man kann Fehler zwar nicht überwachen, aber mit RUNLVL(40) ignorieren.
    Es erlaubt Kommentare und mehrere Befehle.
    Sowie mittels der "cl: xxx" Erweiterung den Aufruf von Kommandos.

    Aber wie immer so im Leben gibt es viele Möglichkeiten.
    Kennt jemand eigentlich noch REXX?
    Mittels STRREXPRC lassen sich ebenso Scripts ausführen, die sowohl SQL als auch Kommandos mit Parametern ausführen können. Und STRREXPRC erlaubt sogar die Übergabe von Parametern, die in SQL und CMD's verwendet werden können.
    REXX kann auch SQL-Cursor lesen, also komplexe Abfragen zu verarbeiten.
    Unterstützt werden auch Funktionen und Sub-REXX-Prozeduren (also andere Member) sowie Variaben und Schleifen.
    Das wird schon ziehmlich vernachlässigt;-).

    https://www.ibm.com/docs/en/search/r...3&intitle=true
    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. WebSphere soll auf IFS einer anderen AS400 zugreifen?
    By ZeroQool in forum NEWSboard Linux
    Antworten: 1
    Letzter Beitrag: 13-01-11, 15:07
  2. von AS400 auf anderen Server speichern
    By steven_r in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 19-01-07, 11:17
  3. Freigaben auf anderen Servern nutzen
    By ltsrole in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 21-10-04, 17:20
  4. Query: Druck auf einen anderen Schacht (2,3,...)
    By Rolf7856 in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 21-11-02, 09:20
  5. Drucken auf einer anderen AS/400
    By Bleil in forum NEWSboard Drucker
    Antworten: 1
    Letzter Beitrag: 24-05-02, 10:01

Berechtigungen

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