Eigenschaftswerte automatisch validieren

Auf der Registerkarte Validierung des Dialogfelds Eigenschaftsdefinition können Sie die Kriterien definieren, die die Werte einer spezifischen Eigenschaft erfüllen sollten. Mithilfe der Validierung können Sie z. B. sicherstellen, ob der Eigenschaftswert die festgelegte Anzahl an Zeichen enthält. Auf diese Art können Sie prüfen, ob die Kundentelefonnummer oder Rechnungsnummer richtig zum Metadatenformular hinzugefügt wurde. Sie können außerdem überprüfen, ob beispielsweise der Wert in Bezug auf andere Eigenschaften akzeptiert werden kann, oder ob überhaupt ein Wert eingetragen ist.

Die Gültigkeit wird mittels Variablen, allgemeinen Funktionen von VBScript und der M-Files API festgelegt. Die folgenden M-Files Variablen könne für die Validierung der Eigenschaftswerte verwendet werden: PropertyDef, PropertyValue, ObjVer, DisplayID, Vault, CurrentUserID, CurrentUserSessionInfo, VaultSharedVariables, SavepointVariables, TransactionCache, MFScriptCancel, GetExtensionObject, MasterTransactionID, CurrentTransactionID, ParentTransactionID. Weitere Informationen zu Variablen finden Sie im Abschnitt Verfügbare VBScript-Variablen.

Wichtig: Wenn Sie neue Erweiterungen entwickeln oder bestehende bearbeiten, empfehlen wir, VBScript-Inhalte für zukünftige Kompatibilität durch Vault Application Framework (VAF)-kompatiblen Code zu ersetzen. Weitere Informationen zu den Vorteilen von VAF gegenüber VBScript finden Sie unter The Vault Application Framework in M-Files Developer Portal.

Standardmäßig wird die Validierung als erfolgreich betrachtet. Ungültige Werte werden somit mit bedingten Aussagen erkannt. Wenn eine der in der Validierung angegebenen Bedingungen erfüllt ist, wird ein Fehler ausgegeben. Der Fehler fordert den Benutzer auf, den ungültigen Wert zu korrigieren. Zum Beispiel Err.Raise MFScriptCancel, „Die Eigenschaft muss einen Wert von mindestens 10 Zeichen haben.“.

So fügen Sie eine Wertevalidierung für eine Eigenschaft hinzu:

  1. M-Files Admin Öffnen.
  2. In der hierarchischen Ansicht auf der linken Seite, eine Verbindung zum M-Files Server erweitern.
  3. Dokumentenverwaltungen erweitern.
  4. Eine Dokumentenverwaltung erweitern.
  5. Die Metadatenstruktur (Flache Ansicht) erweitern.
  6. Eigenschaftsdefinitionen auswählen.
  7. Entweder:
    • Öffnen Sie in der Liste Eigenschaftendefinitionen das Kontextmenü der Eigenschaft, deren Werte automatisch validiert werden sollen, und wählen Sie Eigenschaften aus dem Kontextmenü aus.
      oder
    • Klicken Sie im Aufgabenbereich auf Neue Eigenschaftsdefinition, um eine neue Eigenschaftsdefinition mit einer automatischen Prüfung der Werte herzustellen.
    Ergebnis:Das Eigenschaften der Eigenschaftendefinition Dialogfeld öffnet sich.
  8. Die Gültigkeit Registerkarte öffnen.
    Ergebnis:Das Gültigkeit wird geöffnet.
  9. Wählen Sie die Option Validierung mit Dokumentenverwaltungsanwendung oder VBScript und dann Details.
    Ergebnis:Das Fenster VBScript – Details wird geöffnet.
  10. Geben Sie den VBScript-Code zur Validierung der Werte dieser Eigenschaft ein.
    Beispiel:Falls die Werte dieser Eigenschaft wenigstens 10 Zeichen aufweisen müssen, können Sie folgenden Code verwenden:
    Option Explicit
    
    Dim propertyName, value
    
    propertyName = PropertyDef.Name
    
    value = PropertyValue.GetValueAsUnlocalizedText
    
    If Len(value) < 10 Then
    
        Err.Raise MFScriptCancel, "The property """ & propertyName & """ must have a value of at least 10 characters."
    
    End If
    Hinweis: Die M-Files API Dokumentation ist online verfügbar: M-Files API.
  11. Schließen Sie das Fenster VBScript – Details und wählen Sie Übernehmen im Dialog Eigenschaften der Eigenschaftsdefinition.
Die eingegebenen Werte für die ausgewählte Eigenschaft werden nun automatisch validiert. Wenn Sie einen Wert für die Eigenschaft im Metadatenformular eingeben, wird dieser Wert validiert und bei Nichterfüllung der spezifizierten Kriterien wird die Aktion, die im Validierungsscript festgehalten ist, ausgeführt (zusätzlich wird eine Fehlermeldung eingeblendet).