Schachtsteuerung SAP Interactive Forms by Adobe

Schachtsteuerung von SAP Formularen auf der Basis der Adobe Forms

Mit SAP Script oder Smart Forms ist die Schachtsteuerung von SAP Formularen einfach zu realisieren. Der Formularentwickler ruft den SAP Standardtext „SAPSCRIPT-TRAYTEST“ auf, druckt den Standardtest auf dem Drucker aus und notiert sich, welches Print-Control dem jeweiligen Schacht zugeordnet ist. Anschließend trägt er das Print-Control im Formular in der Definition der Seite ein. Ohne sich mit weiteren Personen abzustimmen, kann in vielen Konstellationen die Schachtsteuerung von SAP Formularen auf diese Weise schnell implementiert werden.

Wesentlich komplizierter ist das Thema Schachtsteuerung bei der Entwicklung von SAP Formularen auf der Basis der SAP Interactive Forms by Adobe anzugehen. Die größte Hürde liegt nicht auf technischer Ebene, sondern dass mehrere Personen involviert sind. Eine besondere Herausforderung ist es, den Administrator des SAP Systems davon zu überzeugen, XDC-Dateien auf dem Server der Adobe Document Services (ADS) abzulegen, insbesondere wenn der SAP Administrator beim externen Outsourcing-Partner angestellt ist.

Szenario

Zielsetzung ist die die Abbildung folgendes Szenarios:

Einrichten einer Schachtsteuerung für SAP Adobe Formulare, gedruckt auf einem PCL-fähigen Laserducker.

Es soll ein PDF-basiertes SAP Druckformular Auftragsbestätigung gedruckt werden, wobei das Papier aus folgenden Schächten gezogen wird:

  • Seite 1                   A4-Papier mit Logo aus Schacht 2
  • Folgeseiten           A4-Blanko-Papier aus Schacht 1 = Default-Schacht des Druckers
Schachtsteuerung SAP Adobe Forms Beispiel Auftragsbestätigung

SAP Formular Auftragsbestätigung mit 2 Seiten

Für das Ziehen des Papiers aus Schacht 2 muss die Schachtsteuerung aus SAP erfolgen, da dies nicht der Standardschacht des Druckers ist. Für Seite 1 muss also eine explizite Schachtsteuerung implementiert werden.

Wir gehen davon aus, dass der Druck auf PCL-Druckern, also HP-kompatiblen Druckern erfolgt.

Organisatorische Vorbereitungen

Zur Implementierung der Schachtsteuerung ist zu Beginn ein Termin vor Ort oder zumindest eine Telefonkonferenz zu vereinbaren.

An diesem Termin müssen folgende Personen anwesend sein

  • Formularentwickler mit Kenntnissen der Adobe Schachtsteuerung
  • Netzwerkadministrator mit Kenntnissen der Druckersteuerung vor Ort
  • SAP-Basis-Administrator oder SAP-Basis-Berater, der Zugang zum ADS-Server hat; im Outsourcing ist der SAP-Basis-Administrator des Outsourcers zum Termin einzuladen

Herausfinden der Steuerkommandos zur Schachtsteuerung

Üblicherweise ist jedem Papierschacht eine interne Nummer zugewiesen.

Bei HP-Druckern gilt z.B. folgende Schachtbelegung.

Schacht 1Nummer = 2
Schacht 2Nummer = 3
Schacht 3Nummer = 5

Es gilt also herauszufinden, welche interne Nummer dem Papierschacht für das Druckermodell zugeordnet ist.

Herunterladen der originalen XDC-Dateien

Die XDC-Dateien liegen in folgendem Verzeichnis des Adobe Designers auf dem Frontend des SAP Formularentwicklers:

C:\Program Files (x86)\Adobe\Designer 10.4         (gilt für Version 10.4)

Schachtsteuerung SAP Adobe Forms XDC Dateien

Die Datei hppcl5e.xdc ist lokal auf dem Rechner als Kopie zu sichern.

Modifizieren der XDC-Datei

Die Datei hppcl5e.xdc ist in zhppcl5e.xdc umzubenennen und mit einem Editor, z.B. Wordpad zu öffnen.

