[NEWSboard IBMi Forum]
Seite 2 von 2 Erste 1 2

Thema: IFS und CCSID

  1. #13
    Registriert seit
    Apr 2009
    Beiträge
    69
    Hallo zusammen,

    erst mal Danke für alle Tipps. Auch wenn Ihr mich für dumm haltet, aber seit heute Morgen läuft es Warum auch immer. Ich habe nichts geändert. Hier nochmal die Quelle und vielen Dank!

    Gruß co_steffl

    if unlink('/ASES/export/prtacctab.txt') < 0;
    err = errno;
    if err <> ENOENT;
    callp die('unlink(): ' + %str(strerror(err)));
    endif;
    endif;

    fd = open ( %trim(path) // Open for create
    : flags
    : mode
    : codepage
    );

    callp close(fd);

    flags = O_WRONLY + O_TRUNC + O_TRUNC + O_TEXTDATA;

    fd = open ( %trim(path) // open for proceed
    : flags
    : mode
    );

    if fd < 0;
    callp die('open(): ' + %str(strerror(errno)));
    errmsg = %str(strerror(errno));
    callp die('open() for output: ' + ErrMsg);
    endif;
    .
    .
    .

    begsr init;

    codepage = 1252;
    path = '/ASES/export/prtacctab.txt';
    flags = O_WRONLY + O_CREAT + O_TRUNC + O_CODEPAGE;
    mode = S_IRUSR + S_IWUSR + S_IRGRP + S_IROTH;

  2. #14
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    ... vielleicht war da noch die alte Version im Speicher, eine der Tücken von ILE, gegen die ein angelegentliches RCLACTGRP hilft (bei Einsatz von COMMIT den *ABNORMAL nicht vergessen)

    D*B

    Zitat Zitat von co_steffl Beitrag anzeigen
    Hallo zusammen,

    erst mal Danke für alle Tipps. Auch wenn Ihr mich für dumm haltet, aber seit heute Morgen läuft es Warum auch immer. Ich habe nichts geändert. Hier nochmal die Quelle und vielen Dank!

    Gruß co_steffl

    if unlink('/ASES/export/prtacctab.txt') < 0;
    err = errno;
    if err <> ENOENT;
    callp die('unlink(): ' + %str(strerror(err)));
    endif;
    endif;

    fd = open ( %trim(path) // Open for create
    : flags
    : mode
    : codepage
    );

    callp close(fd);

    flags = O_WRONLY + O_TRUNC + O_TRUNC + O_TEXTDATA;

    fd = open ( %trim(path) // open for proceed
    : flags
    : mode
    );

    if fd < 0;
    callp die('open(): ' + %str(strerror(errno)));
    errmsg = %str(strerror(errno));
    callp die('open() for output: ' + ErrMsg);
    endif;
    .
    .
    .

    begsr init;

    codepage = 1252;
    path = '/ASES/export/prtacctab.txt';
    flags = O_WRONLY + O_CREAT + O_TRUNC + O_CODEPAGE;
    mode = S_IRUSR + S_IWUSR + S_IRGRP + S_IROTH;
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #15
    Registriert seit
    Apr 2009
    Beiträge
    69
    Hallo zusammen,

    es geht weiter ;-)

    Nachdem ich nun geglaubt habe das alles zur Zufriedenheit verläuft, habe ich nun aus der Txt Datei eine .bat Datei ins IFS geschrieben. das läuft so weit auch alles gut.

    Hier mal kurz die Passage.
    .
    .
    ECHO ON

    path %ATOSS_HOME%\bin CRLF
    .
    .
    Wenn ich nun diese Datei aus dem IFS auf einen Win2003 Server kopiere, kommt es bei der Ausführung zu Fehlern.

    D.h. er kann das Pfad Verzeichniss nicht finden. Nun habe ich soweit alles geprüft und bin etwas Ratlos. Ich habe mir nun die .bat Datei mit Ultra Edit im IFS und nach dem kopieren in Windows angeschaut und bin darauf gekommen das am Ende des Path der CRLF verloren geht bzw. verschoben wird.

    Hie mal kurz die Auszüge aus Ultra Edit
    path %ATOSS_HOME%\binCRLF
    HEX: 62 69 6E 0D 0A
    Nach dem kopieren aus dem IFS nach Windows werden ca. 80 Blanks X'20' zwischen ..bin und CRLF eingefügt. ??

    Wenn das Bach Pgm dann läuft taucht der Fehler auf. Wenn ich nun per Editor Word Pad nch dem bin ein CR einfüge läuft alles wieder prima?

    Nun meine Frage?

    Woher kommen die Blanks beim kopieren?

    Gruß co_steffl

  4. #16
    Registriert seit
    Apr 2009
    Beiträge
    69
    Hallo zusammen

    ok ok selbst gelöst ;-(

    Ich habe Leerzeilen mit CRLF zwischen den Commands geschrieben um die Lesbarkeit der .bat Datei zu verbessern.

    Besser nur CRLF zwischen jeder Command in der Zeile...

    dann klappts auch mit der Nachbarin

    Gruß
    co_steffl

Similar Threads

  1. Probleme mit IFS und CCSID
    By fabax in forum IBM i Hauptforum
    Antworten: 12
    Letzter Beitrag: 19-03-07, 13:32
  2. Windowstabelle wird im IFS in CCSID 1252 erstellt
    By umeis in forum NEWSboard Windows
    Antworten: 3
    Letzter Beitrag: 11-08-06, 12:45
  3. Lotus Domino / CCSID / IFS / Mail Anhang
    By Hrs28 in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 26-05-05, 13:16
  4. IFS CCSID
    By DEVJO in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 26-11-04, 19:01
  5. CCSID 273/37 und Java-Objekte im IFS
    By Ahrendt in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 21-07-04, 18:19

Berechtigungen

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