Seite 1 von 1

Importer - Optionale Metadatenfelder

Verfasst: 02 Jul 2018 10:31
von nenkler
Hallo CompuDMS Team,

ich versuche mich ein wenig am CompuDMS Importer.
Die Dokumentation ist hier ziemlich ausführlich und hilfreich, allerdings frage ich mich wie man optionale Metadatenfelder, je nach Input, konfigurieren kann.

Angenommen ich habe 2 Inputs und nicht alle sollen alle definierten Metadatenfelder nutzen.
Für beide Input Ordner existieren lediglich die benötigten bzw. gewünschten Metadatenfelder in CompuDMS.
Trotzdem meckert der Importer immer über ein unbekanntes Metadatenfeld. In meinem Beispiel für den Input "Berichte", hier gibt es keinen Autor.

Ich sag jetzt schon mal danke für die Hilfe!

Hier meine Test Konfiguration:

Code: Alles auswählen

<Configuration>
  <Setting key="log_dir" value="C:\Users\nenkler\Desktop\CompuDMSImporter\Test\Log" />
  <DefaultSettings>
    <Setting key="interval" value="3600" />
    <Setting key="input_path" value="C:\Users\nenkler\Desktop\CompuDMSImporter\Test\Import_Watch" />
    <Setting key="move_done" value="&lt;?input_path?&gt;\Successfull" />
    <Setting key="move_error" value="&lt;?input_path?&gt;\Failed" />
    <Setting key="do_version" value="false" />
    <Setting key="do_archive" value="false" />
    <Setting key="create_dms_dir" value="true" />
    <Setting key="delete_after_days" value="5" />
    <DMSConnection>
      <Setting key="name" value="test" />
      <Setting key="url" value="http://test" />
      <Setting key="password" value="test" encrypted="True" />
      <Setting key="username" value="test" />
    </DMSConnection>
    <Metadata>
      <Metadata>
        <Setting key="name" value="Keywords" />
        <Setting key="value" value="&lt;?Keywords?&gt;" />
      </Metadata>
	  <Metadata>
        <Setting key="name" value="Autor" />
        <Setting key="value" value="&lt;?Autor?&gt;" />
      </Metadata>
	  <Metadata>
        <Setting key="name" value="Dok Datum" />
        <Setting key="value" value="&lt;?Monat?&gt;.&lt;?Jahr?&gt;" />
      </Metadata>
    </Metadata>
  </DefaultSettings>
  <Inputs>
    <Input>
      <Setting key="name" value="Literatur" />
      <Setting key="src_file_regex" value="^(?&lt;Autor&gt;\w*)\.(?&lt;Jahr&gt;\d{2})\.(?&lt;Monat&gt;\d{2})\..{7}_(?&lt;Keywords&gt;.*)\..*" />
      <Setting key="dms_path" value="\@training\Import_Test" />
    </Input>
	<Input>
      <Setting key="name" value="Berichte" />
      <Setting key="src_file_regex" value="^(?&lt;Jahr&gt;\d{4})(?&lt;Monat&gt;\d{2})(\d{2})_Bericht_(?&lt;Keywords&gt;.*)\..*" />
      <Setting key="dms_path" value="\@training\Serviceberichte_Test" />
    </Input>
  </Inputs>
</Configuration>

Re: Importer - Optionale Metadatenfelder

Verfasst: 03 Jul 2018 10:33
von greif76
Hallo nenkler,

bin zwar nicht vom CompuDMS Team, kann Dir aber trotzdem weiterhelfen:

Du hast Deine Metadaten-Konfiguration unter "DefaultSettings" eingetragen. Die wird dann immer für alle "Inputs" benutzt.

Wenn Du ein Metadatenfeld nur für einen "Input" nutzen willst, dann trage einfach in der enstprechenden "Input" Sektion das Metadaten-Feld ein.

Ich hoffe, das hilft Dir.

Gruß
greif76

Re: Importer - Optionale Metadatenfelder

Verfasst: 03 Jul 2018 16:48
von nenkler
Hallo greif76,

danke für deine Hilfe. Das Ganze funktioniert leider noch immer nicht ganz so wie erhofft.
Zwar läuft der Import jetzt anstandslos durch und alle Dateien werden importiert aber leider wird das entsprechende Feld (Autor) nicht gesetzt (obwohl nicht optional in CompuDMS). Es bleibt einfach leer. Das dürfte doch allein Aufgrund der Metadaten Einstellung in CompuDMS so nicht funktionieren, oder?

