Rekursive Archivierung (Document Encoder/Decder)

Informationen effizient organisieren.
Mit der Dr.DOC Komplettlösung für revisionssichere Archivierung.


  Anfragen Preise berechnen Demo anfordern Mehr über Dr.DOC erfahren


Document Decoder:
Der Zweck der rekursiven Archivierung ist das strukturierte Auslesen (Dokument zu Metadaten) mit deren Inhalten (z.B. E-Mail-Anhänge) durch regelbasierte Archivierung.
Diese Funktion ist sinnvoll für "zusammengesetzte" und „verschachtelte“ Dateiformate (z.B. E-Mails).
Beispiel: archiviere nur die PDFs aus einer E-Mail, wobei die Anhänge nicht mit „AGB“ beginnen dürfen und falls darin eine ZugFerd XML enthalten ist, übertrage die Rechnungsinformationen in die Metainfo.

Document Encoder:
Für einige Dateiformate ist es möglich, diesen Vorgang umzukehren (Metadaten zu Dokument) und aus den Metadaten wieder ein Dokument zu generieren (derzeit nur Termine, Aufgaben, Kontakte, CSV). Das findet Verwendung bei der Nutzung von CalDAV und CardDAV sowie dem Export.

Die Funktionen der rekursiven Archivierung kann mit der E-Mail-Archivierung kombiniert werden.

Jedes Dateiformat hat bestimmte Felder die über eine Dr.DOC Feldauswahl „gemappt“ werden. Der Name der Standard-Feldauswahl fängt in der Regel mit „DD_“ an.
Über die rekursiven Archivierungs Regeln können spezielle Definitionen erstellt werden.
Beispiel: Aus einer E-Mail wird eine eine ZIP-Datei gelesen, daraus soll ein PDF Dokument archiviert werden, aber die Metadaten sollen aus der Embedded XML aus der PDF-Datei geholt werden.

Dokumenten-Format Extensions Mapping Rekursiv?
PDF Dokument *.pdf, *.tiff, *.tif OCR Text über Archivspezifische INI im FORM-Verzeichnis:
[PDF_TEXT]
Fieldname=<OCR-Feldname>
Embedded Files archivieren; z.B. Xrechnung.xml oder zugferd xml rekursiv archivieren
E-Mail *.eml, *.msg Default Feldauswahl ASCII-Import-Definition „DD_EMAIL“:
  • FROM
  • FROM_NAME
  • FROM_ADDRESS
  • TO
  • TO_NAME
  • TO_ADDRESS
  • BCC
  • BCC_NAME
  • BCC_ADDRESS
  • CC
  • CC_NAME
  • CC_ADDRESS
  • SUBJECT
  • DATETIME
  • DATE
  • TIME
  • ID
  • BODY
  • BODY_TEXT
  • BODY_HTML
Anhänge und Termine
XML *.xml Default Feldauswahl ASCII-Import-Definition „DD_XML“:
Je Feld ein XPath
Der XPath darf von einem Prefix und Suffix umgeben sein. z.B. Document/Rabatt"%"
z.B. mit Optionalem Prefix, wenn kein Wert gefunden wurde:
Property1/SubProperty2"1"?
z.B. für mehrere alternative Pfade mit Property1/SubProperty2\ PropertyX/SubProperty2"1"?
CSV *.csv Default Feldauswahl ASCII-Import-Definition „DD_CSV“: Zeilen als neuen Datensatz
JSON .*json Default Feldauswahl ASCII-Import-Definition „DD_JSON“:
Syntax für Wert einer Property:
Property1/SubProperty2
z.B. mit Prefix:
Property1/SubProperty2"%"
z.B. mit Optionalem Prefix, wenn kein Wert gefunden wurde:
Property1/SubProperty2"1"?
z.B. für mehrere alternative Pfade mit "\ "
Property1/SubProperty2\>PropertyX/SubProperty2"1"?
Beispiel JSON:
{ Property1: { SubProperty2: "value" } }
Syntax für die Property von Array Elementen:
Property1/\*/SubProperty3
Beispiel JSON:
{ Property1: [ { SubProperty2: "value 1" }, { SubProperty2: "value 2" }, ] }
JPEG *.jpg, *.jpeg Feldauswahl ASCII-Import-Definition „DD_JPG“:
  • LOCATION (GPS Location)
  • DATE (Aufnahme-Datum auslesen)
  • TIME (Aufnahme-Zeit auslesen)
  • DATETIME (Aufnahme-Datum/Zeit auslesen)
