Beispielskripte für Indexierungsprofile
Nachfolgend werden Beispielskripte für das Extrahieren von Dateien mithilfe eines Indexierungsprofils aufgeführt. Sie können diese modifizieren und verwenden, um die Datenextraktion zu verbessern.
Eine neue Akte anlegen
dim IxDataCaseHeader
dim CreateParams(0)
CreateParams(0) = "IndexData"
dim CreateParamsVar
CreateParamsVar = CreateParams
set IxDataCaseHeader = CreateThereforeObject(CreateParamsVar)
IxDataCaseHeader.SetCaseDef("TestCase")
IxDataCaseHeader.SetField "CaseHeaderData1", "My case header data 1"
IxDataCaseHeader.SetField "CaseHeaderData2", "My case header data 2"
IxDataCaseHeader.SetField "CaseNumberData1", 9001
nCaseNo = IxDataCaseHeader.SearchCase(true)
if nCaseNo > 0 then
SetCaseNo(nCaseNo)
elseif nCase = 0 then
nCreatedCaseNo = IxDataCaseHeader.CreateCase
SetCaseNo(nCreatedCaseNo)
elseif nCase = -1 then
ScriptError("Multiple cases found.")
end if
Unterschiedliches Datumsformat
Wenn das in den Dokumenten verwendete Datumsformat von dem Datumsformat im Therefore™ System abweicht, können Sie die ToDate-Funktion verwenden. Wenn die Dokumente beispielsweise Datumsangaben im Format TT.mm.JJJJ enthalten, das System jedoch ein anderes Format verwendet, können Sie die Datumsangaben mit der folgenden Funktion extrahieren:
ToDate(Extract("Invoice Date"), "DD.MM.YYYY")
Dateien aus einem Ordner extrahieren
FilesToSave = "<path or relative path to the file>"
In einer XML-Datei definierte Dateien extrahieren
FilesToSave = ExtractList ("FileName")
E-Signatur-Dokumente basierend auf ihrem Status verarbeiten
Dokumente können basierend auf ihrem Signaturstatus verarbeitet werden. Bitte beachten Sie, dass nicht alle Anbieter die gleichen Werte für Signature.Status haben.
In diesem Beispiel wird ein Schlüsselwortwörterbuch mit den Schlüsselwörtern "Ausstehend", "Signiert" und "Abgelehnt" definiert. Im Feld "Zuweisung" wird "keyword" verwendet.
keyword = "Pending"
if Signature.Status == "completed" then
keyword = "Signed"
elseif Signature.Status == "declined" then
keyword = "Declined"
end if
Rechnungsposten importieren
Rechnungsposten können mithilfe eines Skripts als Tabelle extrahiert werden. Das folgende Skript erstellt eine Tabelle mit dem Namen "Mytable" und zwei Spalten: Text und Zahl.
<myTable>
<Text> Text1 </Text>
<Number> 1 </Number>
</myTable>
<myTable>
<Text> Text2 </Text>
<Number> 2 </Number>
</myTable>
Verwenden Sie die folgenden Zuweisungen:
ExtractListTable("Text,"MyTable")
ExtractListTable("Number","MyTable"
Namespaces
Namespaces aus XML-Dateien extrahieren
dim namespaces(2)
namespaces(0) = "xmlns:udt='urn:un:unece:uncefact:data:standard:UnqualifiedDataType:15'"
namespaces(1) = "xmlns:ram='urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:12'"
namespaces(2) = "xmlns:rsm='urn:ferd:CrossIndustryDocument:invoice:1p0'"
SetNamespaces(namespaces)
Standard-Namespaces benennen
Wenn eine Variable mithilfe eines Skripts definiert wird, kann sie als Zuweisung verwendet werden, indem Sie den Namen der Variablen eingeben.
namespaces(2) = "xmlns:def='urn:oasis:names:specification:ubl:schema:xsd:Invoice-2'"
Bezugnahme auf Namespaces während der Extraktion
ExtractListXPath("/rsm:CrossIndustryDocument/rsm:HeaderExchangedDocument/ram:ID")
Es sollte keine Datei extrahiert werden