AfAbmArcLstGet
Mit der Funktion lassen sich alle Archive ermitteln, die sich in einer übergebenen Arbeitsmappe befinden. Die Arbeitsmappen-Nummer wird über den Parameter (int1) übermittelt.
Im zweiten Parameter muss der Deskriptor einer leeren Cte-Liste übergeben werden, die vor dem Aufruf der Funktion über den Befehl AfCteOpen() angelegt wurde.
Nach dem Aufruf der Funktion ist pro Archiv ein Objekt in der Cte-Liste vorhanden. Die Objekte können geladen und über die Eigenschaft "Name" die Archiv-Nummer ausgelesen werden. Wurde im Parameter (logic3) true übergeben, steht in der Eigenschaft "Custom" zusätzlich die Beschreibung des Archivs.
![]() |
Wird ein ungültiger Deskriptor übergeben, kommt es zu einem Laufzeitfehler. |
Bei der Verwendung mit der Application Remote Control werden die Parameter mit folgenden Namen übergeben:
/AbmNr | Nummer der Arbeitsmappe |
/ExtendedPara | Erweiterte Daten ermitteln |
/RsltPath | Pfad und Name der externen Datei, in der das Ergebnis gespeichert wird. |
Zum Beispiel:
/user=admin /password=troja /action=fnc /fnc=AfAbmArcLstGet /AbmNr=600448 /ExtendedPara=1 /RsltPath=c:\temp\AFAPIRES.TXT
In der Ergebnisdatei wird in der ersten Zeile die übergebene Anweisung geschrieben. In der zweiten Zeile wird der Rückgabewert der Funktion gespeichert. In den folgenden Zeilen werden die Archivnummern der gefundenen Archive aufgelistet. Werden die erweiterten Daten ermittelt, stehen die zusätzlichen Informationen in der gleichen Zeile durch # getrennt.
Beispiel:
local { tErr : int; tAbmNo : int; tArcList : handle; tArcItem : handle; tArcNo : alpha(12); tArcDesc : alpha(250); } { ... // Read all archives in a workfolder tArcList # AfCteOpen(_CteList); if (tArcList > 0) { tErr # AfAbmArcLstGet(tAbmNo,tArcList,true); if (tErr = _ErrOk) { for tArcItem # tArcList->CteRead(_CteFirst); loop tArcItem # tArcList->CteRead(_CteNext,tArcItem); while (tArcItem > 0) { tArcNo # tArcItem->spName; tArcDesc # tArcItem->spCustom; ... } } else { // Error handling AfAbmArcLstGet() ... } tArcList->AfCteCloseAll(); } else { // Error handling for AfCteOpen() ... } ... }
Neben den allgemeinen Fehlerwerten können folgende Werte zurückgegeben werden:
Konstante | Wert | Bedeutung |
_ErrOk | 0 | ok - kein Fehler aufgetreten |
sAfErrItemLimit | -20015 | Die maximale Anzahl an übertragbaren Elementen (ca. 5000) wurde überschritten |
sAfErrNoRecAbm | -20026 | Die übergebene Arbeitsmappe existiert nicht |
Für weitere CONZEPT 16-spezifische Rückgabewerte siehe die aktuelle CONZEPT 16-Hilfe.