ZIP *.zip Alle Dateien / Entries
Termine iCal
Ausgabe, Notiz, Journal, Termin
*.ics Feldauswahl "Kalender-Terminfelder"-Definition „DD_EVENT“ für Termine,
Feldauswahl "Kalender-Aufgabenfelder"-Definition „DD_TASK“ für Aufgaben,
Feldauswahl "Kalender-Terminfelder"-Definition „DD_NOTE“ für Notizen/Journal:
  • ID
  • Location
  • CalStartDateTime
  • CalStartDate
  • CalStartTime
  • CalEndDateTime
  • CalEndDate
  • CalEndTime
  • CalCompleted
  • Priority
  • CalSubject
  • CalUser
  • CalText
  • Categories
  • CalDuration
  • CalSeriesPeriod
  • CalRemDeadline
Kontakte V-Card *.vcf Feldauswahl ASCII-Import-Definition „DD_CONTACT“:
  • NAME
  • PRENAME
  • LASTNAME
  • TITLE
  • ORG
  • BIRTHDAY
  • EMAIL
  • EMAIL<1-5>
  • PHONE
  • PHONE<1-5>
  • FAX
  • FAX<1-5>
  • STREET
  • CITY
  • REGION
  • ZIP
  • COUNTRY
  • NOTE
  • WEB

Rekursive Archivierung: Regeln

Rekursive Archivierungsregeln (Document Encoder/Decoder Instanzen)

Um die Archivierung regelbasiert zu steuern, werden folgende Einstellungen im Dr.DOC Web Konfigurationsarchiv „node“ ausgelesen:

Namen, Typen und Vererbung

Type: ConfigWebNode
Name: config/recursive
Name: config/recursive/<Rule-Name>

Eine Vererbung über den Prototype-Namen ist möglich. Wenn Property Values aus dem Prototype geladen werden sollen, muss das „Inherit“ Flag in der Property gesetzt sein oder die Property nicht angegeben werden.

Alle Properties haben den Type ConfigWebNode.

Rekursive Archivierungsregeln sind Instanzen des jeweiligen Document Encoders/Decoders.
Die Rekursiven Archivierungsregeln (Document Encoder/Decoder Instanz) beziehen sich immer auf einen bestimmten Datei/Dokument-Typ (Document Encoder/Decoder), der über die Property Proto_Extension oder Proto_Type gesteuert werden kann.
Der Document Encoder/Decoder definiert, wie Felder grundsätzlich "gemappt" werden sollen (eine E-Mail hat einen Betreff und ein PDF Dokument OCR Text).
Die Document Encoder/Decoder Instanzen definieren, wann welches Dokument wie archiviert werden soll. Die Steuerung erfolgt durch Feldauswahlen (z.B. Suchvorlage oder Feldvorbelegung) und Dateinamen (z.B. Extension).
Sollte beim Archivieren keine passende Document Encoder/Decoder Instanz gefunden werden, wird der entsprechende Document Encoder/Decoder Prototyp gewählt.

Rekursion:
Eine Document Encoder/Decoder Instanz kann über die Property Recursive weitere Document Encoder/Decoder Instanzen definieren. Sollte ein Dokument weitere Dokumente "embedded" haben (z.B. Anhänge in einer E-Mail, Embedded XML in einer PDF, Dateien in einer ZIP), werden diese Dokumente durchlaufen, mit den in der Property Recursive angegebenen Document Encoder/Decoder Instanzen.
Über die Property Action kann die Verarbeitung von Dokument und Meta-Info gesteuert werden.

Sicherheit und Berechtigungen

Aus Sicherheitsgründen sollte der Datensatz nur für den Server und berechtigte Administratoren zugreifbar sein, indem das Feld "User" auf den Wert "System-Group" gesetzt wird.

Eigenschaften

