Durchsuchbare Dokumentation aufrufen

Zurück zur Dokumentationsübersicht

metadata-collection.yml definieren

Die Datei metadata-collection.yml enthält eine Sammlung von Metadaten. Sie definieren in der Datei Ihre gewünschten Metadaten, die Sie in verschiedenen Bereichen in agorum core verwenden möchten. Den Verwendungszweck geben Sie direkt in der Datei an. So können Sie definieren, ob Sie die Metadaten etwa für docform oder für die Suche (agorum core information center) verwenden möchten.

Der Vorteil der metadata-collection.yml ist, dass Sie alle Metadaten an einer einzigen zentralen Stelle pflegen, nämlich in der Datei. Sie müssen die Metadaten nicht mühsam von Hand für etwa docform oder für die Suche anlegen. Ein einziger Klick reicht, damit das System die Daten automatisch erzeugt. Das ist primär bei neuen Projekten sehr praktisch.

Achtung: Datenverlust durch manuelles Ändern von Dokumententypen oder Metadaten. Wenn Sie mit der metadata collection arbeiten, dürfen Sie nach Konfiguration der Dateien metadatay.yml und metadata-collection.yml keine manuellen Änderungen an Ihren Dokumententypen oder Metadaten durchführen, da das System diese Änderungen sonst überschreibt. Arbeiten Sie ab diesem Zeitpunkt nur noch mit der metadata collection und nicht mehr mit dem Metadaten Designer oder dem Editor für die docform-Dokumententypen.

Die Datei „metadata.yml“ befüllen


Im ersten Schritt befüllen Sie die Datei metadata.yml in Ihrem Projektordner mit Metadaten, da Sie dem System mitteilen müssen, welche Metadaten existieren. Die Datei finden Sie im Unterordner yml des Projektordners.

Hinweis: Haben Sie noch kein Projekt angelegt, legen Sie über den agorum core template manager ein solches an.

Die Datei „metadata-collection.yml“ anlegen


Hinweis: Dieser Schritt ist nur notwendig, sofern Sie kein neues Projekt angelegt haben. Haben Sie ein neues Projekt angelegt, befindet sich die Datei metadata-collection.yml bereits im Unterordner yml und Sie müssen die Datei lediglich befüllen (siehe Datei „metadata-collection.yml“ mit Metadaten befüllen).

Nach der Anlage der Metadaten in der Datei metadata.yml legen Sie die Datei metadata-collection.yml manuell in Ihrem Projektordner an. In dieser Datei teilen Sie dem System mit, für welche Bereiche in agorum core Sie Ihre definierten Metadaten verwenden möchten.

  1. Öffnen Sie links in der Seitenleiste Explorer.
  2. Öffnen Sie den Pfad:
    Eigene Dateien/Administration/customers/[Projektordner]/yml
  3. Öffnen Sie mit einem Rechtsklick das Kontextmenü und wählen Sie dann Neu > YML-Dokument.
  4. Vergeben Sie folgenden Dateinamen:
    metadata-collection

    Hinweis: Der Dateiname muss mit metadata-collection beginnen. Sie können auch etwa folgenden Dateinamen vergeben:

    metadata-collection-sample
    

Die Datei „metadata-collection.yml“ mit Metadaten befüllen


Anschließend befüllen Sie die Datei metadata-collection.yml mit Ihren eigenen Metadaten.

Aufbau der Datei

# Defaults
# _group: Angabe des Projektnamens
# _prefix: Angabe des Präfix des Projekts
_group: agorum.metadata.collection.test
_prefix: agorum_metadata_collection_test_
_default:
  type: string

# Der tatsächliche Name ist dann: agorum.metadata.collection.test_collection_04
# Soll der _prefix nicht verwendet werden, muss ein - vorangestellt werden.
collection_04:
  displayName: Test Metadaten Sammlung 04
  usage:
    - docform
    - acic

  # acl
  acl: published

  acic:
    # acl
    acl: private

  # Die Metadaten (items) der Kollektion. Werden keine zusätzlichen Angaben gemacht, so werden die Definitionen
  # aus der Metadaten-Definition (metadata.yml) verwendet.
  # Auch hier wird bei allen Feldern das Präfix _ vorangestellt. Sofern kein Präfix vorangestellt werden soll, kann ein "-" direkt vor das jeweilige Metadatum gesetzt werden (etwa -ag_tags)
  items:
    - invoice_number:
    - invoice_date:
    - invoice_items:
      # wenn hier keine items angegeben sind, werden alle items verwendet, die in metadata invoice_items definiert sind.
      items:

