[NEWSboard IBMi Forum]
Seite 2 von 2 Erste 1 2
  1. #13
    Registriert seit
    Oct 2001
    Beiträge
    68
    Danke Pikachu für die Links. Waren auch wieder sehr lehrreich und eine Hilfestütze,
    auch wenn sie mir nicht direkt geholfen haben. Die Aufrufe dort waren auch immer mit Konstanten.

    Letztdentlich hab ichs dann hinbekommen. Mein Aufruf mit
    jedem ENTRY-Parameter funktioniert jetzt so, das die Datei gefüllt wird.

    DANKE nochmal an Alle!!!

    Code:
         H DftActGrp(*No) Option(*SrcStmt : *NoDebugIO)
    
         FDIROUTPUT O    E             DISK
    
         D PATHTOLIST      C                   CONST('/home/SVN/src_diso1/trunk/')
         D*
         D* Directory Entry Structure (dirent)
         D*
         D*
         D p_dirent        s               *
         D dirent          ds                  based(p_dirent)
         D   d_reserv1                   16A
         D   d_reserv2                   10U 0
         D   d_fileno                    10U 0
         D   d_reclen                    10U 0
         D   d_reserv3                   10I 0
         D   d_reserv4                    8A
         D   d_nlsinfo                   12A
         D     nls_ccsid                 10I 0 OVERLAY(d_nlsinfo:1)
         D     nls_cntry                  2A   OVERLAY(d_nlsinfo:5)
         D     nls_lang                   3A   OVERLAY(d_nlsinfo:7)
         D     nls_reserv                 3A   OVERLAY(d_nlsinfo:10)
         D   d_namelen                   10U 0
         D   d_name                     640A
         D*------------------------------------------------------------
         D* Öffnen Directory
         D* DIR *opendir(const char *dirname)
         D*------------------------------------------------------------
         D opendir         PR              *   EXTPROC('opendir')
         D  dirname                        *   VALUE options(*string)
    
         D*------------------------------------------------------------
         D* Read Directory Entry
         D* struct dirent *readdir(DIR *dirp)
         D*------------------------------------------------------------
         D readdir         PR              *   EXTPROC('readdir')
         D  dirp                           *   VALUE
    
    
         D* a few local variables...
         D dir             S               *
         D PathName        S            256A
         D Name            S            256A
         D PATH            S            256A
    
         C     *ENTRY        PLIST
         C                   PARM                    P_PFADNAME       25
    
         C* Step1: Öffnen Directory.
         c                   eval      Pathname = pathtolist+%trim(P_PFADNAME)+x'00'
         C                   eval      dir = opendir(%addr(PathName))
         C                   if        dir = *NULL
         c                   eval      Msg = 'Cant open directory'
         c                   dsply                   Msg              50
         c                   eval      *INLR = *ON
         c                   Return
         c                   endif
    
         C* Step2: Lesen  Einträge von einem Directory (in einem Loop)
         c                   eval      p_dirent = readdir(dir)
         c                   dow       p_dirent <> *NULL
    
         C* FIXME: Dieser Code kann nur Dateien mit einer namenslänge von 256 Stellen behandeln
         c                   if        d_namelen < 256
         c                   eval      ZEILE = %subst(d_name:1:d_namelen)
         c*                  movel     Name          dsply_me         52
         c                   write     DIROUTPUTF
         c                   endif
    
         c                   eval      p_dirent = readdir(dir)
         c                   enddo
    
         C* Step3: End Program
         c                   eval      *inlr = *On

  2. #14
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Einfacher ist folgendes:

    D opendir PR * EXTPROC('opendir')
    D dirname 512 CONST options(*string)

    eval dir = opendir(pathtolist+%trim(P_PFADNAME))
    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. Frage zum Befehl STRPCCMD
    By stoerfang in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 24-01-13, 10:27
  2. SQL Frage
    By Bratmaxxe in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 24-01-07, 19:17
  3. CPYFRMSTMF mit xml-Datei
    By wrkas400 in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 11-01-07, 11:12
  4. Frage zu QZDFMDB2
    By Freezer in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 23-10-06, 21:02
  5. Frage zu SQL UserDefinedFunction
    By cbe in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 24-08-06, 17:30

Berechtigungen

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