Verstehe ich das Ganze richtig sollte meine Konfiguration so funktionieren: Hier nur der untere Teil der Konfiguration

Code: Alles auswählen

...
...
<Metadata>
      <Metadata>
        <Setting key="name" value="Keywords" />
        <Setting key="value" value="&lt;?Keywords?&gt;" />
      </Metadata>
	  <Metadata>
        <Setting key="name" value="Dok Datum" />
        <Setting key="value" value="&lt;?Monat?&gt;.&lt;?Jahr?&gt;" />
      </Metadata>
    </Metadata>
  </DefaultSettings>
  <Inputs>
    <Input>
     <Metadata>
        <Setting key="name" value="Autor" />
        <Setting key="value" value="&lt;?Autor?&gt;" />
      </Metadata>
      <Setting key="name" value="Literatur" />
      <Setting key="src_file_regex" value="^(?&lt;Autor&gt;\w*)\.(?&lt;Jahr&gt;\d{2})\.(?&lt;Monat&gt;\d{2})\..{7}_(?&lt;Keywords&gt;.*)\..*" />
      <Setting key="dms_path" value="\@training\Import_Test" />
    </Input>
	<Input>
      <Setting key="name" value="Serviceberichte" />
      <Setting key="src_file_regex" value="^(?&lt;Jahr&gt;\d{4})(?&lt;Monat&gt;\d{2})(\d{2})_Servicebericht_(?&lt;Keywords&gt;.*)\..*" />
      <Setting key="dms_path" value="\@training\Serviceberichte_Test" />
    </Input>
  </Inputs>
</Configuration>

Danke für eure Hilfe!

P.S.: Der Importer beendet bei jedem Input die Verbindung und baut diese neu zum Server auf. Ist das so gedacht? Ist zwar zumindest für mich egal aber ich frage mich ob das so sein soll.

Re: Importer - Optionale Metadatenfelder

Verfasst: 03 Jul 2018 17:37
von mas
Hallo,

an Ihrer Konfig-Datei ist nur noch eine kleine Änderung nötig, dann sollte es klappen:

Auch in der Input-Sektion muss es einen Block "Metadata" geben, in dem dann die einzelnen Metadaten-Felder wieder als "Metadata" eingebettet sind. Sie benötigen also in der Input Sektion zwei ineinander verschachtelte "Metadata" Tags:

Code: Alles auswählen

...
  <Inputs>
    <Input>
     <Metadata>
       <Metadata>
          <Setting key="name" value="Autor" />
          <Setting key="value" value="&lt;?Autor?&gt;" />
        </Metadata>
      </Metadata>
      <Setting key="name" value="Literatur" />
      <Setting key="src_file_regex" value="^(?&lt;Autor&gt;\w*)\.(?&lt;Jahr&gt;\d{2})\.(?&lt;Monat&gt;\d{2})\..{7}_(?&lt;Keywords&gt;.*)\..*" />
      <Setting key="dms_path" value="\@training\Import_Test" />
    </Input>
    <Input>
      <Setting key="name" value="Serviceberichte" />
      <Setting key="src_file_regex" value="^(?&lt;Jahr&gt;\d{4})(?&lt;Monat&gt;\d{2})(\d{2})_Servicebericht_(?&lt;Keywords&gt;.*)\..*" />
      <Setting key="dms_path" value="\@training\Serviceberichte_Test" />
    </Input>
  </Inputs>
</Configuration>
Ihre Beobachtung ist richtig, es wird pro "Input" eine neue Verbindung aufgebaut. Es wäre auch möglich, pro Input jeweils eigene Verbindungsdaten anzugeben. In Ihrem Fall sind keine angegeben, so dass für beide die Default-Werte von oben genutzt werden.

Ich hoffe, ich konnte Ihnen weiterhelfen und wünsche weiterhin viel Erfolg mit CompuDMS.

Mit freundlichen Grüßen
M. Schröther

Re: Importer - Optionale Metadatenfelder

Verfasst: 04 Jul 2018 08:57
von nenkler
Danke Herr Schröther,

so funktioniert es wie gewünscht.
Dadurch das XML genutzt wird hätte ich da natürlich selbst drauf kommen können :-)

VG