SapCheckArfcsState

Gruppe

Zeitgesteuerte eigene Klassen

Klassenname

com.ebd.hub.datawizard.util.SapCheckArfcsState

Konfigurationsdatei

Pfad zu einer Properties-Datei im Feld Konfigurationsdatei .

Beschreibung


Die Klasse kann in einem Cronjob regelmäßig aufgerufen werden, um eventuell nicht erfolgreiche IDoc-Sendeversuche aus einem angeschlossenen SAP-System zu erkennen. Der Fall kann eintreten, wenn die Registrierung des Request-Servers scheitert, nicht erfolgt oder verloren gegangen ist.

Dazu wird die Tabelle ARFCSSTATE über einen RFC-Aufruf gelesen, falls ausgehende Verbindungen noch funktionieren (was eine Voraussetzung ist). Hinweis: Durch Konfiguration eines Kontrollpunktes kann der Fall abgefangen werden, dass die Klasse nicht arbeiten kann.

Parameter


Parameter

Beschreibung

sap.alias

(Pflicht) Name des in ./etc/sap.xml konfigurierten SAP-Aliases, der verwendet werden soll.

sap.timeout

(optional) Die Timeout-Zeit in Millisekunden. Default: 60000.

sap.destination

(optional) Name der in SM59 definierten Destination (Typ T). SQL-Platzhalter sind erlaubt, z. B. %. Default: %LOB%

sap.function

(optional) Die Funktion, die zum Senden der IDocs aufgerufen wird. Default: IDOC_INBOUND_ASYNCHRONOUS

sap.host

(optional) Die SID des sendenden SAP-Systems. Per Default werden alle SIDs akzeptiert. Wichtiger Hinweis: Es werden nur Einträge gezeigt, die jünger als 3*24=72 Stunden sind.

sap.fields

(optional) Steuert, welche Datenbankfelder der Tabelle ARFCSSTATE in die XML-Response übernommen werden. Hinweis: Selbstverständlich müssen die im Property angegebenen Feldnamen in der Tabelle ARFCSSTATE existieren, andernfalls wird ein Fehler erzeugt.

  • Wenn das Property fehlt, wird die unten beschriebene Struktur von ITEM erzeugt.

  • Wenn das Property existiert und der Wert mit + beginnt, werden die entsprechenden Felder am Ende hinzugefügt. Beispiel: sap.fields=+ARFCMSG+ARFCSTATE

  • Wenn das Property existiert und nicht mit + beginnt, wird die Feldliste durch die im Property definierte ersetzt.

Beispiel-Datei


sap.alias=myalias
sap.destination=LOBSTER TEST

XML-Response


Folgend eine beispielhafte Standard-Response-Datei (Encoding UTF-8). Hinweis: Siehe auch Parameter sap.fields oben.

Der Aufruf erzeugt eine XML-Datei, die mindestens das Root-Element ITEMS mit dem Attribut count enthält. Die maximale Anzahl der ITEM-Elemente ist festgelegt mit 500. Eine Sortierung ist nicht möglich.

Wenn keine pending IDocs im SAP existieren, hat count den Wert 0. Mit Hilfe von ARFCUZEIT und ARFCDATUM kann im Profil entschieden werden, ob z. B. eine Alarm-E-Mail versendet wird, falls es Einträge gibt (also count>0). Hinweis: Die Auswertung in dem abfragenden Profil sollte erst Warnungen erzeugen für Einträge, die nicht zu jung sind.


<ITEMS count="1">
<ITEM nr="1">
<ARFCIPID>C0A8DF63</ARFCIPID>
<ARFCPID>0230</ARFCPID>
<ARFCTIME>60900160</ARFCTIME>
<ARFCTIDCNT>0090</ARFCTIDCNT>
<ARFCDEST>LOBSTER TEST</ARFCDEST>
<ARFCFNAM>IDOC_INBOUND_ASYNCHRONOUS</ARFCFNAM>
<ARFCUZEIT>183043</ARFCUZEIT>
<ARFCDATUM>20210503</ARFCDATUM>
<ARFCUSER>LOBSTER</ARFCUSER>
<ARFCTCODE>WE19</ARFCTCODE>
<ARFCRHOST>QWT</ARFCRHOST>
</ITEM>
<OPTIONS />
</ITEMS>


Schema-Datei: sap.xsd (Siehe auch Abschnitt XML to XSD (to Structure))

Beispiel-Profil: Profile-TEST_SAP_ARFCSSTATE.pak

Hinweis: Die XSD-Datei/die Quellstruktur für die XML-Response muss angepasst werden, wenn der Parameter sap.fields verwendet wird.