[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jul 2003
    Beiträge
    331

    Cool IFS Dateityp ändern

    Im IFS habe ich eine Datei mit Endung .txt und als Typ = "Textdokument".

    Nachdem ich diese Datei mit CPYFRMSTMF runtergezogen habe in eine DB-Datei benenne ich die Datei im IFS um mit Hilfe eines RPG-Programmes, welches das Ext-Programm "Op0lRenameKeep" benutzt (muss ein IBM-API sein).
    Der neue Datei-Name hat ebenfalls hinten die Endung .txt.

    Der Datei-Type ist nun aber "Datei" anstatt "Textdokument".

    Wenn ich nun den Namen dieser Datei über den Navigator manuell umbenenne auch wieder mit hinten .txt, bleibt der Dateitype "Datei" erhalten. Erst nach ca. 5-10 Versuchen ist der TYP dann plötzlich auf einmal wieder "Textdokument".

    Das wäre mir eigentlich egal, aber das CPYFRMSTMF kopiert mir die Daten anscheinend nur, wenn es der Dateitype "Textdokument" ist.


    Frage-1: wie kann ich im Navigator den
    Dateitype ändern
    Frage-2: warum kopiert das
    CPYFRMSTMF keine "Datei",
    sondern nur ein
    "Textdokument"

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.206
    Dem CPYFRMSTMF ist der Dateitype vollkommen egal, da dies Windowsspezifisch ist, und der Name ja voll qualifiziert angegeben wird.

    Ich denke, das Problem liegt ggf. in einem Leerzeichen beim Dateityp. Also ggg ".txt ".
    Dieser ist in Windows natürlich nicht bekannt.
    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
    Jul 2003
    Beiträge
    331
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Dem CPYFRMSTMF ist der Dateitype vollkommen egal, da dies Windowsspezifisch ist, und der Name ja voll qualifiziert angegeben wird.

    Ich denke, das Problem liegt ggf. in einem Leerzeichen beim Dateityp. Also ggg ".txt ".
    Dieser ist in Windows natürlich nicht bekannt.

    Ich habe das zig-mal probiert.
    Der Datei-Name ist ganz bestimmt ohne Leerzeichen richtig geschrieben.

    Daten werden nur übernommen bei Type "Textdokument"

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.206
    Ich hatte auch schon mal Probleme mit Leerzeichen am Ende eines Dateinamens bzw. Verzeichnisses.

    Öffne den Windows-Explorer, zeige die Dateinamen und und drücke dann F2 zum Umbenennen.
    Mit den Cursortasten kannst du dann die Zeichen genau bearbeiten.

    Im Explorer über "Extras->Ordneroptionen", Register Dateitypen werden in Windows nämlich die Zuordnungen zwischen "Extension" und Namen sowie Anwendung verwaltet (Registry).
    Die AS/400 kennt sowas gar nicht.
    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

  5. #5
    Registriert seit
    Jul 2003
    Beiträge
    331
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Ich hatte auch schon mal Probleme mit Leerzeichen am Ende eines Dateinamens bzw. Verzeichnisses.

    Öffne den Windows-Explorer, zeige die Dateinamen und und drücke dann F2 zum Umbenennen.
    Mit den Cursortasten kannst du dann die Zeichen genau bearbeiten.

    Im Explorer über "Extras->Ordneroptionen", Register Dateitypen werden in Windows nämlich die Zuordnungen zwischen "Extension" und Namen sowie Anwendung verwaltet (Registry).
    Die AS/400 kennt sowas gar nicht.

    Ich habe ja keine Leerzeichen nach dem Namen und vor der Extension. Das habe ich mehrfach kontrolliert.

    Ich habe jetzt aber festgestellt, dass nach Umbennnung durch mein Programm zwar ein Zurückumbenennen im Navigator sofort möglich ist (wird auch entspr. angezeigt nach Aktualisierung), eine Änderung des Dateitypes erfolgt aber erst bei einer Umbennung, die ca. 3 Minuten nach der Umbennung durch mein Programm folgt.

    Kann es sein, dass eine Zeitlang im Windows was gesperrt ist ?
    (ca. 3 Minuten)


    (kommt mir alles etwas merkwürdig vor)

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.206
    Das erklärt sich mir jetzt nicht und ist nicht nachzuvollziehen.
    Ausserdem meine ich Leerzeichen hinter der Dateiendung!
    Dann kann Windows den Typ auch nicht erkennen.

    Ggf. gibts ein Problem bei der Versorgung des API's ?
    Umbenennen geht auch mit dem REN-Befehl.
    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

  7. #7
    Registriert seit
    Jul 2003
    Beiträge
    331

    Smile

    Zitat Zitat von Fuerchau Beitrag anzeigen
    Das erklärt sich mir jetzt nicht und ist nicht nachzuvollziehen.
    Ausserdem meine ich Leerzeichen hinter der Dateiendung!
    Dann kann Windows den Typ auch nicht erkennen.

    Ggf. gibts ein Problem bei der Versorgung des API's ?
    Umbenennen geht auch mit dem REN-Befehl.

    Ich habe jetzt mal alle Leerzeichen hinter der Endung (im Navigator) weggelöscht. Jetzt scheint es zu funktionieren !

    Befehl REN war mir neu. Wenn es weitere Probleme gibt, werde ich mal damit ausprobieren.

    Danke für die Unterstützung.

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.206
    Also übergibt das Programm einen zu langen String an das API für das Umbenennen!
    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

  9. #9
    Registriert seit
    Mar 2002
    Beiträge
    5.286
    das API Qp0lRename... Dingens will null terminated Strings als Parameter; ich denke dass da vielleicht deine RPG Quelle nur fast exakt ist...
    D*B

    iSeries Information Center
    Zitat Zitat von loeweadolf Beitrag anzeigen
    Ich habe jetzt mal alle Leerzeichen hinter der Endung (im Navigator) weggelöscht. Jetzt scheint es zu funktionieren !

    Befehl REN war mir neu. Wenn es weitere Probleme gibt, werde ich mal damit ausprobieren.

    Danke für die Unterstützung.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  10. #10
    Registriert seit
    Jul 2003
    Beiträge
    331

    Cool

    Ich habe das Programm zum Umbenennen noch mal geprüft. Hier ist die Variable für den neuen Namen etwas zu lang, d.h., es bleiben hinten 3 Stellen hinter dem .txt leer.
    Wenn ich dann anschl. manuell (Navigator) den Namen wieder zurückändere (für Testzwecke), dann ist es anscheinend erforderlich, dass ich die 3 Leerzeichen hinter der Datei-Endung wieder rausnehme (auch wenn ich diese nicht sehen kann).
    (Nur dann kann Windows wohl erkennen, dass es sich um die Endung .txt handelt und entspr. Attribute setzen).

    Zumindest klappt dann das CPYFRMSTMF.

  11. #11
    Registriert seit
    Mar 2002
    Beiträge
    5.286
    ... entweder brauchst du einen Prototyp mit Options(*STRING) und musst bei der Übergabe trimmen, oder %str(%trim(variable))
    müsste es auch tun.

    D*B

    Zitat Zitat von loeweadolf Beitrag anzeigen
    Ich habe das Programm zum Umbenennen noch mal geprüft. Hier ist die Variable für den neuen Namen etwas zu lang, d.h., es bleiben hinten 3 Stellen hinter dem .txt leer.
    Wenn ich dann anschl. manuell (Navigator) den Namen wieder zurückändere (für Testzwecke), dann ist es anscheinend erforderlich, dass ich die 3 Leerzeichen hinter der Datei-Endung wieder rausnehme (auch wenn ich diese nicht sehen kann).
    (Nur dann kann Windows wohl erkennen, dass es sich um die Endung .txt handelt und entspr. Attribute setzen).

    Zumindest klappt dann das CPYFRMSTMF.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  12. #12
    Registriert seit
    Feb 2001
    Beiträge
    20.206
    Die übergebenen Leerzeichen gehören automatisch mit zum Dateinamen!
    Da du ja im CPYxxx den vollen Namen angeben musst gehören nun mal die Leerzeichen mit dazu (genauso wie auch zwischendrin).
    Der AS/400 ist es vollkomen egal, wie Windows damit umgeht.

    Benenne ich auf der AS/400 meine IFS-Dateien alle mit xxx.txy, kann Windows damit ja auch nichts anfangen, mein Programm aber schon.
    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. Berechtigungen im IFS zuweisen
    By ChrisX in forum IBM i Hauptforum
    Antworten: 9
    Letzter Beitrag: 03-12-07, 13:07
  2. Dateien per FTP von IFS auf der AS400 holen
    By kroehn in forum NEWSboard Windows
    Antworten: 5
    Letzter Beitrag: 08-11-06, 20:36
  3. Allgemeine Berechtigung für Jobs ... IFS Ordner ...
    By bode in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 30-10-06, 12:10
  4. Windowstabelle wird im IFS in CCSID 1252 erstellt
    By umeis in forum NEWSboard Windows
    Antworten: 3
    Letzter Beitrag: 11-08-06, 13:45
  5. Umlaute werden im IFS zu Sonderzeichen
    By y-tom in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 29-05-06, 15:31

Berechtigungen

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