2. Juni 2010 16:51
2. Juni 2010 17:18
File.RESET; 
File.SETRANGE(Path,SaleSetup."Dateiverzeichnis Import"); // hier Ordnerpfad
File.SETRANGE("Is a file",TRUE); // muss 
File.SETFILTER(Name,'*.txt');  // kann
IF File.FINDSET THEN
  REPEAT 
    // v
  UNTIL File.NEXT = 0;9. Juni 2010 15:03
16. Juni 2010 14:09
11. August 2010 11:49
Kowa hat geschrieben:Bei UNC Netzwerkpfaden ( \\Server\Ordner\) steht aber gar nichts in der Tabelle.
25. August 2010 16:33
IF ISSERVICETIER THEN BEGIN
  ImportFolder := <Import-Ordner>;
  IF ISCLEAR(FileSystemObject) THEN
    CREATE(FileSystemObject,FALSE,TRUE);
  IF NOT FileSystemObject.FolderExists(ImportFolder) THEN BEGIN
    MESSAGE(<Text:Isnixda>,ImportFolder);
    CLEAR(FileSystemObject);
    EXIT;
  END;
  IF ISCLEAR(FilesDict) THEN
    CREATE(FilesDict,FALSE,TRUE);
  IF ISCLEAR(ScriptControl) THEN
    CREATE(ScriptControl,FALSE,TRUE);
  
  WSHFolder := FileSystemObject.GetFolder(ImportFolder);
  WSHFiles := WSHFolder.Files;
  ScriptControl.Language := 'VBScript';
  ScriptControl.AddObject('FilesByName',WSHFiles);
  ScriptControl.AddObject('FilesById',FilesDict);
  txtCR := ''; 
  txtCR[1] := 13;
  txtCode := 
     'dim f1' + txtCR +
     ' For Each f1 in FilesByName' + txtCR +
     ' FilesById.Add (FilesById.Count+1), f1' + txtCR +
     ' Next' + txtCR;
  ScriptControl.AddCode(txtCode);
  txtCode := 
  'function GetItem(i)' + txtCR +
  ' GetItem = FilesById(i)' + txtCR +
  'end function' + txtCR; 
  ScriptControl.AddCode(txtCode);
  ScriptControl.ExecuteStatement(txtCode);
  FOR i := 1 TO WSHFiles.Count DO BEGIN
    ImportFileName := ScriptControl.Eval('GetItem(' + FORMAT(i) + ')');
    ImportFileName := UPPERCASE(ImportFileName);
    FileName := DELCHR(ImportFileName,'<');
    WHILE STRPOS(FileName,'\') <> 0 DO
      FileName := COPYSTR(FileName,STRPOS(FileName,'\') + 1);
       
      <Datei vielleicht noch abfiltern (z. B. anhand der Endung), ob sie bearbeitet werden soll oder nicht>
      <Irgendwas mit der Datei machen>
      …
    END;
    …
  END;
  CLEAR(FilesDict);
  CLEAR(FileSystemObject);
  CLEAR(ScriptControl);
END ELSE BEGIN
  ...21. Februar 2012 10:44