Servigistics InService Anpassung > CSV-Validierungen anpassen > Benutzerdefinierte Validierungen für CSV-Dateien konfigurieren
  
Benutzerdefinierte Validierungen für CSV-Dateien konfigurieren
Servigistics InService ermöglicht das Hinzufügen von benutzerdefinierten Validierungen für CSV-Dateien (durch Kommata getrennte Werte) mithilfe einer Kopie der Konfigurationsdatei customizedContext_XX.conf.xml im Verzeichnis <INS_HOME>/InS_SW/Config/System/Config. Im Dateinamen customizedContext_XX.conf.xml stellt XX den standardmäßigen numerischen Wert für die Datei dar.
Es wird nicht empfohlen, die Standardkonfigurationsdatei zu bearbeiten. Sie können stattdessen eine Kopie der Standardkonfigurationsdatei erstellen und benutzerdefinierte Validierungen zur kopierten Version der Datei hinzufügen. Der Name der kopierten Konfigurationsdatei muss einen numerischen Wert enthalten, der kleiner ist als der standardmäßige numerische Wert für die Datei. Wenn der Standarddateiname beispielsweise customizedContext_3.conf.xml ist, können Sie diese Datei kopieren und als customizedContext_2.conf.xml speichern. Sie können die Datei customizedContext_2.conf.xml dann verwenden, um benutzerdefinierte Validierungen hinzuzufügen. Danach wird die kopierte Version der Standardkonfigurationsdatei als customizedContext_YY.conf.xml referenziert.
Die benutzerdefinierte Validierung muss eine Standardvalidierung erweitern. Eine Liste der Standardvalidierungen für CSV-Dateien finden Sie unter Standardvalidierungen für CSV-Dateien.
Sie definieren eine Komponente für jede Validierung in der Datei customizedContext_YY.conf.xml und schließen den Validierungseintrag unter der Komponente CSVFileValidationScanner der Datei customizedContext_YY.conf.xml ein. Weitere Informationen zum Hinzufügen einer benutzerdefinierten Validierung finden Sie unter Benutzerdefinierte Validierungen für CSV-Dateien hinzufügen.
Validierungen definieren
Eine Validierungskomponente in der Datei customizedContext_YY.conf.xml umfasst die folgenden Details:
Element
Beschreibung
Component
Gibt den Namen der Validierungskomponente an.
Creation
Gibt die Methode an, die für das Erstellen der Komponente verwendet wird. Das Type-Attribut für dieses Element ist immer JavaObject.
Class
Gibt die Java-Klasse der Validierungskomponente an. Eine Java-Klasse ist eine benutzerdefinierte Java-Datei, die eine vorhandene Standardvalidierung für CSV-Dateien erweitert.
Config
Gibt Konfigurationsdetails wie die Validierungsinformationen an.
Validation
Gibt die folgenden Validierungsattribute an:
code: Der Fehlercode der Validierung.
description: Eine Beschreibung der Validierung.
resolution: Die Lösung für die Validierung.
* 
Diese Attribute werden für eine Validierung in der Validierungsergebnisdatei angezeigt, nachdem Sie die Aufgabe Validate CSV Data im Task Manager ausgeführt haben.
Die folgende Validierungskomponente zeigt die Attribute, die für die Komponente definiert sind:
<Component Name="DataEncodingValidator">
<Creation Type="JavaObject">
<Class>com.ptc.csvtoinservice.validation.DataEncodingValidator</Class>
</Creation>
<Config>
<Validation code="101" description="CSV file has the wrong encoding"
resolution="File %s must be encoded in UTF8." />
</Config>
</Component>
Validierungseinträge einschließen
Ein Validierungseintrag in der Komponente CSVFileValidationScanner muss die folgenden Elemente enthalten:
validator: Gibt an, ob die Validierung für alle CSV-Dateien oder für eine bestimmte CSV-Datei gilt. Definieren Sie dazu das Attribut appliesto für das Element validator. Die folgenden Werte sind für das Attribut appliesto gültig:
Attributwert
Beschreibung
All
Gibt an, ob die Validierung für alle Dateien gilt.
<CSV_File_Name>
Gibt den Namen der CSV-Datei an, für die die Validierung gilt. Sie müssen den relativen Pfad der CSV-Datei aus dem Bündelspeicherort der CSV-Dateien angeben.
rule: Gibt die Regel für die Validierung an. Das Element rule hat die folgenden Attribute:
Attribut
Beschreibung
type
Gibt den Typ der Validierung an. Die folgenden Werte sind gültig:
file: Führt die Validierung für die gesamte CSV-Datei aus.
row: Führt die Validierung für jede Zeile der CSV-Datei aus.
column: Führt die Validierung für die Spalte aus, die im Attribut columnName des Elements rule angegeben ist.
columnName
Gibt den Namen einer Spalte in der CSV-Datei an. Sie geben den Wert dieses Attributs nur an, wenn das Attribut type des Elements rule auf column festgelegt ist.
validationCriteria
Gibt den Namen der Validierungskomponente an. Die Details für diese Validierungskomponente werden in der Datei customizedContext_YY.conf.xml angegeben. Weitere Informationen finden Sie unter Validierungen definieren.
required
Gibt an, ob die Validierung ein Fehler oder eine Warnung ist. Die folgenden Werte sind gültig:
true: Gibt an, dass die Validierung vom Typ "Fehler" ist und gelöst werden muss. Bei diesem Validierungstyp muss der Benutzer die Validierung korrigieren, damit die CSV-Datei erfolgreich importiert werden kann.
false: Gibt an, dass die Validierung vom Typ "Warnung" ist. Dieser Validierungstyp wird nur zu Informationszwecken angezeigt und verhindert den Import der CSV-Datei nicht.
Die folgende CSVFileValidationScanner-Komponente zeigt einen Beispielvalidierungseintrag an, der für alle CSV-Dateien anwendbar ist:
<Component Name="CSVFileValidationScanner">
<Creation Type="JavaObject">
<Class>com.ptc.csvtoinservice.main.CSVFileValidationScanner</Class>
</Creation>
<Config>
<validator appliesTo="All">
<rule type="file" columnName="" validationCriteria="DataEncodingValidator"
required="true"/>
<rule type="file" columnName="" validationCriteria="MandatoryColumnValidator"
required="true"/>
<rule type="file" columnName="" validationCriteria="EmptyLineValidator"
required="false"/>
<rule type="file" columnName="" validationCriteria="DuplicateEntryValidator"
required="false"/>
</validator>