Hinweis: Wenn Sie ein - vor das Metadatum setzen, wird das Präfix nicht vorangestellt. Dadurch können Sie auf Metadaten referenzieren, die ein anderes Präfix besitzen (etwa -ag_tags).

Berechtigungen (acl)


So würde etwa bei usage=acic der Filter in der Suche ausgeblendet werden, wenn der Benutzer keinen Zugriff über die ACL hat.

Bei usage=form würde die Collection bei der Bearbeitungsmaske in der Übersicht nicht zur Verfügung gestellt werden. Bei usage=docform hat acl keine Auswirkung.


Beispiel

# ...

collection_04:
  # acl   
  # collection grundsätzlich für alle Benutzer sichtbar machen
  acl: published 

usage:
    - form
    - acic

form:
    # acl
    # form nur für Benutzer einblenden, die über die ACL ACL_Buchhaltung berechtigt sind
    acl: ACL_Buchhaltung

acic:
    # acl
    # information center für alle Benutzer ausblenden
    acl: private

# ...

Weitere ACLs

Für die agorum core metadata collection existieren neben dem Parameter acl globale ACLs, mit denen Sie Berechtigungen steuern.

ACL Beschreibung
ACL_agorum.metadata.collection Ohne Funktion
ACL_agorum.metadata.collection.overview Steuert, welche Benutzer in der Detailansicht die Registerkarte Übersicht sehen.

Im Standard sehen alle Benutzer diese Registerkarte.

So finden Sie die ACLs:

  1. Öffnen Sie links in der Seitenleiste Administration und dann ACLs/Rechte.
  2. Öffnen Sie den Pfad:
    agorum.metadata.collection

Verwendungsarten (usage)


Zur Beschreibung der Verwendungsarten (usage) siehe Verwendungsarten (usage) der metadata-collection.yml.

Metadatum „Metadaten-Kollektion“ (ag_metadata_collection)


Wenn Sie als usage docform und acic angeben, zeigt die Suche im Filter nur diejenigen Dokumente an, die zuvor durch docform und dem jeweiligen Dokumententyp erfasst wurden. Diese Dokumente erhalten dann ein spezielles Metadatum namens Metadaten-Kollektion (interner Name: ag_metadata_collection). Der Wert dieses Metadatums setzt sich aus dem angegebenen Präfix und der Collection zusammen, die Sie in der Datei metadata-collection.yml angeben.


Beispiel

Der Wert des Metadatums Metadaten-Kollektion lautet nun:

agorum_metadata_collection_test_ collection_04

Dokumente mit gesetztem Metadatum „Metadaten-Kollektion“ (ag_metadata_collection) in der Suche finden

Wenn Sie Dokumente in der Suche zur jeweiligen Collection finden möchten, müssen diese Dokumente das Metadatum Metadaten-Kollektion und als Wert die jeweilige Collection gesetzt haben.

Hinweise:

  • docform setzt das Metadatum Metadaten-Kollektion (ag_metadata_collection) mit der jeweiligen Collection automatisch, wenn es Dokumente erfasst.

  • Das System setzt das Metadatum außerdem automatisch, wenn in der form eine Collection ausgefüllt und in dieser form Werte gespeichert werden.


Beispiel

Sie verwenden folgende metadata-collection.yml:

# global
_group: musterfirma
_prefix: musterfirma_

#defaults
_default:
  type: string

daten:
  displayName: Beispiel Daten
  usage:
    - acic
    - form

  form:
    showEmpty: true

  items:
    - data_type: # Bericht Typ
    - data_description: # Bericht Beschreibung
    - data_create_date: # Bericht erstellt am
      form:
        showEmpty: true

Wenn Sie diese Collection verwenden, setzt das System folgendes Metadatum auf den Dokumenten, einzusehen in der Registerkarte Objektinfo des jeweiligen Dokuments:

