AfWinImportFile

Aus ArcFlow Wiki
Zur Navigation springen Zur Suche springen
Diese Seite enthält Bearbeitungen, die nicht zum Übersetzen freigegeben sind.
 AfWinImportFile(handle1[, alpha2[, handle3[, alpha4[, int5[, int6[, alpha7[, alpha8[, alpha9[, logic10]]]]]]]]]) : int

Nicht ausführbar von der APINicht ausführbar von der Programmierschnittstelle (DLL)Nicht ausführbar mit der Application Remote ControlAusführbar von der Script-API

Dialog zur Auswahl von Dateien zum Import öffnen
handle1 Deskriptor einer leeren CTE-Liste
alpha2 Pfad (optional)
handle3 Deskriptor des übergeordneten Fensters (optional)
alpha4 Name der Notiztabelle für Archivnamen (optional)
int5 Id der Root Arbeitsmappe (optional)
int6 Id der Standard-Arbeitsmappe (optional)
alpha7 Standard Archivname (optional)
alpha8 Prefix für den Archivnamen (optional)
alpha9 Suffix für den Archivnamen (optional)
logic10 Importierte Dateien löschen (optional)
Resultat int gedrückte Schaltfläche
Siehe

Verwandte Befehle

Mit dieser Anweisung wird ein Dialog für den Import von Dokumenten angezeigt. In (handle1) wird eine leere CTE-Liste übergeben, die zuvor mit AfCteOpen() angelegt werden muss. Die Anweisung ruft folgenden Dialog auf:

Der angezeigte Dialog wurde ohne optionale Parameter aufgerufen. In der Liste links unten werden alle Dateien des Standard Import-Pfades (siehe Parameter / Benutzer / Dateiimport) angezeigt. Wird in der Liste eine PDF-Datei oder eine Bild-Datei (BMP, JPG, TIF, PNG) ausgewählt, wird diese in einer Vorschau oberhalb der Liste angezeigt.

Auf der rechten Seite wird der Arbeitsmappenbaum dargestellt. In dem Eingabefeld "Arbeitsmappe" kann ein Suchbegriff eingegeben und eine Arbeitsmappensuche gestartet werden. Diese funktioniert identisch zu der Suche im Arbeitsmappenbaum.

Wird in der Liste der Dateien eine oder mehrere Dateien ausgewählt und anschließend die Schaltfläche [Importieren] geklickt, werden die ausgewählten Dateien nach ArcFlow importiert. Ist die Option "Separate Archive" ausgewählt, wird für jede Datei ein Archiv angelegt. Bei "Ein Archiv" werden alle ausgewählte Dateien in ein Archiv gespeichert. Das Archiv hat dann mehrere Anhangdateien. Der Name des oder der Archive kann in dem Eingabefeld "Name" angegeben werden. Durch Drücken der Schaltfläche kann ein anderes Quellverzeichnis ausgewählt werden. Mit der Schaltfläche wird das ausgewählte Verzeichnis erneut eingelesen.

In dem angezeigten Dialog sind die Schaltflächen [Importieren] und [Schliessen] vorhanden. Der Dialog wird nur durch Drücken der Schaltfläche [Schliessen] geschlossen. Der Befehl gibt den Wert _WinIdCancel zurück. Bei [Importieren] werden die Dateien importiert, der Dialog bleibt aber für weitere Import-Vorgänge geöffnet. Das Skript wird erst mit Schließen des Dialogs fortgeführt.

Nach der Ausführung der Anweisung befindet sich in der in (handle1) übergebenen Liste für jede importierte Datei ein Element. Folgende Informationen werden in dem Element gespeichert:

Eigenschaft Datentyp Beschreibung
Name alpha(250) Archivnummer_Anhangdateinummer
Id int Arbeitsmappennummer
Custom alpha(4096) Pfad und Dateiname der importierten Datei

Die Arbeitsweise des Dialogs kann über optionalen Parameter angepasst werden. In (alpha2) wird der Pfad, aus dem die Dateien importiert werden sollen, angegeben. Im Dialog kann der Pfad gewechselt werden. Im Parameter (handle3) kann der Deskriptor eines übergeordneten Fensters (üblicherweise die Variable gAfActParentDlg) oder 0 übergeben werden. Hat der Dialog kein Eltern-Objekt, kann er in den Hintergrund verschoben werden. Da der Dialog modal angezeigt wird, ist eine weitere Verarbeitung erst nach dem Schließen des Dialogs möglich.

In (alpha4) kann der Name einer Notiztabelle angegeben werden (siehe Einstellungen Vorlagen / Notiztabellen). Der Archivname kann dann aus einer Liste mit vorgegebenen Namen ausgewählt oder eingegeben werden.

Über die Parameter (int5) und (int6) kann die Root-Arbeitsmappe und die selektierte Arbeitsmappe angegeben werden. Es wird dann nur der Teil des Arbeitsmappenbaums angezeigt, der ab der Root-Arbeitsmappe vorhanden ist. Die in (int6) angegebene Mappe wird im Arbeitsmappenbaum ausgewählt. Der Befehl berücksichtigt die für den ArcFlow-Benutzer definierten Berechtigungen. Arbeitsmappen ohne Leserecht werden im Arbeitsmappenbaum nicht angezeigt.

Im Übergabeparameter (alpha7) kann ein Archivname vorbelegt werden. In (alpha8) und (alpha9) kann ein Prefix und ein Suffix für die Archivnamen angegeben werden. Der Parameter (logic10) gibt an, ob die Originaldateien gelöscht werden (true) oder im Verzeichnis erhalten bleiben (false).

Beispiel:

local
{
  tResult       : int;
  tCteList      : handle;
  tCteItem      : handle;
  tAbmNo        : int;
  tArcNo        : alpha(12);
  tArcFileNo    : int;
  tFileOrigin   : alpha(1024);
}

{
  tCteList # AfCteOpen(_CteList);
  tResult # AfWinImportFile(tCteList,'C:\ArcFlow\Import',gAfActParentDlg,'Documenttypes',
    sAbmReceipts,sAbmDeliveryReceipts,'Lieferschein',true);

  for tCteItem # tCteList->CteRead(_CteFirst);
  loop tCteItem # tCteList->CteRead(_CteNext,tCteItem);
  while (tCteItem != 0)
  {
    tArcNo      # AfStrGet(tCteItem->spName,'_',1);
    tArcFileNo  # CnvIA(AfStrGet(tCteItem->spName,'_',2));
    tAbmNo      # tCteItem->spId;
    tFileOrigin # tCteItem->spCustom;
    ...
  }
  tCteList->AfCteCloseAll();
  return(true);
}