Cold Tags
Allgemein
Eine Cold-Datei ist eine XML-Datei mit der Endung .cold. Sie muss im Format UTF-8 gespeichert werden. Groß- und Kleinschreibung spielt bei den Tag- und Attributnamen keine Rolle. In jedem Wert können Cold Funktionen verwendet werden.
Häufige Fehler im XML werden beim Import automatisch korrigiert und im Cold-Protokoll vermerkt: ein < oder & innerhalb eines Wertes, ' ohne abschließendes Semikolon und Attributwerte ohne Anführungszeichen. Ist die Datei trotzdem kein gültiges XML (z. B. weil ein Tag nicht geschlossen ist), wird sie nicht importiert und das Protokoll meldet "ungültiges XML".
Aufbau
Es gibt zwei Formen der Cold-Datei:
- Verzeichnis-Cold (
<CP_DIR>): beschreibt die Beschlagwortung für alle Dateien eines Verzeichnisses. Für jede Datei wird ein eigener Container angelegt. So aufgebaut sind die Cold-Dateien der Importarten "Mehrere Cold-Dateien in einem Verzeichnis" und "Eine Cold-Datei mit Angabe von Verzeichnissen". - Container-Cold (
<CP_CONTAINER>): beschreibt genau einen Container mit einem oder mehreren Dokumenten. So aufgebaut sind die Cold-Dateien der Importart "Mehrere Container-Cold-Dateien in einem Verzeichnis".
<?xml version="1.0" encoding="utf-8"?>
<CP_DMSCOLD>
<CP_DIR Value="Rechnungen" Import="yes" Delete="yes">
<Containername Value="Rechnung %FILENAMEWITHOUTEXTENSION%"/>
<Company Value="NHT"/>
<State Value="Erledigt"/>
<Category Value="Auftragswesen\Rechnungen"/>
<Property Name="Rechnungsnummer" Value="%FILENAMEWITHOUTEXTENSION%"/>
<Link Type="Objekt" Name="%FILENAME(L, 5)%"/>
<Permission>
<All Read="true" Download="true" Checkin="true" Checkout="true"/>
</Permission>
</CP_DIR>
</CP_DMSCOLD>
<?xml version="1.0" encoding="utf-8"?>
<CP_DMSCOLD>
<CP_CONTAINER Delete="yes">
<Containername Value="Mietvertrag Top 1"/>
<Company Value="NHT"/>
<Category Value="Verträge\Mietverträge"/>
<Link Type="Einheit" Name="00101" Parent="00004" Parenttype="Objekt"/>
<Document>
<Item Filename="Mietvertrag.pdf"/>
<Item Filename="Anhang.pdf" Name="Hausordnung"/>
</Document>
</CP_CONTAINER>
</CP_DMSCOLD>
CP_DIR
Das Tag <CP_DIR> kann mehrfach vorkommen und auch verschachtelt werden, um Unterverzeichnisse unterschiedlich zu beschlagworten.
| Attribut | Bedeutung | Standard |
|---|---|---|
| Value | Verzeichnis relativ zum Ort der Cold-Datei. Leer bedeutet das Verzeichnis der Cold-Datei selbst. | leer |
| Import | Mit no werden die Dateien dieses Verzeichnisses nicht importiert. | yes |
| Delete | Die importierten Dateien werden nach dem erfolgreichen Einchecken gelöscht (siehe unten). | yes |
| subdirs | Mit yes werden auch alle Unterverzeichnisse importiert. | no |
| include | Nur Dateien, die diesem Muster entsprechen, z. B. *.pdf. | *.* |
| exclude | Dateien, die diesem Muster entsprechen, werden nicht importiert. | leer |
| Inherit | Übernimmt die Beschlagwortung des übergeordneten <CP_DIR> (siehe unten). | no |
| ReplaceAllDocuments | Bei einem über die Suche gefundenen Container werden alle Dokumente ersetzt (siehe Search). | no |
| SplitEmail | E-Mails (.msg, .eml) werden mit ihren Anhängen als eigene Dokumente eingecheckt. | no |
| CheckMode | Umfang der Pflichtfeldprüfung beim Einchecken (siehe unten). | Cold |
Statt yes/no kann auch true/false geschrieben werden.
Inherit übernimmt die Beschlagwortung des übergeordneten <CP_DIR>. Mit yes oder all wird alles übernommen, mit onlygeneral nur die allgemeinen Angaben (Name, Mandant, Status usw.) ohne Kategorien, Verknüpfungen, Eigenschaften, Abteilungen und Berechtigungen. Einzelne Bereiche lassen sich ausschließen: nocategories, nolinks, noproperties, nosections, nopermissions. Mehrere Angaben werden mit Strichpunkt getrennt, z. B. Inherit="all;nolinks;noproperties".
Delete: Gelöscht wird nur, was erfolgreich eingecheckt wurde. Im Cold-Import-Dialog kommen die Dokumente in den Papierkorb, beim Actionservice-Job werden sie endgültig gelöscht. Eine Cold-Datei, die neben genau einer Datei liegt und nur diese beschreibt, kommt ebenfalls in den Papierkorb. Eine Cold-Datei mit Angabe von Verzeichnissen bleibt dagegen immer erhalten.
CheckMode legt fest, welche Pflichtfelder beim Einchecken geprüft werden:
Cold(Standard): Mandant sowie die Pflichteigenschaften und Pflichtverknüpfungen der Kategorie.Normal: wie beim manuellen Einchecken, zusätzlich muss der Container Dokumente enthalten.Lowestbzw.None: nur die Grundprüfungen, keine Pflichtfelder der Kategorie.
CP_CONTAINER
| Attribut | Bedeutung | Standard |
|---|---|---|
| Delete | Die Dokumente werden nach dem erfolgreichen Einchecken gelöscht, ebenso die Cold-Datei. | yes |
| ReplaceAllDocuments | Bei einem über die Suche gefundenen Container werden alle Dokumente ersetzt. | no |
| SplitEmail | E-Mails werden mit ihren Anhängen als eigene Dokumente eingecheckt. | no |
| CheckMode | wie bei CP_DIR | Cold |
Die Dokumente des Containers stehen im Tag <Document>, je Dokument ein <Item>:
| Attribut | Bedeutung |
|---|---|
| Filename | Dokument (Pflicht). Ein relativer Pfad bezieht sich auf das Verzeichnis der Cold-Datei. |
| Name | Name, unter dem das Dokument eingecheckt wird (auch CheckinName oder AliasName). Die Endung des Dokuments wird übernommen. |
| Tiff, Pdf, Thumb, Annotation | Zusätzliche Dateien zum Dokument (TIFF- bzw. PDF-Fassung, Vorschaubild, Anmerkungen). |
Fehlt eine angegebene Datei, wird sie mit einer Warnung im Cold-Protokoll übergangen.
Beschlagwortung
Die folgenden Tags stehen innerhalb von <CP_DIR> bzw. <CP_CONTAINER>. Der Wert steht immer im Attribut Value.
| Tag | Bedeutung |
|---|---|
| Containername | Name des Containers |
| Number | Containernummer |
| Company | Mandant (Bezeichnung, ID oder Kürzel). Ohne Angabe wird der angemeldete Mandant verwendet. |
| Subject | Betreff |
| Catchword | Stichwort |
| Mailingtype | Postart |
| Originkind | Entstehungsart |
| Filetype | Dateityp |
| State | Status |
| Pool | Pool |
| Source | Absender |
| Target | Empfänger |
| Concept | Entwurf (yes/no) |
| CreateDate | Erstellungsdatum des Containers |
| ChangeDate | Änderungsdatum des Containers |
| Category | Kategorie, mehrfach möglich. Unterkategorien werden mit \ getrennt, z. B. Verträge\Mietverträge. Auch Kategorien, die im Dialog nicht auswählbar sind, können zugeordnet werden. |
| Section | Abteilung, mehrfach möglich. Ist die angegebene Benutzergruppe keine Abteilung, wird sie trotzdem zugeordnet und das Protokoll meldet eine Warnung. |
| Property | Eigenschaft, mehrfach möglich: <Property Name="Rechnungsnummer" Value="4711"/> |
| Link | Verknüpfung, mehrfach möglich (siehe unten) |
| Permission | Berechtigungen (siehe unten) |
Link – Verknüpfung mit einem Knoten:
| Attribut | Bedeutung |
|---|---|
| Type | Knotentyp, z. B. Objekt, Einheit, Person, Kreditor (Pflicht) |
| Name | Bezeichnung oder ID des Knotens, z. B. die Objektnummer (Pflicht) |
| Number | Alternativ zu Name: die Knotennummer |
| Function | Knotenfunktion |
| Parent, Parenttype | Übergeordneter Knoten und dessen Typ, wenn der Name allein nicht eindeutig ist, z. B. eine Einheit innerhalb eines Objekts |
Permission – Berechtigungen auf den Container. Innerhalb von <Permission> stehen:
<All .../>für alle Benutzer,<User Value="..." .../>für einen Benutzer (Name oder ID),<Group Value="..." .../>für eine Benutzergruppe (Name oder ID).
Die Rechte werden mit den Attributen Read, Download, Checkin und Checkout (true/false) vergeben.
<Permission>
<All Read="true" Download="true" Checkin="false" Checkout="false"/>
<Group Value="DMS_NHT_BENUTZER" Read="true" Download="true" Checkin="true" Checkout="true"/>
</Permission>
Search
Mit <Search> wird vor dem Anlegen eines neuen Containers geprüft, ob bereits ein passender Container vorhanden ist. Wird einer gefunden, wird kein neuer Container angelegt, sondern der gefundene in einer neuen Version aktualisiert. Wird dort ein Dokument mit dem gleichen Dateinamen gefunden, wird eine neue Version dieses Dokuments erstellt. Gibt es noch kein Dokument mit diesem Namen, wird es zusätzlich eingefügt – im Container gibt es dann zwei Dokumente. Eine Datei, die mit identischem Inhalt bereits im Container liegt, wird nicht nochmals eingecheckt; das Protokoll meldet "Die Datei … ist identisch".
Mit ReplaceAllDocuments="true" (bei CP_DIR bzw. CP_CONTAINER) werden dagegen alle Dokumente im Container ersetzt – unabhängig vom Dateinamen. Die neueste Version enthält dann ausschließlich die neuen Dokumente, die alten bleiben in der vorherigen Version erhalten.
| Attribut von Search | Bedeutung | Standard |
|---|---|---|
| Enabled | Mit false wird die Suche ausgeschaltet. | true |
| Overwrite | Mit true wird beim gefundenen Container die gesamte Beschlagwortung durch die der Cold-Datei ersetzt, sonst wird sie ergänzt. | false |
Innerhalb von <Search> stehen die Suchbedingungen. Gesucht werden kann nach Number, Containername, Subject, Catchword, Source, Target, Company, Mailingtype, Originkind, State, Filetype, Pool, Category, Section, Property (mit Name und Value) und Link (mit Type, Name, Parent und Function wie bei der Beschlagwortung).
| Attribut einer Bedingung | Bedeutung |
|---|---|
| Value | Gesuchter Wert |
| Operator | Vergleich: gleich (Standard), <>, >, <, >=, <=, LIKE, NOT LIKE, IS NULL, IS NOT NULL |
| Link | Verknüpfung mit der vorherigen Bedingung: AND (Standard) oder OR |
Mit <Bracket> werden Bedingungen geklammert, das Attribut Link gilt dann für die ganze Klammer.
<Search>
<Property Name="ExportID" Value="KR-Saldenbestätigung_%FILENAMEWITHOUTEXTENSION%"/>
<Bracket Link="AND">
<Category Value="Auftragswesen\Saldenbestätigungen"/>
<Category Value="Auftragswesen\Mahnungen" Link="OR"/>
</Bracket>
</Search>
siehe auch: Cold Funktionen in der XML Datei, Cold Platzhalter