Toolmaker Produkt-Dokumentation
directmedia Befehle für die Kommunikation
Inhaltsübersicht
Zur native TCP/IP-Implementation von directmedia gehört auch ein von Client-Programm unabhängig arbeitender Befehlsinterpreter über den von der IBM i aus Befehle an PC-Systeme weitergegeben werden können.
Konfiguration für DIRPCCMD
Der Befehl DIRPCCMD ersetzt die Befehle STRPCCMD, bzw. RUNRMTCMD, die nur unter einer Client Access-Umgebung lauffähig sind.
Über den Befehl DIRPCCMD können aus Programmen heraus, oder aus der Befehlszeile der IBM i heraus Programme auf PC-Systemen gestartet und Parameter übergeben werden.
Die Kommunikation zwischen IBM i und PC-System erfolgt über ein Serverprogramm das auf der IBM i läuft und einem Clientprogramm das am PC läuft. Das Serverprogramm sollte über die Startup-Routine (QSTRUP) der IBM i beim Systemstart mitgestartet werden, ebenso das Clientprogramm über die Autostartfunktion am PC.
Manuell kann der PC-Client über Start – Programme – Toolmaker - directmedia – DirPCCmd Server gestartet werden. Ein gestarteter DirPCCmd Server ist durch das Symbol in der Taskleiste sichtbar:
0063 - Taskleisten-Symbol
Durch Klick auf die rechte Maustaste über dem Taskleistensymbol wird ein Kontextmenü eingeblendet:
0064 - Kontextmenü DirPCCmd Server
Einblenden/Ausblenden
Über die Auswahlen "Einblenden" und "Ausblenden" wird ein Protokollfenster ein-, bzw. ausgeblendet.
0065- Kontextmenü DirPCCmd Server – Einblenden
Ausblenden
Das Fenster wird ausgeblendet.
Beenden
directmedia Server wird beendet.
Info
Infofenster der directmedia Server wird eingeblendet.
0066 – directmedia DirPCCmd Server - Info
Hilfe
Hilfedatei wird angezeigt.
DirPCCmd Server auf dem PC als Dienst starten/beenden
In Terminalserver- und Citrix- Umgebungen gibt es Probleme wenn der DirPCCmd Server als Programm gestartet wird, da directmedia auf der IBM i nur mit einer Instanz des Programms kommuniziert und die anzuzeigenden Dokumente, bzw. zu startenden Programme an der Konsole anstelle der richtigen Clientsitzung auflaufen.
Dies lässt sich vermeiden, indem der DirPCCmd Server als Dienst gestartet wird. Über Start - Programme – directmedia – directmedia Dienst starten, wird der Dienst gestartet und über Start – Programme – directmedia – directmedia Dienst beenden wird der Dienst wieder beendet.
Befehl DIRPCCMD
Zum Testen des Befehles DIRPCCMD geben Sie auf der Befehlszeile Ihrer IBM i folgende Befehle ein:
ADDLIBLE DIRMEDIA
DIRPCCMD + F4
Folgende Maske mit Parametern wird eingeblendet.
0067 - DIRPCCMD mit Aufruf des Windows-Taschenrechners 1.Seite
Pfad und Dokumentname/Befehl (PCCMD)
Geben Sie hier den Namen des Programms mit Parametern ein, wie es am PC gestartet werden soll.
In einem Befehl können die Platzhalter &input bzw. &output. verwendet werden.
&input Steht für die Lokation der übertragenen Datei.(z.B.: "C:\temp\eula.txt")
&output Für diesen Platzhalter wird ein temporärer Pfad und eine Datei erstellt.
Wird der Parameter &Output verwendet, muss auch der Parameter &Input angegeben werden.
Wird kein Platzhalter eingetragen, dann kommt der lokale Pfad der IFS-Datei am Ende des Befehls. Die Platzhalter werden nur ersetzt, wenn eine IFS-Datei benutzt wird, sonst bleiben die Platzhalter im Kommand so wie sie sind.
Beispiel: DIRPCCMD PCCMD('cmd /k "copy &input c:\temp\test.txt"') CVTSLASH(*NO) OBJ('/home/JKU/Test/eula.txt')
Ordner (FLR)
Geben Sie hier das Verzeichnis an, aus dem o.g. Programm aufgerufen werden soll. Slash wird immer in Backslash umgesetzt egal ob der Parameter „Umsetzung Slash->Backslash" auf *YES oder *NO steht. Der Parameter „Umsetzung Slash->Backslash" hat nur Auswirkung auf den Parameter Befehl.
Hinweis: Die Existenz des Ordners wird geprüft.
Umsetzung Slash->Backslash
Hier können Sie die eingegebenen "/"-Zeichen aus dem IBM i-Prompt in "\"-Zeichen umsetzen lassen.
Gültige Werte sind:
*YES -Die Slashes "/" werden in Backslashes "\" umgesetzt
*NO - Die Slashes werden nicht umgesetzt.
0068 - DIRPCCMD mit Aufruf des Windows-Taschenrechners 2.Seite
IP-Adresse (IPADDRS)
Hier können Sie bei Rechnern mit mehreren Netzwerkkarten, bzw. mit Netzwerk- und DFÜ-Verbindung die TCP/IP-Adresse eingeben, über welche die Kommunikation zwischen IBM i und PC stattfinden soll.
Gültige Werte sind:
*JOB - Der Standardwert ist *JOB, d.h. die TCP/IP-Adresse wird aus den Attributen der aktuellen Sitzung ausgelesen.
Adresse - Eine TCP/IP-Adresse im Format xxx.xxx.xxx.xxx die für die Kommunikation zwischen IBM i und PC benutzt werden soll
Synchroner Aufruf (SYNCHRON)
Synchroner Aufruf bedeutet, dass die IBM i auf die Beendigung des aufgerufenen Prozesses am PC wartet. Z.B. auf die Bearbeitung einer Grafik – Faxlogo – aus directfax die nach Beendigung der Bearbeitung über Microsoft Paint im gleichen Kommunikationsthread wieder zurück zur IBM i transferiert und dort gespeichert wird.
Gültige Werte sind:
*YES Es handelt sich um einen synchronen Aufruf bei demabgewartet wird, bis die aufgerufene PC-Anwendung beendet wird.
*NO Es handelt sich um einen asynchronen Aufruf, bei dem die Kommunikation nach Übertragung des gewünschten Befehls nicht geöffnet bleibt, es kann sofort die nächste Anforderung erfolgen.
IFS-Objekt übertragen (OBJ)
Mit dem Befehl DIRPCCMD können Programme am PC gestartet werden die z.B. lokal am PC oder in einem verbundenen Netzlaufwerk gespeicherte Daten bearbeitet werden (z.B. Aufruf von Microsoft Word und Öffnen eines Dokumentes).
Wenn die Objekte die hierbei zu öffnen sind, aus dem integrierten Dateisystem der IBM i stammen, ist es schneller die Objekte gleich über den geöffneten Kommunikationskanal zu übertragen anstelle eine langsame Netzlaufwerkverbindung zwischen PC und IBM i zu verwenden.
Gültige Werte sind:
*NONE Es wird kein Objekt übertragen
Name Es wird das mit voll qualifizierten Namen angegebene Objekt aus dem integrierten Dateisystem mit übertragen.
Geänderte IFS-Datei speichern (RETURNOBJ)
Wie unter „Synchroner Aufruf" oben beschrieben, können Daten wieder zurück zur IBM i übertragen werden nachdem sie am PC bearbeitet wurden. Hier steht in diesen Fällen der voll qualifizierte Pfad mit dem das Objekt im integrierten Dateisystem der IBM i gespeichert werden soll. Dieser Parameter macht nur wirklich Sinn wenn es sich um einen synchronen Aufruf handelt.
Gültige Werte sind:
*NONE Es wird keine Datei im IFS gespeichert.
Name Es wird das mit voll qualifizierten Namen angegebene Objekt zurück übertragen und im integrierten Dateisystem gespeichert.
Datei überschreiben (REPLACE)
Existiert die zu speichernde Datei bereits, kann hier entschieden werden, ob diese überschrieben wird oder nicht.
Gültige Werte sind:
*YES Eine ggf. existierende Datei wird überschrieben.
*NO Eine ggf. existierende Datei wird nicht überschrieben.
Befehl FAXDOC
Mit diesem Befehl ist es möglich PDF-Dokumente die in beliebigen PC-Verzeichnissen, bzw. im IFS der IBM i gespeichert sind, über directmedia von der IBM i aus gesteuert zu drucken.
0069 – Dokument auf PC faxen
Dokumentname (DOCUMENT)
Geben Sie hier den Namen des PDF-Dokumentes mit dem kompletten Pfad ein.
Drucker (PRINTER)
Hier steht der Drucker auf dem das Dokument ausgedruckt werden soll.
Gültige Werte sind:
leer Der am PC eingestellte Standarddrucker wird benutzt
Name Ein beliebiger auf dem PC installierter Drucker kann hier zum Ausdrucken angegeben werden. Der Druckername muss inAnführungszeichen (") gesetzt werden.
DirectFax32 for IBM i Ebenfalls in Anführungszeichen gesetzt wird das Dokument hiermit über unsere Faxlösung directfax versandt. Wird in der ersten Zeile des PDF-Dokumentes eine Faxnummer im Format ^FAX(1111111) gefunden, so wird das Dokument ohne weitere Interaktion versandt, wenn nicht wird ein Dialog zur Eingabe der Faxnummer angezeigt.
IP-Adresse/Host (IPADDRS)
Hier legen Sie über die Angabe der TCP/IP-Adresse oder des Hostnamens fest, auf welchem PC die Verarbeitung stattfinden soll.
Gültige Werte sind:
*JOB Die TCP/IP-Adresse des aktuellen Jobs wird verwendet um die Verarbeitung am gleichen PC auszuführen.
Adr./Host Die Verarbeitung erfolgt am hier angegebenen PC.
Befehl FSTCALL
Der Befehl FSTCALL ruft das Programm FSTCALL auf, das im Kapitel Aufrufvondirectmedia über einenCALL-Befehl (CALL FSTCALL) beschrieben ist.
0070 - Befehl FSTCALL 1.Seite
0071 - Befehl FSTCALL 2.Seite
Die Parameter zum Befehl FSTCALL wurden in o.g. Kapitel bereits erläutert.
Die Ausführung des Befehls FSTCALL ist abhängig vom Eintrag in Stelle 230 des Datenbereiches FSTDTAARA. Steht dort ein D, so wird das Programm DIRPCCMD aufgerufen, ansonsten das Programm STRPCCMD.
Befehl FSTCALLS
Dieser Befehl funktioniert analog zum Befehl FSTCALL, nur das hier fest verdrahtet das Programm STRPCCMD (Client Access) aufgerufen wird.
Befehl FSTCALLD
Dieser Befehl funktioniert analog zum Befehl FSTCALL, nur das hier fest verdrahtet das Programm DIRPCCMD (Toolmaker TCP-Server) aufgerufen wird.