[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Dec 2007
    Beiträge
    2

    Mailversand von *DOC aus IFS mit ASCII Zeichen

    Hallo zusammen,

    die Tipps im Forum haben mir bisher bei diesem Problem sehr weitergeholfen, aber mittlerweile bin ich Ratlos:

    Um was geht es:
    Ich erstelle aus einer RPG Anwendung ein Document in IFS.
    Code:
     * Define open attributes                                                    
    c                   eval      oflag = O_WRONLY + O_Create +                  
    c                               O_TextData + O_TRUNC + O_Codepage            
    c                                                                            
    c                                                                            
    c                                                                            
     * Define Mode      attributes                                               
    c                   eval      Mode = S_IRWXU + S_IRWXO                       
    c                   eval      $ftpfile = @GetEDIFile(ftpfil:send#)           
    c                   eval      file = '/' +%trim(histlib) +                   
    c                             '/' + 'UPEDI' +  '/' + %trim($ftpfile)        
     
    c                   eval      fd = open(%trim(file):OFlag:                   
    c                                        Mode:CodePage)                      
    c

    Der Wert Codepage ist zur Zeit auf

    Code:
    d   CodePage      s             10u 0 inz(37)
    ich hab es aber auch mit
    Code:
    d   CodePage      s             10u 0 inz(1252)
    versucht.

    Die Datei doc wird erstellt nach
    /QDSL/Fld/doc

    Das klappt auch wunderbar, aber!

    Wenn ich Codepage 37 (Epsidik) nehme, kann man den Inhalt im IFS wunderbar lesen.(Ausschnitt)
    Code:
     ************Beginning of data************** 
    020094                                  20071
    A400483191385                 00002+000000000
    Nach einem Download via FTP auf einen Windows Rechner, läßt sich die Datei ohne Probleme mit dem Texteditor öffnen und lesen.

    Nehme ich Codepage 1252 (eigentlich ja ASCII), sieht das erstellte Dokument so aus: (nur ein Ausschnitt)

    Code:
     
     ************Beginning of data**************     
    ðòððùô@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@òðð÷ñòñðð
    Áôððôøóñùñóøõ@@@@@@@@@@@@@@@@@ððððòNððððððððððððð
    ãÅâã@ä×âò@âÁåÅÙ@@@@@@@@@@@@@@@@@@@@ÔÅÄÉÁ@ÔÁÙÒã@ÂÅ
    und genauso kommt es mit FTP dann auch am Windows Rechner an. (die Codepage des Files ist nach dem erstellen
    Coded character set ID . . . . . . . . : 5348 , das ist 1252 mit € Zeichen)

    Mein Ziel ist es aber, die Datei als Mail zu verschicken, und zwar so, das die Datei richtig (also lesbar) ankommt. Dazu benutze ich nach dem Erstellen in meinem RPGLE Programm den Befehl:

    Code:
    c                   eval      cmd = 'sbmjob job(EDIMAIL) ' +               
    c                             'cmd(SNDDST TYPE(*DOC) TOINTNET(('+          
    c                             '''' + %trim(email) +  '''' + ')) ' +        
    c                             'DSTD(''UPEDI'') ' +                        
    C                             'MSG(''UPEDI for ' +                 
    C                             %TRIM(#DATE10) + ''') ' +                    
    c                             'DOC('+ DOSNAME +')' +                       
    c                             ' FLR(UPEDI)' +                             
    c                             ') jobd(CINJOBD) ' +                         
    c                             'jobq(QBATCH2) inllibl(*current)' +          
    c                              ' USER(MESSAGE)'
    Ausgeschrieben lautet er so:

    sbmjob job(EDIMAIL) cmd(SNDDST TYPE(*DOC)
    TOINTNET(('x@y.com')) DSTD('EDI') MSG('UPEDI
    for 10.12.2007') DOC(UP10125) FLR(UPEDI)) jobd(CINJOBD)jobq(QBATCH2)
    inllibl(*current) USER(MESSAGE)

    Ich habe den Job mit user message submitted, da mit es auch mit jedem Anwender funktioniert. Das ergebnis ist aber ohne submit das Selbe.

    Die Mail kommt auch an, aber es ist egal mit welcher CODEPAGE, mann kann es nicht lesen.

    Erzeuge ich dagegen das doc mit Codepage 37 und lade es dann per FTP nach Windows, kann ich die Datei lesen und ohne Probleme auch per Mail verschicken (natürlich manuell ).


    Meine Frage:
    Weis jemand, was ich machen kann/muss/soll, damit die Mail vernünftig beim Empfänger ankommt? (Ohne manuelles zutun). Läuft da vielleicht schon beim Erstellen was falsch?

    Ich habe es mal versucht, ein Streamfile im IFS zu erstellen, dieses per FTP vom IFS zur "normalen" AS/400 zurück zu schieben (in ein File), es in ein PC Dokument umzuwandeln und es dann wegzuschicken. Das klappt, aber es darf dann höchstens 32600 (oder so) Zeichen lang sein. Das reicht manchmal nicht.

    Vielen Dank für euere Hilfe.


    seppiii

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Das liegt daran, dass QDLS keine CCSID unterstützt. Die C-Routinen machen die Codewandlung automatisch.
    FTP kann jedoch keine CCSID erkennen, so dass automatisch EBCDIC angenommen wird.

    Entweder du überträgst binär oder du verwendest ein anderes IFS (z.B. "/Home/MyVerz").
    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
    Dec 2007
    Beiträge
    2

    Talking vielen Dank

    Vielen, vielen Dank.
    Das wars, das hat wirklich geholfen.

    An das naheliegensde denkt man manchsmal nicht.

Similar Threads

  1. Berechtigungen im IFS zuweisen
    By ChrisX in forum IBM i Hauptforum
    Antworten: 9
    Letzter Beitrag: 03-12-07, 12:07
  2. IFS - Freigabe per Befehlszeile
    By eps330 in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 26-11-07, 12:24
  3. Dateien per FTP von IFS auf der AS400 holen
    By kroehn in forum NEWSboard Windows
    Antworten: 5
    Letzter Beitrag: 08-11-06, 19:36
  4. Allgemeine Berechtigung für Jobs ... IFS Ordner ...
    By bode in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 30-10-06, 11:10
  5. Umlaute werden im IFS zu Sonderzeichen
    By y-tom in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 29-05-06, 14:31

Berechtigungen

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