Als erstes ist im Header in den Metadaten der Name der XDC-Datei zu ändern. Es ist überall ein „Z“ davorzusetzen, d.h. überall wo „hppcl5e“ steht muss „zhppcl5e“ eingesetzt werden.

Dies ist wichtig, damit der richtige Dateiname in die Trace-Datei für die Fehlersuche geschrieben wird.

Informationen in der XDC-Datei

In der XDC-Datei sind einem Seitenformat, das im Adobe Designer der Masterpage zugeordnet wird, verschiedene Informationen zugeordnet.

Z.B. ist der Seite FIRST im Adobe Designer das Seitenformat A4 NORMAL zugeordnet.

In der XDC-Datei sind nun einige Eigenschaften der Seite A4 NORMAL = a4Plain zugeordnet:

</medium>

<medium stock=“a4Plain“ short=“210mm“ long=“297mm“>26</medium>

Erweitern der XDC-Datei um die Schachtsteuerung

Die XDC-Datei wird jetzt um folgende Sequenzen erweitert:

<!– ========================================== –>

<!– Input Trays                                –>

<!– ========================================== –>

<inputTrays>

<inputTrayDefinition name=“Tray 2″ medium=“a4Plain“ trayType=“Plain“ trayNumber=“3″/>

</inputTrays>

In der o.a. Sequenz wird dem Seitenformat a4Plain der Papierschacht 2 mit der internen Schachtnummer = 3 zugeordnet. Im Papierschacht 2 liegt Blankopapier (Plain).

Der Übersicht halber wird die Sequenz unterhalb der Seitenformate in der XDC-Datei eingefügt.

Der Ausschnitt der XDC-Datei sieht dann folgendermaßen aus:

</medium>

<medium stock=“a4Color“ short=“210mm“ long=“297mm“>26</medium>

<medium stock=“b4JISPlain“ short=“250mm“ long=“354mm“>46</medium>

<medium stock=“b4JISLetterhead“ short=“250mm“ long=“354mm“>46</medium>

<medium stock=“b4JISSpecial“ short=“250mm“ long=“354mm“>46</medium>

<medium stock=“b4JISColor“ short=“250mm“ long=“354mm“>46</medium>

<!– ========================================== –>

<!– Input Trays                                –>

<!– ========================================== –> <inputTrays>

<inputTrayDefinition name=“Tray 3″ medium=“a4Plain“ trayType=“Plain“ trayNumber=“5″/>

</inputTrays>

<!– ========================================== –>

<!– Units                                      –>

<!– ========================================== –>

<deviceUnits name=“general“             hSize=“.12pt“ vSize=“.12pt“ fracDigits=“0″ fraction=“round“/>

<deviceUnits name=“pageDimensions“      hSize=“.1pt“ vSize=“.1pt“ fracDigits=“0″ fraction=“round“/>

<deviceUnits name=“lineDimensions“      hSize=“.12pt“ vSize=“.12pt“ fracDigits=“0″ fraction=“round“/>

Die Datei zhppcl5c.xdc ist jetzt zu sichern.

Anlegen eines neuen Gerätetypen

In Tabelle TSPOB kann man sehen, welchem SAP-Gerätetyp eine XDC-Datei zugeordnet ist. Für PCL-fähige Schwarz-Weiß-Drucker ist es z.B. der Gerätetyp HPLJ4.

Kopieren eines SAP-Gerätetypen

In TRX SPAD lässt man sich alle Gerätetypen anzeigen. In der Ansicht der Gerätetypen markiert man HPLJ4 und drückt auf Kopieren.

Nun kopiert man den Gerätytpen HPLJ4 in ZHPLJ4.

Nach der Kopie ist auch automatisch ein neuer Eintrag für ZHPLJ4 in Tabelle TSPOB erzeugt worden.

Zuordnung der modifzierten XDC-Datei zum neuen Gerätetypen

  • Aufrufen des Reports RSPO0022.
  • Markieren des Gerätetypen ZHPLJ4.
  • Drücken des Ändern-Buttons.
Schachtsteuerung SAP Adobe Forms Geraetetyp zu XDC

