===== Betrieb mit SAP via BC-XOM ===== Wie bereits im Artikel [[print2forms:tips:tip34|Betrieb mit SAP]] beschrieben, ist die Nutzung von (p2f) mit SAP grundsätzlich möglich. Bei der dort beschriebenen Methode findet allerdings keine bidirektional Kommunikation zwischen (p2f) und SAP statt, weshalb SAP keine Statusmeldungen für die Druckaufträge anzeigen kann. Um diese zu ermöglichen, bietet SAP die **BC-XOM**-Schnittstelle an, die für (p2f) unter dem Arbeitstitel „p2f4sap“ implementiert wurde. Dazu wird im SAP-System ein ROMS und LOMS für SAP eingerichtet. In diesen wird die Kommunikation mit (p2f) konfiguriert. Dazu wird ein Programm auf dem SAP-System installiert, das von SAP gestartet wird und mit einem Service auf dem (p2f)-Rechner kommuniziert. Über diesen Kommunikationskanal können dann Druckaufträge angelegt und der Druckstatus der verschiedenen Aufträge von SAP abgefragt werden.\\ \\ ==== Einrichtung von print2forms ==== Die **BC-XOM**-Schnittstelle ist in (p2f) als Teil des Routers implementiert. In den Kontrollfeld des Routers können Sie im Reiter //Einstellung Druckaufträge// die Option //Druckaufträge via BC-XOM entgegennehmen// aktivieren. Auf dem Reiter //Webserver// aktivieren Sie die Option //Webserver aktivieren//. Nach einem Neustart des Router-Dienstes über die Schaltflächen //Dienst anhalten// aund anschliessend //Dienst starten//, wird die BC-XOM-Schnittstelle aktiv. Nun muss noch das SAP-System entsprechend eingerichtet werden. {{ print2forms:tips:0062-2.png}} \\ ==== Einrichtung von SAP ==== Zusammen mit (p2f) wird die Datei **p2f4sap.jar** ausgeliefert. Dies ist der Teil der **BC-XOM**-Schnittstelle, der auf dem SAP-System installiert werden muss. Kopieren Sie diese Datei auf Ihren SAP Server, z.B. in das Verzeichnis ''/usr/sap/p2f4sap.jar'' auf Linux-Rechnern. Dieser Pfad wird später bei der Konfiguration des SAP-Systems benötigt. Als Erstes muss ein "Real Output Management System" (ROMS) sowie ein "Logical Output Management System" (LOMS) für (p2f) im SAP-System eingerichtet werden. In diesen wird die Art und Weise, wie das SAP-System mit (p2f) kommunizieren kann definiert. Dies stellt daher die Grundlage aller weiteren Schritte dar. Öffnen Sie die Transaktion ''SPAD'' im SAP-System. Legen Sie dort ein neues ROMS mit folgenden Einstellungen ein:\\ \\ {{print2forms:tips:0062-5.png}}\\ \\ Legen Sie anschließend noch ein LOMS an (verlassen Sie die Maske noch nicht):\\ \\ {{print2forms:tips:0062-6.png}}\\ \\ Drücken Sie, nachdem Sie die obigen Eingaben gemacht haben ''F6'' (eventuell vorher noch ''F8'' um in den Bearbeitungsmodus zu kommen). Jetzt müssen noch die Kommandos zur Komminukation mit (p2f) angegeben werden: {{print2forms:tips:loms_sap_configuration_win.png}}\\ Geben Sie in das Feld //Command Path// den Pfad zur **p2f4sap.jar** ein, welcher beispielsweise unter Windows wie folgt aussieht: java -jar "C:\usr\sap\p2f4sap.jar" Geben Sie als Kommando für die Aktion //Submit// folgendes ein: submit -p2fip %IP% -p2fport 55560 -EI "&EI" -EG "&EG" -P "&P" -F "&F" Geben Sie als Kommando für die Aktion //Polling// folgendes ein: poll -p2fip %IP% -p2fport 55560 -EL "&EL" -EG "&EG" -P "&P" Geben Sie als Kommando für die Aktion //Job cancel// folgendes ein: cancel -p2fip %IP% -p2fport 55560 -EL "&EL" Dabei ersetzen Sie den Platzhalter %IP% durch die IP-Adresse oder den DNS-Namen des Rechners, auf dem der (p2f)-Router ausgeführt wird. Beachten Sie das führende Leerzeichen vor den Einzelnen Kommandozeilen (submit, poll & cancel), da die Kommandos ansonsten nicht korrekt ausgeführt werden können! Speichern Sie die Einstellungen.\\ \\ ==== Einrichtung der Drucker ==== Da das SAP-System nun mit (p2f) verbunden ist, müssen dem SAP-System nur noch die zu verwendenden Drucker bekannt gemacht werden. Richten Sie dazu nun, wie in [[print2forms:tips:tip34|Betrieb mit SAP]] beschrieben, einen DeviceType ein oder verwenden Sie, falls vorhanden, einen anderen passenden DeviceType. Beachten Sie dabei, dass Sie hierzu nicht den Standardbenutzer ''SAP*'' benutzen können. Dieser hat nicht die benötigten Rechte und ihm können diese auch nicht zugewiesen werden. Verwenden Sie also einen geeigneten Benutzer oder erstellen Sie einen neuen Nutzer mit der Transaktion ''SU01''. Wichtig ist, das der Benutzer im Reiter //Profiles// die benötigten Profile zugewiesen bekommt. Die Namen der Drucker im SAP-System müssen sich dabei mit denen in (p2f) decken. Haben Sie also einen Drucker //Systemdrucker// in (p2f), den Sie mit dem SAP-System verwenden wollen, so muß der entsprechende Drucker im SAP-System exakt den gleichen Namen erhalten. Öffnen Sie in der Transaktion ''SPAD'' den Reiter //Output Devices//. Klicken Sie auf den Display-Button neben dem Eingabefeld //Output Devices//. Drücken Sie ''F8'' um in den Bearbeitenmodus zu kommen. Drücken Sie ''Shift + F1'' um einen neuen Drucker anzulegen.\\ \\ {{print2forms:tips:0062-3.png}} {{print2forms:tips:0062-4.png}} \\ Jetzt können Sie den gerade konfigurierten Drucker verwenden, um aus dem SAP-System heraus Druckaufträge zu (p2f) zu schicken und bekommen z.B. in der Transaktion ''SP02'' den Status ihrer Druckaufträge angezeigt.\\ \\ {{print2forms:tips:0062-1.png}}\\ \\ ==== Hinweise ==== * Beachten Sie, dass Java im Path der SAP-Backend-Maschine liegen muss, damit die Kommandos funktionieren. Um dies zu testen, geben Sie auf der Maschine den Befehl „java -version“ in die Konsole ein. Bekommen Sie eine Fehlermeldung, müssen Sie Java dem Pfad hinzufügen oder in den Kommandos statt Java den kompletten Pfad zum Java-Programm angeben. * Die **BC-XOM**-Schnittstelle löscht Druckjobs aus dem Router, sobald diese abgeschlossen sind. Sollte dies nicht erwünscht sein, kann in der Registry ein DWORD-Wert namens ''BC-XOM-DeletesJobs'' mit dem Wert ''0'' unter ''HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SPE Systemhaus GmbH\print2forms\p2fRouter\Parameters'' angelegt werden (auf 32-Bit Systemen ohne ''Wow6432Node''). Danach muss der Router neu gestartet werden, um die Änderungen wirksam werden zu lassen. Die Druckaufträge müssen dann entweder später manuell oder nach Ablauf einer bestimmten Zeit vom Router automatisch gelöscht werden. * Die Kommunikation zwischen dem SAP-System und der **BC-XOM**-Schnittstelle erfolgt via TCP/IP über den fest vergebenen Port Nummer 55560. Durch geeignete Konfiguration eventuell an der Kommunikation beteiligter Firewalls ist sicherzustellen, daß über diese Port-Nummer eine Verbindung überhaupt möglich ist. * Die p2f4sap.jar benötigt Java 1.6 oder höher. * Druckernamen dürfen im SAP-System, sowie in print2forms keine Anführungszeichen (") beeinhalten. * **BC-XOM** verwendet zur Abfrage des Jobstatus das Webinterface des Routers. Stellen Sie daher sicher, dass der Webserver ebenfalls in den Router-Einstellungen aktiviert und erreichbar ist. * SAP übergibt die Druckdaten als Datei an den **BC-XOM** Java-Client. Dazu benötigt das SAP-System Schreibrechte im Arbeitsverzeichnis (/usr/sap/%SAPINSTANZID%) und dessen Unterordnern. Die entsprechenden Benutzer heißen sapadm und %SAPINSTANZID%adm. * Zur Anmeldung am Webinterface wird ein Benutzer SAP benötigt. Dieser wird bei der Installation von (p2f) automatisch erzeugt. Sollten Sie aber Probleme mit **BC-XOM** haben, prüfen Sie, ob dieser Benutzer existiert.