Property Type Property Name Beschreibung Mögliche Werte
BoolWebNode Enabled Gibt an, ob die Regel aktiv ist. Wenn nichts angegegeben ist, wird der Wert "true" angenommen. true, false
ConfigWebNode Proto_Type Document-Encoder/Decoder Typ
ConfigWebNode Proto_Extension z.B. "*.eml|*.msg“ Wählt den Document-Encoder/Decoder über die File-Extension des zu archivierenden Dokuments.Siehe "Rekursive Arhcivierung" / "Document-Encoder Implementierungen"
ConfigWebNode Selector_UsermanagerName Usermanager-Name oder voller Pfad zur BVD Datei
ConfigWebNode Selector_ArchiveName Archiv-Name oder voller Pfad zur KOMM\SERVER\*.da Datei
ConfigWebNode Selector_Filename Regel für Dateiname (z.B. *.eml|*.msg)
ConfigWebNode Selector_FieldSelectionNames Pro Zeile ein Wert.Name der Feldauswahl(en), mit der das Dokument verglichen werden soll.
BoolWebNode Selector_FieldSelectionAND - „true“: gibt an, dass alle Selector_FieldSelectionNames „wahr“ sein müssen
- „false“: es genügt, wenn nur eine „wahr“ ist
true, false
ConfigWebNode Selector_FieldSelectionCaseSensitive - „true“: beim Vergleich Groß-/Kleinschreibung beachten
- „false“: Groß-/Kleinschreibung ignorieren
true, false
ConfigWebNode Selector_FieldSelectionType Feldauswahl-Typ festlegen IMPORT_ASCII, EXPORT_ASCII, FIELDCONTENT, CAL_APPOINTMENT, CAL_TASK, PRESET, SEARCHTEMPLATE
BoolWebNode Selector_FieldSelectionGetMetaFromDoc Sollte nur "true" sein, wenn eine Feldauswahl angegeben wurde und sich der Wert der Meta-Info für die Feldauswahl-Prüfung, aus dem Inhalt des Dokuments ableitet.
Es wird dieser Document Encoder zum Laden der Metas-Info aus dem Dokument verwendet, mittels MapFieldSelectionName und MapFieldSelectionType.
true, false
ConfigWebNode Action Die Property "Action" wird nur angewendet, bei rekursiver Archivierung; also wenn "Recursive" vom Aufrufer definiert wurde.
Damit kann die Verarbeitung von Dokument und Meta-Info gesteuert werden.
-> Skip: überspringen: Meta-Info und Dokument ignorieren. Document Encoder unter "Recursive" verden verarbeitet. Beispiel: E-Mail ignorieren aber Anhänge archivieren.
-> None: kein neues Dokument erstellen und Meta-Info/Profildaten in den aufrufenden Datensatz laden, aus der Meta-Info aus diesem Dokument (je nach Document Encoder). Es wird das erste Dokument in der Kette der Document Encoder erstellt, wenn alle rekursiven Document Encoder die Action None haben.
-> CreateDocument: Neues Dokument erstellen, mit neuer Meta-Info.
-> CreateDocumentMerge: Nur angewendet, wenn der Aufrufer (rekursiv) das gleiche Archiv hat. Neues Dokument erstellen, aber Meta-Info/Profildaten vom Aufrufer übernehmen. Dateinamen Autofleder F und FO sowie Dateinamen Variablen (aus Feldvorbelegung) %F% und %FO% werden zurückgesetzt, damit der Dateiname des rekursiven Dokuments verwendet wird. Z.B. um für einen E-Mail-Anhang (dieser), die Abesender E-Mail-Adresse aus der E-Mail-Nachricht (Aufrufer) zu übernehmen.
None, Skip, CreateDocument, CreateDocumentMerge
ConfigWebNode Action_FieldPreselectionName Name der Feldvorbelegung für das Erstellen neuer Dokumente/Datensätze. Es können mehrere Meta-Infos angegeben werden zur Kombination.
Es werden keine Feldwerte überschrieben.
ConfigWebNode MapFieldSelectionName Name der Mapping-Feldauswahl
ConfigWebNode MapFieldSelectionType Typ der Mapping Feldauswahl IMPORT_ASCII, EXPORT_ASCII, FIELDCONTENT, CAL_APPOINTMENT, CAL_TASK, PRESET, SEARCHTEMPLATE
ConfigWebNode Recursive Pro Zeile ein Wert.Name(n) der Rekursiven Archivierungs-Einstellung(en) die für Anhänge dieses Dokuments durchlaufen werden sollen.z.B. "config/recursive/RE PDF CreateDocument".
ConfigWebNode Recursive_ExecuteAll Default: false
Alle rekursiven Document Encoder ausführen, welche die Kriterien erfüllen (Enabled, Selected_ etc.).
Also NICHT beim ersten erfolgreichen Document Encoder abbrechen.
true, false
ConfigWebNode Recursive_ExecuteDefault Default: false
Nachdem alle recursiven Document Encoder aus der Property Recursive durchlaufen wurden, ggf. zusätzlich die default/Standard/Prototype Document Encoder ausführen (z.B. DD_EMAIL, DD_TASK, DD_CONTACT, DD_XML, DD_JSON etc.)
true, false

