[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jan 2010
    Beiträge
    7

    CPYTOIMPF nur bei DDS beschriebenen Dateien?

    Hallo zusammen.

    Ich hoffe ich mache hier kein altes Faß auf und wenn ja, dann bitte ich um Nachsicht.
    Seit dem bei uns V6R1 installiert ist, habe ich Probleme mit dem cpytoimpf. PTF's sind aktuell.

    Beispiel:
    rmvblank(*trailing) entfernt nicht die Leerzeichen bei Feldern, die mit VARLEN definiert wurden, sondern ersetzt sie mit HEX 00. Was natürlich beim Import durch andere Programme für viel Heiterkeit sorgt.
    Umgehen kann man das Ganze, wenn man den Feldinhalt beim Schreiben trimmt. Naja, nicht schön aber selten. Dies nur Info für Leidensgenossen.

    Jetzt habe ich aber eine mit SQL (iSeries Naviagtor) erstellte Tabelle, die sich überhaupt nicht exportieren läßt.
    Pumpe ich die Daten via SQL in eine DDS beschriebene Datei habe ich keine Probleme. Die SQL-Tablle besteht zum großen Teil aus varchar-Feldern.

    Fehler aus dem JOBLOG:
    -Speicher-Offset X'00019BD7'....liegt außerhalb der aktuellen Grenze....
    The pointer parameter passed to free or realloc is not valid.
    Die angeforderte Heap-Space-Operation ist ungültig.

    Frage:
    Funktioniert CPYTOIMPF nur bei Tabellen ohne VARCHAR oder VARLEN oder hat der Fehler eventuell eine noch andere Ursache?
    Gibt es eine andere Möglichkeit direkt von der iSeries solche Dateien via SQL, RPG, CL oder Java zu exportieren?
    Ich möchte, wenn es geht darauf verzichten die Tabelle durch eine DDS-beschriebene Tabelle zu ersetzen oder eine Zwischendatei zu basteln.

    Ich hoffe jemand hat eine Idee.
    freundliche Grüße
    Christoph

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.245
    Da würde ich doch glatt eine Fehlermeldung an IBM abschicken.
    Wobei ich nicht weiß, ob VARLEN früher schon korrekt behandelt wurde.

    Ansonsten:
    Java mit JDBC (Javatoolkit) geht immer, mit ILERPG wirds etwas schwieriger, aber auch lösbar.

    SQL exportieren geht über einen Umweg mit z.B. QMQRY:
    select char(Feld1) concat ";" concat ...
    from myfile
    STRQMQRY in Ausgabedatei
    CPYTOIMPF ohne weitere Konvertierungen ausser *CRLF
    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
    Mar 2002
    Beiträge
    5.287
    ergänzend zu Baldur: CPYTOIMPF und CPYFRMIMPF sind das Pendant zu load/unload anderer SQL Datenbanken und bei der Übertragung großer Datenbestände eher schneller als Satz orientierte Methoden.
    Java geht natürlich immer (auf meiner Open Source Seite gibt es da auch ein kleines Tool).

    D*B

    Zitat Zitat von ChristophS Beitrag anzeigen
    Hallo zusammen.

    Ich hoffe ich mache hier kein altes Faß auf und wenn ja, dann bitte ich um Nachsicht.
    Seit dem bei uns V6R1 installiert ist, habe ich Probleme mit dem cpytoimpf. PTF's sind aktuell.

    Beispiel:
    rmvblank(*trailing) entfernt nicht die Leerzeichen bei Feldern, die mit VARLEN definiert wurden, sondern ersetzt sie mit HEX 00. Was natürlich beim Import durch andere Programme für viel Heiterkeit sorgt.
    Umgehen kann man das Ganze, wenn man den Feldinhalt beim Schreiben trimmt. Naja, nicht schön aber selten. Dies nur Info für Leidensgenossen.

    Jetzt habe ich aber eine mit SQL (iSeries Naviagtor) erstellte Tabelle, die sich überhaupt nicht exportieren läßt.
    Pumpe ich die Daten via SQL in eine DDS beschriebene Datei habe ich keine Probleme. Die SQL-Tablle besteht zum großen Teil aus varchar-Feldern.

    Fehler aus dem JOBLOG:
    -Speicher-Offset X'00019BD7'....liegt außerhalb der aktuellen Grenze....
    The pointer parameter passed to free or realloc is not valid.
    Die angeforderte Heap-Space-Operation ist ungültig.

    Frage:
    Funktioniert CPYTOIMPF nur bei Tabellen ohne VARCHAR oder VARLEN oder hat der Fehler eventuell eine noch andere Ursache?
    Gibt es eine andere Möglichkeit direkt von der iSeries solche Dateien via SQL, RPG, CL oder Java zu exportieren?
    Ich möchte, wenn es geht darauf verzichten die Tabelle durch eine DDS-beschriebene Tabelle zu ersetzen oder eine Zwischendatei zu basteln.

    Ich hoffe jemand hat eine Idee.
    freundliche Grüße
    Christoph
    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
    Jan 2010
    Beiträge
    7
    Danke, für die Antwort.
    Wie es aussieht komme ich wohl nicht um die IBM herum.

    Dann werde ich wohl solange die Daten via SQL-function(insert into xx (select * from ....)) in eine DDS-beschriebene Datei packen und von dort aus exportieren.

  5. #5
    Registriert seit
    Jan 2010
    Beiträge
    7
    Zitat Zitat von BenderD Beitrag anzeigen
    ergänzend zu Baldur: CPYTOIMPF und CPYFRMIMPF sind das Pendant zu load/unload anderer SQL Datenbanken und bei der Übertragung großer Datenbestände eher schneller als Satz orientierte Methoden.
    Java geht natürlich immer (auf meiner Open Source Seite gibt es da auch ein kleines Tool).

    D*B
    Danke, werde das Tool mal testen.

  6. #6
    Registriert seit
    Jan 2010
    Beiträge
    7
    Der Vollständigkeit halber:

    Man fand bei IBM doch ein PTF im Keller.
    Das PTF SI37467 beseitigte das Übel.

Similar Threads

  1. Defekte Dateien
    By Rincewind in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 23-01-07, 08:49
  2. cpytoimpf die ...
    By malzusrex in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 14-12-06, 17:20
  3. CPYTOIMPF Format
    By Muchi in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 03-08-06, 09:41
  4. CPYTOIMPF Ergebnis nicht lesbar
    By SUBUIS in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 09-05-06, 09:36
  5. CPYTOIMPF und CCSID
    By Muchi in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 21-04-06, 13:54

Berechtigungen

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