Flex-Geschäftsregeln und -Prozeduren definieren

Sie können Flex SQL-Anweisungen definieren, um spezifische Validierungsregeln für Ihre Organisation festzulegen. Sie können eine oder mehrere Anweisungen einrichten, die für Ereignisse nach dem Einfügen (Post Insert) oder nach dem Aktualisieren (Post Update) verarbeitet werden sollen.

Die Flex SQL-Verarbeitung unterstützt Datenabfrageanweisungen ("Select") und Datenbearbeitungsanweisungen ("Insert", "Update", "Delete"). Verwenden Sie "Select"-Anweisungen, um eine Überprüfung vorzunehmen.

In der SQL-Anweisung sind Groß- und Kleinbuchstaben erlaubt. Das Zeilenkennungs-Token darf jedoch nur Großbuchstaben oder nur Kleinbuchstaben enthalten (d. h. :ROWID oder :rowid).

Bei jeder Flex SQL-Anweisung muss ein vordefiniertes :ROWID-Token verwendet werden. Dieses Token bezieht sich auf die Zeilenkennung in der Datenbank für den Datensatz, der in der angegebenen Tabelle verarbeitet wird. Die Anweisung wird für jeden Datensatz in der Tabelle durchgeführt, der vom Einfüge- bzw. Aktualisierungsvorgang betroffen ist.

Die Anweisung darf maximal 4000 Zeichen lang sein. Es ist kein Abschlusszeichen (;) bei der Anweisung erforderlich.

Datenbearbeitungsanweisungen sind zwar erlaubt, es sollte jedoch sichergestellt werden, dass kein unendliches Überlappen von Trigger-Schritten gestartet wird. Zum Beispiel wird im Allgemeinen nicht empfohlen, eine Flex SQL-Anweisung zu erzeugen, welche die in dem Feld "Tabelle" angegebene Basistabelle aktualisiert.

Hinweis