Gesetztes Metadatum Metadata Kollektion auf dem Dokument

Das Metadatum setzt sich aus dem angegebenen _prefix musterfirma_ und dem Namen der Collection (hier daten) zusammen.

Wenn Sie in der Suche den Filter Beispiel Daten (displayName der Collection) wählen, sehen Sie automatisch alle Dokumente dieser Collection, die dieses Metadatum gesetzt haben.

Zusätzlich wird in der Registerkarte Übersicht des Dokuments die gesetzte Collection vorausgewählt angezeigt.

Hinweis: Sie können immer nur eine Collection auf einem Dokument setzen.

Registerkarte Übersicht mit vorausgewählter Collection

Beispiele


siehe Beispiele für die metadata-collection.yml

Metadaten erzeugen


Wenn Sie die Datei metadata-collection.yml mit Ihren gewünschten Metadaten befüllt haben:

  1. Klicken Sie oben auf Run.

    Ergebnis: Das System benötigt einige Zeit, um die Daten zu erzeugen, die Schaltfläche Run ist grau hinterlegt. Nach Fertigstellung ändert die Farbe sich wieder auf Schwarz und Sie können die Erzeugung erneut anstoßen.
Skript mit Run ausführen

Tipp: Stehen größere Änderungen an Metadaten an, können Sie mit der metadata-collection.yml vorhandene Metadaten überschreiben:

  1. Führen Sie die gewünschten Metadaten in der Datei auf.
  2. Klicken Sie oben auf Run.

Metadaten beim Import eines Projekts erzeugen


Möchten Sie ein Projekt mit angelegten Metadaten importieren, benötigen Sie eine spezielle Datei, die den Aufruf der metadata-collection.yml startet und die Metadaten im System anlegt.

Hinweis: Dieser Schritt ist nur notwendig, sofern Sie ein älteres Projekt aus einer agorum core-Version vor 10.0.2 importieren möchten. Handelt es sich um ein Projekt, das aus einem agorum core-System ab Version 10.0.2 exportiert wurde, befindet sich die Datei 040 metadata-collection.js bereits im Unterordner js und Sie müssen lediglich den Pfad zu Ihrer Datei metadata-collection.yml in der 3. Zeile anpassen:

let yaml = require('common/objects').find('/agorum/roi/customers/agorum.metadata.collection.sample/yml/metadata-collection.yml');
  1. Öffnen Sie im Projektordner den Pfad:
    deploy/pre/js
  2. Öffnen Sie mit einem Rechtsklick das Kontextmenü und wählen Sie dann Neu > JS-Dokument
  3. Vergeben Sie folgenden Dateiname:
    040 metadata-collection.js
  4. Befüllen Sie das JavaScript mit unten aufgeführtem Skript und passen Sie den Pfad zu Ihrer metadata-collection.yml in der 3. Zeile an:
    let yaml = require('common/objects').find('/agorum/roi/customers/agorum.metadata.collection.sample/yml/metadata-collection.yml');
/* global sc */
let db = require('/agorum/roi/customers/Standard/js/metadata-collection-builder');
let yaml = require('common/objects').find('/agorum/roi/customers/agorum.metadata.collection.sample/yml/metadata-collection.yml');

db(yaml).install(sc);

Ungewollte metadata collections entfernen


Möchten Sie ungewollte metadata collections wieder entfernen, weil Sie sie nicht mehr benötigen oder diese eventuell für Verwirrung sorgen könnten, gehen Sie folgendermaßen vor:

  1. Öffnen Sie Ihre metadata.collection.yml.
  2. Räumen Sie diese auf, d. h. bereinigen Sie die Datei von nicht mehr benötigten metadata collections, damit beim nächsten Ausführen der Datei per Schaltfläche Run die Kollektionen / Metadaten nicht versehentlich erneut angelegt werden.
  3. Öffnen Sie links in der Seitenleiste Administration und dann MetaDB.
  4. Öffnen Sie den Pfad:
    MAIN_MODULE_MANAGEMENT/metadata-collection/definitions/<Name Ihres Konfigurationsprojekts>
  5. Löschen Sie in diesem Pfad die nicht mehr benötigten metadata collections händisch.