Jetzt als XDC-Name „zhppcl5e.xdc“ eintragen und als Typ „pcl“.

Schachtsteuerung SAP Adobe Forms Geraetetyp zu XDC 2

Der Eintrag in Tabelle TSPOB wird nun geändert. Beim Generieren des PDF-Formulars wird dem Drucker nun die Information gegeben, dass er die angegebene XDC-Datei nutzen soll.

Dem Drucker den neuen Gerätetypen zuordnen

Der Drucker, auf dem die Schachtsteuerung greifen soll, erhält nun den Gerätetypen ZHPLJ4.

Schachtsteuerung SAP Adobe Forms Drucker zu Geraetetyp

TRX SPAD

Ablegen der modifizierten XDC-Datei auf dem ADS-Server

Dem Administrator beim SAP Anwender bzw. beim Outsourcer ist jetzt die modifizierte XDC-Datei zhppcl5e.xdc zu übergeben, z.B. per Mail.

Der Administrator legt die XDC-Datei nun in folgendem Verzeichnis auf dem ADS-Server ab:

\usr\sap\<SID>\SYS\global\AdobeDocumentServices\lib

Hinweise zur Beschleunigung der Arbeit

Es kann sein, dass man den Drucker mit mehreren internen Nummern für den Schacht testen muss, da jeder Drucker eine andere Nummernzuweisung haben kann. Es empfiehlt sich daher, mehrere XDC-Dateien mit jeweils differierenden Schachtnummern und auch mehrere Z-Gerätetypen im Vorfeld anzulegen. Die XDC-Dateien werden dann gesammelt dem Administrator gegeben. So vermeidet man über den Tag verteilt unnötige Wartezeiten, da der Administrator häufig mit anderen akuten Problemen beschäftigt oder nicht erreichbar ist.

Im Formular werden nun ggfs. die Seitenformate den Masterpages zugeordnet.

In unserem Szenario sieht das folgendermaßen aus:

Testen der Schachtsteuerung

In der SFP auf dem Mandanten, auf dem getestet wird geht man im entsprechenden Formular in folgendes Menü:

Hilfsmittel –> Einstellungen –> 4 = Sehr ausführlicher Trace

Schachtsteuerung SAP Adobe Forms Testen der Schachtsteuerung

Wenn das Formular prozessiert wird, dann werden an das PDF einige Dateien angehangen.

In den Trace-Dateien kann man z.B. erkennen, welche XDC-Datei gezogen wird.

Bei der Fehlersuche muss zunächst geprüft werden, ob die richtige XDC-Datei gezogen wird.

Dafür ist zunächst der Trace mit Level = 4 einzuschalten.

Dann ist das Formular in den Spool zu drucken und die PDF-Datei aus dem Spool lokal zu sichern.

Bei eingeschaltetem Trace werden an die PDF-Datei weitere Dateien als Anhang hinzugefügt.

Als XDC-Datei wird die adobepdf.xdc – Datei angezeigt. Das ist die XDC-Datei, die in der Druckvorschau gezeigt wird, allerdings nicht die beim Druck verwendete XDC-Datei.

Es ist wichtig zu erfahren, die beim Druck verwendete XDC-Datei zu ermitteln. Diese steht in der Datei xfa.xci.

Hier sollte eigentlich laut SAP die z-xdc-Datei stehen, die auf dem ADS verwendet wird. Bei mir steht jedoch immer die Standard-XDC-Datei drin, auch wenn die Schachtsteuerung funktioniert.

Darauf kann man sich also nicht verlassen.

Sollte einiges darauf hindeuten, dass auf dem ADS-Server nicht die richtige XDC-Datei ermittelt wird, ist die gesamte Konfiguration noch einmal zu überprüfen.

Ergänzende Dokumentationen

OSS-Hinweise zur Schachtsteuerung

1729666 – Erweiterte Druckoptionen für ADS-Druck

1777740 – Druckerschachtwahl mit SAPPDFPRINT

Forum-Diskussion

https://scn.sap.com/thread/1924221

 

Weitere Informationen

Spezialthemen zu SAP Formularen

SAP Formulare zum Festpreis

SAP Formularentwicklung