Beispiel für erweiterte XML-Regel: Wählen des Knotens X basierend auf Knoten Y (oder auf Attribut a)

Diese Art von Regel könnte notwendig sein, wenn der XPath zum erwarteten Knoten in der XML für die Rechnungen nicht einzigartig ist (d. h. dass es mehrere Knoten mit demselben XPath in der XML-Datei gibt).

Für dieses Beispiel wird eine Svefaktura-Rechnung verarbeitet. Wir möchten den richtigen Wert für das Kofax ReadSoft Invoices Feld PaymentReferenceNumber finden. Der erwartete Pfad des Felds im Svefaktura XML-Rechnungsstandard ist /Invoice/cac:PaymentMeans/cac:PayeeFinancialAccount/cac:PaymentInstructionID. In unserem Beispielrechnungen gibt es mehrere Instanzen dieses XPath in der Datei. Die richtige Instanz ist jene mit dem Attribut GGSISESS. Klicken Sie auf das Vorschaubild, um ein Beispiel zu sehen:

Um eine erweiterte Regel zu erstellen, die in einem anderen Knoten nach dem richtigen Wert sucht

  1. Wählen Sie in der Registerkarte Felder des XML-Mappers (auf der rechten Seite des Fensters) in der Kategorie Felder das Feld PaymentReferenceNumber aus.
  2. Klicken Sie auf die Schaltfläche rechts neben dem Wert:

    falls keine Regel definiert wurde, oder

    falls es bereits eine bestehende Regel für das Feld gibt.

  3. Öffnen Sie im Bereich für die Auswahl des XML-Knotens der erweiterten Regeln im oberen Bereich der Registerkarte Feldzuordnungsregeln, der sich auf der linken Seite des Fensters befindet, den Knoten Invoice aus.
  4. Wählen Sie den Knoten, der dem PaymentinstructionID Knoten am ähnlichsten ist und den alle Instanzen gemeinsam haben. (In diesem Beispiel ist der ähnlichste gemeinsame Knoten Invoice/cac:PaymentMeans.)


  5. Klicken Sie auf Auswählen.
  6. Öffnen Sie im Feld „Ausgewählter XML-Knoten“ cac:PaymentMeans und wählen Sie den Unterknoten, der jenes Element enthält, das die PaymentMeans-Abschnitte voneinander unterscheidet. In diesem Fall ist das:

    cac:PaymentMeans/cac:PayeeFinancialAccount(cac:FinancialInstitutionBranch/cac:Financialnstitution/cac:ID

  7. Wählen Sie im Abschnitt „Einstellungen für neue Bedingung“ des Dialogfelds „Basiert auf Wert“.
  8. Wählen Sie das richtige Attribut im Auswahlmenü unter Vergleichswert (in diesem Fall GGSISSESS).
  9. Klicken Sie auf Hinzufügen. Die entsprechende Bedingung wird dem Feld Ausgewählte Bedingungen hinzugefügt:

    Value(Node[PaymentMeans/PayeeFinancialAccount/FinancialInstitutionBranch/FinancialInstitution/ID])=="GGSISESS"

  10. Klicken Sie auf Extrahieren und prüfen Sie das Bild, um die Ergebnisse zu kontrollieren. Wenn Sie die Regel ändern möchten, klicken Sie in das Feld Bei der Zuordnung dieses Feldes verwendete Regeln, wählen Sie Entf, um sie zu löschen, nehmen Sie die nötigen Änderungen vor und klicken Sie dann auf Hinzufügen, um die geänderte Regel hinzuzufügen. Wenn Sie eine Bedingung ändern möchten, ist der Ablauf gleich (und falls eine Regel darauf basiert, wird die Regel auch gelöscht, wenn Sie die Bedingung löschen).
  11. Überlegen Sie, ob die Änderung(en) auf alle Rechnungen oder nur jene der aktuellen XML-Rechnungsdefinition angewandt werden soll(en). Klicken Sie auf XML-Definition speichern, um die Änderung nur für die aktuelle XML-Rechnungsdefinition (also den aktuellen Lieferanten) zu speichern. Klicken Sie auf XML-Profil speichern, falls Sie die Regel unabhängig von der XML-Rechnungsdefinition auf alle XML-Rechnungen anwenden möchten, die mit dem XML-Rechnungsprofil übereinstimmen.