Show TOC

 Korrespondenzanforderung erstellen

Verwendung

Sie möchten eine Korrespondenzanforderung erstellen. Das Korrespondenz-Tool erzeugt dabei für jeden Korrespondenzempfänger einen Korrespondenzcontainer. In jedem Korrespondenzcontainer sind die Referenzen auf die Korrespondenzdaten in abstrakter Form und die Steuerungsparameter zum Erstellen der Korrespondenz gespeichert.

Voraussetzungen

Sie haben geklärt, welche Daten für die Erstellung der Korrespondenz benötigt werden und welche Referenzen und Daten im Korrespondenzcontainer abgelegt werden sollen.

Sie haben die im Abschnitt Erstellen der Korrespondenzanforderung beschriebenen anwendungsspezifischen Zeitpunkte für Ihre Anwendung angelegt.

Die Korrespondenzempfänger sind zugeordnet und die für das Erstellen der Korrespondenz verwendeten Systemeinstellungen für die Korrespondenzart und die Steuerungsparameter sind gepflegt.

Vorgehensweise

Der Aufruf des Funktionsbausteins FKK_WRITE_CORR mit der Pufferungsart keine Pufferung ermöglicht es Ihnen, performant Korrespondenzanforderungen zu erstellen, wenn Sie innerhalb einer LUW alle Korrespondenzanforderungen erstellen oder bei einem Abbruch nicht erstellen und sie nicht sofort ausgeben wollen. Die Pufferungsart keine Pufferung ist in der lokalen Klasse LCL_BUFFER_NULL implementiert.

Bei erfolgreicher Verarbeitung schließen Sie die LUW mit einem COMMIT WORK ab. Wurde die Verarbeitung abgebrochen, müssen Sie die LUW mit einem ROLLBACK WORK abschließen.

Periodische Korrespondenz wird häufig in Massenläufen erstellt. Aus Gründen der Performance werden dabei eine Vielzahl betriebswirtschaftlicher Objekte innerhalb einer LUW verarbeitet. Tritt bei der Bearbeitung eines Objekte ein Fehler auf, muss sichergestellt werden, dass die Korrespondenzanforderungen der erfolgreich verarbeiteten Objekte erhalten bleiben.

Diese Anforderung kann durch Verwenden des Puffermodells mit Instanzverwaltung umgesetzt werden. Das Puffermodell mit Instanzverwaltung wurde in der lokalen Klasse LCL_BUFFER_LUW implementiert. Mittels der Klassenmethode CL_FKK_CORR_PERSISTENCE=>GET_BUFFER_HANDLER_INTERFACE können Sie eine Referenz auf den Puffer-Handler bereitstellen, um erstellte Korrespondenzanforderungen für ein Objekt bestätigen oder zurücksetzen zu können.

Ist der Puffer noch nicht aktiv, müssen Sie bei Aufruf des Funktionsbausteins FKK_WRITE_CORR den gewünschten Puffermodus nochmals angeben.

Die LUW müssen Sie auch bei fehlerhafter Bearbeitung einzelner Objekte mit einem COMMIT WORK abschließen. Nur bei schwer wiegenden Fehlern kann die Verwendung eines ROLLBACK WORK sinnvoll sein, wobei das System jedoch auch die erfolgreich bearbeiteten Objekte invalidiert.

Beim Erstellen von Korrespondenzanforderungen ist die LUW mittels COMMIT WORK oder ROLLBACK WORK abzuschließen. Nur so ist gewährleistet, dass bei der Verwendung eines Anwendungsformulars vom Formulartyp Datenversand eine eventuell notwendige Puffersynchronisation ausgeführt werden kann. Ausnahmen sind möglich, bewirken jedoch Einschränkungen des Endanwenders bei der Verwendung von Anwendungsformularen vom Formulartyp Datenversand .

Besondere Vorsicht sollten Sie innerhalb von Anzeigetransaktionen wegen des möglichen Fehlens des COMMIT WORK und innerhalb der Verbuchung walten lassen. In diesen Fällen ist das Puffermodell mit Instanzverwaltung nicht anwendbar.

Ergebnis

Beim Erstellen einer Korrespondenzanforderung legt das System für jeden ermittelten Korrespondenzempfänger einen Korrespondenzcontainer an. Um die Korrespondenz zu erstellen, müssen die Korrespondenzcontainer ausgeben werden. Mit dem erfolgreichen Erstellen der Korrespondenzanforderung ist für die Anwendung die Korrespondenz erfolgreich erstellt. Alle weiteren Verarbeitungsschritte erfolgen asynchron, sind für die erfolgreiche Ausführung verantwortlich und müssen bei Problemen eine Wiederholung ermöglichen.

Beispiel

Änderungen von betriebswirtschaftlichen Objekten im Dialog, die durch eine Korrespondenz gegenüber dem Kunden dokumentiert werden sollen, stellen Beispiele für das Erstellen von Korrespondenzanforderungen zu einem betriebswirtschaftlichen Objekt innerhalb einer LUW dar. So kann nach der erfolgreichen Erstellung oder Änderung des betriebswirtschaftlichen Objektes verschiedene Korrespondenz erstellt werden (ereignisgesteuerte Korrespondenz). So kann bei einem Kontoinhaberwechsel der alte Kontoinhaber einen Kontoauszug und eine Information erhalten, dass er nicht mehr der Inhaber des Kontos ist; der neue Kontoinhaber kann eine Information, dass er nun der Inhaber des Kontos ist, und eine Saldenbestätigung erhalten.

Periodische Korrespondenz (wie Kontoauszüge, Rechnungen, Mahnungen) wird häufig in Massenläufen erzeugt und stellt ein Beispiel für die Verarbeitung einer Vielzahl von betriebswirtschaftlichen Objekten innerhalb einer LUW dar.

Im Report RFKKCORR_EXP_CREATE_REQUEST in der Form CORR_CREATE wurde das Erstellen einer Korrespondenzanforderung realisiert. Dabei wird in Abhängigkeit von den Reportparametern ein Korrespondenzcontainer für ein Original und wahlweise ein Korrespondenzcontainer für eine Kopie angelegt. Die Korrespondenzcontainer können nur angelegt werden, sie können anschließend sofort ausgegeben werden oder es ist das Erstellen der Container für eine Druckansicht möglich.