Infor empfiehlt, Flex SQL-Verfahren in enger Zusammenarbeit mit Ihrem Infor EAM-Berater zu definieren.

  1. Wählen Sie Administration > Bildschirmkonfiguration > Flex Geschäftsregeln aus.
  2. Geben Sie die Tabelle an, für die Flex SQL-Anweisungen und -Verfahren definiert werden sollen.
  3. Klicken Sie auf Flex SQL hinzufügen.
  4. Geben Sie die folgenden Informationen an:
    Sequenznummer
    Geben Sie die Reihenfolge der Flex SQL-Verarbeitung an.
    Trigger
    Geben Sie den Datenbankvorgang an, der das Ereignis initiiert. Die Trigger "POST-INSERT" und "POST-UPDATE" werden unterstützt.
    SQL-Anweisung
    Geben Sie die SQL-Anweisung an, die ausgeführt werden soll, wenn der angegebene Vorgang für eine Tabelle durchgeführt wird.
    Fehlermeldung
    Geben Sie die Meldung an, die angezeigt werden soll, wenn eine Flex SQL-Anweisung fehlschlägt. Eine Flex SQL-Anweisung ist erfolgreich, wenn die Anweisung eine oder mehrere Zeilen in einer Tabelle verarbeitet. Wenn keine Zeilen verarbeitet werden, ist die Flex SQL-Anweisung fehlgeschlagen. Um die Fehlermeldung zu aktivieren, wählen Sie Abbruch bei Fehler aus.
    Bemerkungen
    Geben Sie eine Beschreibung des Zwecks der Flex SQL-Anweisung an.
  5. Aktivieren Sie wahlweise das Kontrollkästchen Muss vorhanden sein, damit der Flex SQL-Prozessor keine nachfolgenden Flex SQL-Anweisungen verarbeitet, wenn die aktuelle Anweisung keine Zeilen verarbeitet.
  6. Aktivieren Sie wahlweise das Kontrollkästchen Abbruch bei Fehler, um den aktuellen Vorgang anzuhalten, wenn er fehlschlägt, und einen Fehler auszugeben.
  7. Aktivieren Sie wahlweise das Kontrollkästchen Rückgabecode umkehren, damit der Rückgabestatuscode für die aktuelle Flex SQL-Anweisung umgekehrt wird. Wenn diese Option ausgewählt ist und die Anweisung eine oder mehrere Zeilen verarbeitet, gibt der Prozessor einen Status "Fehler" zurück. Wenn die Anweisung keine Zeilen verarbeitet, gibt der Prozessor einen Status "Erfolg" zurück.
  8. Aktivieren Sie wahlweise das Kontrollkästchen Aktiv, um die Flex SQL-Anweisung zu aktivieren.
  9. Klicken Sie auf Flex SQL testen, um die Gültigkeit der aktuellen Flex SQL-Anweisung zu überprüfen. Wenn die Anweisung Fehler enthält (z. B. ungültige Syntax), wird eine Meldung angezeigt.
  10. Klicken Sie auf Einreichen.
    Beachten Sie die folgenden Beispiele für Flex SQL-Definitionen:
    Beispiel 1
    Legen Sie Prüfanweisungen oder Bearbeitungen fest, die die Standardverarbeitung in Infor EAM ergänzen. Die Eingabe eines Werts für den Kostencode ist bei der Erstellung einer Anforderung in Infor EAM beispielsweise optional. Wenn die Implementierung jedoch von der Verwendung von Kostencodes abhängt, um Kontosegmentwerte abzuleiten, müssen Sie eine Prüfanweisung definieren, die besagt, dass Anforderungen nur aktualisiert oder eingefügt werden können, wenn ein Wert für den Kostencode eingegeben wird.

    Beachten Sie folgendes Beispiel einer Prüfanweisung, die die Standardverarbeitung der Erstellung einer Anforderung in Infor EAM ergänzt:

    • Tabelle
      Geben Sie R5REQUISITIONS an.
    • Trigger
      Geben Sie NACH DEM EINFÜGEN an.
    • Sequenznummer
      Geben Sie 10 an.
    • SQL-Anweisung
      Geben Sie die folgende SQL-Anweisung an, die ausgeführt werden soll:
                           SELECT NULL
                           FROM R5REQUISITIONS
                           WHERE ROWID=:ROWID
                           AND REQ_COSTCODE IS NOT NULL
    • Fehlermeldung
      Legen Sie Wert für Kostencode eingeben fest.
    • Wählen Sie Muss vorhanden sein aus.
    • Wählen Sie Abbruch bei Fehler aus.
    Beispiel 2
    Sie können Zeilen für Einträge und Transaktionen erstellen, um sie mit Oracle Financials in der R5ACCOUNTDETAIL-Tabelle in Infor EAM auf dem Bildschirm Flex SQL zu verbinden.

    Beachten Sie folgendes Beispiel für die Erstellung von Zeilen für Kontodetaileinträge mit konstanten Standardwerten. Diese Anweisung folgt auf die Prüfanweisung im vorherigen Beispiel, in dem die Eingabe von Werten für Kostencodes bei der Erstellung von Anforderungen dargestellt wird. Die Sequenznummer gibt die Reihenfolge an, in der die Flex SQL-Anweisungen ausgeführt werden.

    • Tabelle
      Geben Sie R5REQUISITIONS an.
    • Trigger
      Geben Sie NACH DEM EINFÜGEN an.
    • Sequenznummer
      Geben Sie 20 an.
    • SQL-Anweisung
      Geben Sie die folgende SQL-Anweisung an, die ausgeführt werden soll:
                           INSERT INTO R5ACCOUNTDETAIL
                           (ACD_CODE, ACD_RENTITY, ACD_SEGMENT1, ACD_SEGMENT2, ACD_SEGMENT3,
                           ACD_SEGMENT4)
                           SELECT REQ_ACD, 'REQ',
                           '01',
                           '000',
                           '000',
                           '0000'
                           FROM R5REQUISITIONS                      
                           WHERE ROWID=:ROWID
      
    • Fehlermeldung
      Legen Sie Fehler beim Erstellen von Kontodetails fest.
    • Wählen Sie Muss vorhanden sein aus.
    • Wählen Sie Abbruch bei Fehler aus.
    • Wählen Sie Aktiv aus.

    Das Beispiel oben veranschaulicht die Anforderungsreferenz auf R5ACCOUNTDETAIL, für die REQ_ACD bereits ausgefüllt ist. Infor EAM generiert automatisch den Kontodetailschlüssel der Anforderung. Sie müssen den Wert des Kontodetailschlüssels nicht mit Flex SQL erstellen.

    Die Festlegung der Flex SQL-Anweisungsdefinitionen, die in Infor EAM für Kontodetails verwendet werden sollen, hängt davon ab, welche Infor EAM- und ERP-Module integriert sind. Skizzieren Sie zuerst den gesamten Beschaffungsprozess. Arbeiten Sie dann mit den einzelnen Transaktionssätzen, um festzulegen, ob eine Validierung durchgeführt und Konten generiert werden müssen. Diese Anforderungen sind nicht nur für jedes Integrationsszenario individuell, sondern auch für jeden Kunden in den Szenarios. Deshalb ist es besonders wichtig, dass Sie den gesamten Prozess sehr sorgfältig betrachtet haben.