Daraus ergibt sich z.B. folgender Tree and Document Encodern:

  • "DrDoc.LibCore.DocumentEncoderProvider" (Count: 14)
    • "DrDoc.LibCalendar.EventIcsDocumentEncoder" (Count: 2)
      • "config/recursive/Document Create"
      • "config/recursive/Event ICS"
    • "DrDoc.LibCalendar.TaskIcsDocumentEncoder" (Count: 2)
      • "config/recursive/Document Create"
      • "config/recursive/Task ICS"
    • "DrDoc.LibCalendar.NoteIcsDocumentEncoder" (Count: 2)
      • "config/recursive/Document Create"
      • "config/recursive/Note ICS"
    • "DrDoc.WebServer.ZipDocumentEncoder" (Count: 3)
      • "config/recursive/Document Create"
      • "config/recursive/RE ZIP [Recursive: 1]"
      • "config/recursive/RE ZIP CreateDocument [Recursive: 1]"
    • "DrDoc.WebServer.ImageDocumentEncoder" (Count: 1)
      • "config/recursive/Document Create"
    • "DrDoc.WebServer.TiffDocumentEncoder" (Count: 1)
      • "config/recursive/Document Create"
    • "DrDoc.WebServer.JpegDocumentEncoder" (Count: 1)
      • "config/recursive/Document Create"
    • "DrDoc.LibEmail.EmailOutlookDocumentEncoder" (Count: 6)
      • "config/recursive/RE E-Mail Verkauf [Recursive: 3]"
      • "config/recursive/Event E-Mail [Recursive: 1]"
      • "config/recursive/E-Mail-Rechnung (Dokument) [Recursive: 2]"
      • "config/recursive/Document Create"
      • "config/recursive/Document E-Mail Attachments only [Recursive: 14]"
      • "config/recursive/RE E-Mail Einkauf [Recursive: 3]"
    • "DrDoc.LibContact.VCardDocumentEncoder" (Count: 1)
      • "config/recursive/Document Create"
    • "DrDoc.LibEmail.EmailEmlDocumentEncoder" (Count: 6)
      • "config/recursive/RE E-Mail Verkauf [Recursive: 3]"
      • "config/recursive/Event E-Mail [Recursive: 1]"
      • "config/recursive/E-Mail-Rechnung (Dokument) [Recursive: 2]"
      • "config/recursive/Document Create"
      • "config/recursive/Document E-Mail Attachments only [Recursive: 14]"
      • "config/recursive/RE E-Mail Einkauf [Recursive: 3]"
    • "DrDoc.WebServer.CsvDocumentEncoder" (Count: 2)
      • "config/recursive/Bank CSV"
      • "config/recursive/Document Create"
    • "DrDoc.WebServer.PdfDocumentEncoder" (Count: 3)
      • "config/recursive/Document Create"
      • "config/recursive/RE PDF [Recursive: 1]"
      • "config/recursive/RE PDF CreateDocument [Recursive: 1]"
    • "DrDoc.WebServer.BmpDocumentEncoder" (Count: 1)
      • "config/recursive/Document Create"
    • "DrDoc.WebServer.XmlDocumentEncoder" (Count: 3)
      • "config/recursive/Document Create"
      • "config/recursive/RE XML"
      • "config/recursive/RE XML CreateDocument"
Diese Website verwendet aus technischen Gründen Cookies für das Caching bzw. Bereitstellen von Session-bezogenen Inhalten. Diese Website verwendet Cookies und nutzt Website Tracking-Technologien von Dritten, um ihre Dienste anzubieten, stetig zu verbessern und Werbung entsprechend der Interessen der Nutzer anzuzeigen.
Ich bin mit der Datenschutzerklärung einverstanden und kann meine Einwilligung jederzeit mit Wirkung für die Zukunft widerrufen oder ändern.
Aus Gründen der Vernunft und besseren Lesbarkeit verzichten wir auf die gleichzeitige Verwendung der Sprachformen männlich und weiblich. Sämtliche Personenbezeichnungen gelten daher gleichermaßen für alle Geschlechter.