Ausführen der Beispiel-Workflows zum Verarbeiten von Aufträgen, die aus MarcomCentral abgerufen wurden
Die Beispiel-Eingabeeinheit, der CallSOAPService-Schritt und die Benachrichtigung führen eine Simulation aus. Sie rufen nicht die angegebenen MarcomCentral-Web-Services auf. In der Simulation können Sie die Beispiele ausführen, ohne Ihre eigenen Anmeldeparameter für MarcomCentral zu erhalten, und Sie können einen beispielhaften MarcomCentral-Store einrichten, der dem Beispiel-Store ähnelt. Die Beispiele verwenden SOAP 1.1-Anfrage-Nutzdaten, um einen simulierten MarcomCentral-Auftrag und zwei Job-Tickets abzurufen. Der Wert in den Feldern der statischen Anmeldeparameter und des Kennworts weist RICOH ProcessDirector an, die Simulation auszuführen.
Nachdem Sie die Beispiele ausgeführt haben, können Sie sie kopieren. Anschließend können Sie die Werte in den Kopien anpassen, um Daten mit Ihrem eigenen Store auf der MarcomCentral-Website auszutauschen.
- Hinweis:
- Die Beispielobjekte und -dateien werden zusammen mit dem MarcomCentral Connect-Feature installiert.
Die Simulation enthält WSDL-SOAP-Anfrageobjekte (WSDL = Web Services Description Language; Beschreibungssprache für Web-Services), die aus MarcomCentral importiert wurden. Die Beispiel-Eingabeeinheit, die CallSOAPService-Schritte und die Benachrichtigung spezifizieren alle eine SOAP-Anfrage.
Diese Simulation verwendet diese Objekte und Dateien:
- Workflows:
- MarcomProcessOrders
- MarcomProcessJobTicket
- Auftragseigenschaftenzuordnung: MarconOrderSample
- Eingabeeinheit: MarcomReceiveOrders
Die Eingabeeinheit ruft XML-Aufträge von der MarcomCentral-Website ab, indem sie einen Aufruf an einen Web-Service auf
https://services.printable.com/Trans/1.0/Order.asmx
simuliert.Die SOAP-Anfrage lautet Marcom-GetOrdersByDate.
- Benachrichtigung: MarcomCloseoutOrder
Die Benachrichtigung sendet Informationen bezüglich der Vervollständigung des Auftrags an die MarcomCentral-Website, indem sie einen Aufruf an einen Web-Service auf
https://services.printable.com/Trans/1.0/Closeout.asmx
simuliert.Die SOAP-Anfrage lautet MarcomSample-CloseoutByOrder.
- XML-Aufträge
In der Simulation wird alle 30 Sekunden ein Auftrag vom Web-Service abgerufen.
Nachdem Sie die Beispiel-Workflows ausgeführt haben, können Sie den Inhalt eines Musterauftrags sehen. Gehen Sie zu
C:\aiw\aiw1\spool\default\job_number
.Ersetzen Sie job_number durch die Anzahl der Jobs, z. B. 10000001.
Zeigen Sie den Inhalt der Datei job_number.print.xml an, zum Beispiel 10000001.print.xml.
- XML-Job-Tickets
In der Simulation werden für jeden Auftrag zwei Job-Tickets abgerufen.
Nachdem Sie die Beispiel-Workflows ausgeführt haben, können Sie die Inhalte der zwei Musterjob-Tickets sehen. Gehen Sie zu
C:\aiw\aiw1\spool\default\child_job_number
.Ersetzen Sie child_job_number durch die Anzahl der untergeordneten Jobs, zum Beispiel 10000001.1 oder 10000001.2.
Zeigen Sie den Inhalt der Datei child_job_number.print.xml an, zum Beispiel 10000001.1.print.xml oder 10000001.2.print.xml.
- Druckdatei:
Savings.pdf
Diese Datei wird lokal von
http://localhost:15080/restapi/
heruntergeladen. - XSLT-Stylesheet-Datei:
downloadOverrides.xslt
Die Datei befindet sich im Verzeichnis
Marcom
:C:\aiw\aiw1\testfiles\Marcom
. - CallSOAPService-Schritt:
- Der CallSOAPService-Schritt ruft ein Job-Ticket von der MarcomCentral-Website ab, indem er einen Aufruf
an einen Web-Service auf
https://services.printable.com/Trans/1.0/JobTicket.asmx
simuliert.Die SOAP-Anfrage lautet Marcom-GetJobTicketByLineItem.
- Der CallSOAPService-Schritt ruft ein Job-Ticket von der MarcomCentral-Website ab, indem er einen Aufruf
an einen Web-Service auf
So führen Sie den Beispiel-Workflow aus:
- Klicken Sie auf die Registerkarte Hauptseite.
- Wählen Sie im Portlet "Drucker" den Drucker Muster aus, und klicken Sie auf Aktivieren.
- Klicken Sie im Portlet "Eingabeeinheit" mit der rechten Maustaste auf die SOAP-Web-Service-Eingabeeinheit
MarcomReceiveOrders, und wählen Sie Aktivieren und Verbinden aus.
In der Jobtabelle wird ein Job namens Marcom-Beispielauftrag angezeigt.
- Klicken Sie mit der rechten Maustaste auf die Eingabeeinheit MarcomReceiveOrders, und wählen Sie Deaktivieren und trennen aus.
- Hinweis:
- Die Muster-Eingabeeinheit fragt alle 30 Sekunden Aufträge ab und ruft einen XML-Job ab. Wenn Sie die Eingabeeinheit nicht deaktivieren und trennen, wird alle 30 Sekunden ein neuer Job in der Jobtabelle angezeigt.
Die Anfrage-Nutzdaten für die Eingabeeinheit enthält die folgenden RICOH ProcessDirector-Symbole:
- ${WebService.StaticCredential}
Gibt die statische Anmeldedaten an.
- ${WebService.LastSuccessRequestTime}
Gibt das Datum und die Uhrzeit an, wann das Eingabegerät zuletzt erfolgreich eine Antwort von einem Web-Service angefordert hat.
- ${WebService.CurrentRequestTime}
Gibt das Datum und die Uhrzeit der aktuellen Anforderung an.
Jedes Mal, wenn die Eingabeeinheit MarcomReceiveOrders einen XML-Job abruft, sendet sie den Job an den Workflow MarcomProcessOrders.
Der Job durchläuft diese und andere Schritte im Workflow MarcomProcessOrders:
- Der Schritt SetJobPropsFromTextFile setzt das Merkmal Jobname auf Marcom Sample Order.
- Der Schritt CreateOrdersFromFile verwendet das Eigenschaftenzuordnungsobjekt MarcomOrderSample, um Aufträge und Jobs zu identifizieren und dann die Werte einiger XML-Elemente in der XML-Auftragsdatei den Auftrags- und Jobeigenschaften zuzuordnen.
-
In der Tabelle sind die Eigenschaften aufgeführt, die festgelegt werden.
XML-Element Datenbankname Benutzerschnittstellenname /Order/OrderNumber
Order.Name Auftragsname /Order/ID
Order.Reference Externe Auftragsreferenz /Order/OrderDetails/OrderDetail/User/Name
Order.Customer Kundenname /Order/OrderDetails/OrderDetail/SKUDescription
Order.Description Beschreibung /Order/OrderDetails/OrderDetail/Quantity
Job.Copies Angeforderte Jobkopien /Order/OrderDetails/OrderDetail/OrderNumber
Job.Marcom.OrderNumber MarcomCentral-Auftragsnummer /Order/ID
Job.Marcom.OrderId MarcomCentral-Auftrags-ID /Order/OrderDetails/OrderDetail/ID
Job.Marcom.JobTicketId MarcomCentral-Job-Ticket /Order/OrderDetails/OrderDetail/ProductType
Job.Marcom.ProductType MarcomCentral-Produkttyp /Order/OrderDetails/OrderDetail/ProductName
Job.Name Jobname Der Schritt identifiziert einen Auftrag mit zwei Jobs darin. Er erstellt zwei Jobs, Jensen Bank Baseball Cap und Brochure, und übergibt die Jobs an den MarcomProcessJobTicket-Workflow.
Der original Auftragsjob wird an den Schritt WaitForRelatedJobs gesendet.
Die Jobs werden im MarcomProcessJobTicket-Workflow verarbeitet. Wenn die Jobs den Schritt SetJobPropsFromTextFile verlässt, überprüft die Regel am Konnektor [1] Warehouse den Wert der Eigenschaft MarcomCentral-Produkttyp. Versioniert, Variabel und JobDirect sind Produkttypen für druckbare Artikel.
- Wenn der Artikel nicht über einen druckbaren Produkttyp verfügt, sendet der Workflow den Job durch die Abzweigung Warehouse.
- Verfügt der Artikel über einen druckbaren Produkttyp, sendet der Workflow den Job durch die Abzweigung Druckbar.
Die nicht-druckbaren Jobs durchlaufen den Schritt ManualStepWithAutoStart in der Abzweigung Warehouse des Workflow. Die Jobs warten in diesem Schritt, bis das Lagerpersonal angibt, dass die Jobs versandbereit sind.
Die druckbaren Jobs durchlaufen diese Schritte und Konnektoren in der Abzweigung Druckbar des Workflow:
- Wenn der Job bei dem zweiten ContinueToNextStep-Schritt ankommt, überprüft die Regel am Anschluss [1]-Datei bereit, ob für das Merkmal Benutzerdefiniert 3 (URL der herunterzuladenden Datei) ein Wert festgelegt ist.
- Ist dies der Fall, steht die Druckdatei zum Herunterladen bereit. Der Workflow sendet den Auftrag direkt an den Schritt DownloadFile.
- Ist dies nicht der Fall, überprüft die Regel am Konnektor [2] Auf Datei prüfen, ob der Wert der Jobeigenschaft Benutzerdefinierte Ganzzahl 1 kleiner als 10 ist. Wenn der Job zum ersten Mal beim zweiten ContinueToNextStep-Schritt ankommt, lautet der Wert der Eigenschaft Benutzerdefinierte Ganzzahl 10.
- Ist der Wert ein Wert von 0 bis 9, sendet der Workflow den Job an den Schritt Warten, wo er dann 30 Sekunden wartet. Der Workflow sendet den Job dann an den Schritt
CallSOAPService.
Der Schritt CallSOAPService ruft den MarcomCentral-Web-Service auf, der ein Job-Ticket für einen druckbaren Artikel abruft. Der Schritt gibt zwei RICOH ProcessDirector-Symbole als Teil des Werts in der Eigenschaft Anforderungs-Nutzlast an:
- ${Job.WebService.Password}
Gibt die statische Anmeldedaten an.
- ${Job.Marcom.JobTicketId}
Gibt die Jobticket-ID an.
Mit dem XSLT-Stylesheet downloadOverrides.xslt konvertiert der Schritt
ApplyXSLTransform2
ein XML-Element in ein RICOH ProcessDirector-Jobmerkmal:XML-Element Datenbankname des Jobmerkmals Benutzerschnittstellenname des Jobmerkmals JobTicket/FinalOutputFileURL/URL Job.Info.Attr3 Benutzerdefiniert 3 Der Schritt legt den Wert in einer Überschreibungsdatei ab und überschreibt die Überschreibungsdatei im Spoolverzeichnis für den Job mit der neuen Überschreibungsdatei.
Dieses Beispiel zeigt den Inhalt der Beispiel-Überschreibungsdatei:
Job.Info.Attr3=http://localhost:15080/restapi/Savings.pdf
Der Schritt AssignJobValues erhöht den Wert der Eigenschaft Benutzerdefinierte Ganzzahl 1 um 1. Der Workflow sendet den Job zurück an den zweiten ContinueToNextStep-Schritt, der den Job durch den Schritt Warten an den Schritt CallSOAPService sendet. Der Schritt CallSOAPService wiederholt den Aufruf an den MarcomCentral-Web-Service, der ein Job-Ticket für einen druckbaren Artikel abruft. Wenn das Merkmal Benutzerdefiniert 3 immer noch keinen Wert für die URL enthält, sendet der Workflow den Job bis zu 9-mal durch den Schritt CallSOAPService.
- ${Job.WebService.Password}
- Lautet der Wert 10, wurde der Job 10 Mal an den Schritt CallSOAPService gesendet. Nach 5 Minuten enthält das Merkmal Benutzerdefiniert 3 immer noch keinen Wert für die herunterzuladende Datei. Der Job erfüllt die Regel
am Anschluss [2] Auf Datei prüfen nicht. Der Workflow sendet den Job durch den Anschluss [3] Zeitlimit an den Schritt FailWithMesssage und schreibt eine Fehlermeldung in das Jobprotokoll. Die Meldung besagt: Datei stand in der zulässigen Zeitspanne nicht zum Herunterladen zur Verfügung.
- Hinweis:
- Da die Meldung eine Jobeigenschaft ist, wird sie im Jobeigenschaft-Notizbuch auf dem Reiter Informationen für alle Jobs angezeigt, die den Workflow durchlaufen. Die Meldung wird nur dann im Jobprotokoll angezeigt, wenn der Workflow den Job über den Anschluss [3] Zeitlimit an den Schritt FailWithMesssage sendet.
- Ist der Wert ein Wert von 0 bis 9, sendet der Workflow den Job an den Schritt Warten, wo er dann 30 Sekunden wartet. Der Workflow sendet den Job dann an den Schritt
CallSOAPService.
- Der Schritt DownloadFile lädt die Druckdatei
Savings.pdf
vonhttp://localhost:15080/restapi/
herunter, indem der Wert des Merkmals URL der herunterzuladenden Datei auf das Symbol ${Job.Info.Attr3}- gesetzt wird. - Die Schritte OptimizePDF, CountPages, CreatePageRanges und PrintJobs verarbeiten und drucken den Job auf dem Beispiel-Drucker.
Der Schritt WaitForRelatedJobs hält den übergeordneten Job und alle untergeordneten Jobs an, bis alle untergeordneten Jobs bei dem Schritt angekommen sind.
- Klicken Sie in der Jobtabelle mit der rechten Maustaste auf den Job Jensen Bank Baseballkappe, und wählen Sie Manuell abgeschlossen aus.
- Wählen Sie Zum nächsten Schritt verschieben aus, und klicken Sie auf OK.
Der Job wird in den Schritt WaitForRelatedJobs verschoben.
Wenn beide Jobs den Schritt WaitForRelatedJobs erreichen, sendet der Workflow alle drei Jobs (den ursprünglichen Auftragsjob, den nicht druckbaren Job und den druckbaren Job ) an den Schritt RetainCompletedJobs. Der Status jedes Jobs ändert sich in Aufbewahrt. Der Status des Auftrags ändert sich in Abgeschlossen.
Die Web-Service-Benachrichtigung MarcomCloseoutOrder ruft den Web-Service auf
https://services.printable.com/Trans/1.0/Closeout.asmx
auf.Die Anfrage-Nutzdaten enthalten die folgenden RICOH ProcessDirector-Symbole:
- ${WSNotification.WebService.Credential}
Gibt die statische Anmeldedaten an.
- Die ${Job.Marcom.OrderId}
Gibt die Auftrags-ID an.
Wenn die Benachrichtigung den Web-Service aufgerufen hat statt die Simulation auszuführen, findet diese Änderung im Beispiel-Store auf der MarcomCentral-Website statt. Im Auftragsmanager im Dialogfeld Nach Element anzeigen wechselt der Wert in der Spalte Auftragsstatus für jedes Element in dem Auftrag Nummer WS113 von In Bearbeitung in Versandt.
- ${WSNotification.WebService.Credential}
- Klicken Sie in der Jobtabelle mit der rechten Maustaste auf den Job Broschüre, und wählen Sie Anzeigen aus.Die Anzeigefunktion zeigt die PDF-Datei an, die als Teil des Auftrags gedruckt wurde.
Jetzt, nachdem Sie die Muster ausgeführt haben, können Sie sie kopieren. Passen Sie die Werte in den Kopien an, um Daten mit Ihrem eigenen Store auf der MarcomCentral-Website auszutauschen. Beachten Sie die zugehörigen Themen.