Toolmaker Produkt-Dokumentation

Verwendungsmethoden von directmedia

Inhaltsübersicht

Es gibt drei Möglichkeiten directmedia aufzurufen bzw. der Übergabe der Dokumentennamen der anzuzeigenden Bild-, Ton- oder Videodateien.

  1. mittels eines Hotkeys und eines direkt vom IBM i-Bildschirm eingelesenen Dokumentennamens. (=Aktionstyp der Schablone = 2 bzw. Feldliste als Dokumentenname)
  2. mittels eines Hotkey und eines über ein IBM i-Programm eingelesenen Dokumentennamens. (=Aktionstyp der Schablone = 3 bzw. Dokumentenname von IBM i-Datenbank).
  3. über einen CALL-Befehl von einem IBM i-Programm heraus. (Ohne Verwendung von Hotkeys und Schablonen).Anstelle der Verwendung von Hotkeys, Schablonen und Felddefinitionen wird directmedia direkt von einem IBM i-Programm mittels eines CALL-Befehles aufgerufen. Das aufzurufende Programm FSTCALL befindet sich in der Bibliothek DIRMEDIA. Die Übergabe des Pfades und des Dokumentennamens sowie der übrigen Einstellungen für die Anzeige des Windows erfolgt über 17 Parameter, wovon der 1. Parameter immer den Pfad und den Dokumentennamen beinhalten muss.

Aufruf von directmedia mit Hotkeys und vom Bildschirm eingelesenen Dokumenten

Zum Aufruf von directmedia mittels eines Hotkeys und eines vom IBM i-Bildschirm direkt eingelesenen Dokumentes sind folgende Schritte notwendig.

  1. Erstellen einer Schablone mit Aktionstyp = 2 bzw. Feldliste als Dokument, wo einerseits der Hotkey andererseits sämtliche Einstellungen für das anzuzeigende Window anzugeben sind. Details siehe Kapitel 4.1 und 5.2. (Erstellen und Ändern von Schablonen)
  2. Erstellen ein oder mehrerer Felddefinitionen, mit Angabe der genauen Positionen und Längen auf Ihrem IBM i-Bildschirm, deren eingelesene Inhalte dann den Namen des anzuzeigenden Dokumentes bilden. Details siehe Kapitel 4.1 und 5.2. (Erstellen und Ändern von Felddefinitionen)
  3. Das Serverprogramm TCPDMSERV muss nicht gestartet sein. Es kommt beim Starten des directmedia am PC zwar ein Hinweis, dass der Server nicht aktiv ist, lokales Arbeiten ist jedoch trotzdem möglich.

Aufruf von directmedia mit Hotkeys und IBM i-Programmen

Zum Aufruf von directmedia mittels eines Hotkeys und eines von einem IBM i-Programm übergegebenen Dokumentennamen sind folgende Schritte notwendig.

  1. Erstellen einer Schablone mit Aktionstyp = 3 bzw. Dokumentenname von IBM i, wo einerseits der Hotkey andererseits sämtliche Einstellungen für das anzuzeigende Window anzugeben sind, sowie auch der Name und die Bibliothek jenes IBM i-Programmes, welches den Dokumentennamen von einer IBM i-Datenbank einliest und an directmedia zurückgibt. Details siehe Kapitel 4.1 und 5.2. (Schablonen)
  2. Erstellen ein oder mehrere Felddefinitionen, mit Angabe der genauen Positionen und Längen auf Ihrem IBM i-Bildschirm, deren eingelesene Feldinhalte dem IBM i-Programm, welches den Dokumentennamen ermittelt, als Eingangsparameter dienen. Diese Feldinhalte können zum Beispiel eine Kundennummer oder Personalnummer sein. Das IBM i-Programm ermittelt auf Grund dieser übergebenen Feldinhalte im Anschluss daran den Namen und Pfad des auf einer Datenbank hinterlegten Dokumentes. Details siehe Kapitel 4.1 und 5.2. (Felddefinitionen)
  3. Erstellen eines IBM i-Programmes, welches als Eingangsparameter die Inhalte der eingelesenen Felder der entsprechenden Schablone erhält und als Übergabeparameter den Pfad und den Dokumentennamen an directmedia zurückgibt.

Eingangsparameterliste für das IBM i-Programm:

Parameterbeschreibung

Parametertyp

Gültige Parameterargumente

Key-String (beinhaltet die eingelesenen Felder vom Bildschirm)

Text 1024

Strings bis Gesamtlänge 1024

Ausgangsparameterliste für das IBM i-Programm:

Parameterbeschreibung

Parametertyp

Gültige Parameterargumente

Dokumentenname

Text 256

Strings bis Gesamtlänge 256

Dokumentenpfad

Text 1024

String bis Gesamtlänge 1024

Hinweis: Das IBM i-Programm kann ein CL-, ein RPG/400- oder auch ein ILE-RPG-Programm sein.

Nachfolgend finden Sie ein Beispielprogramm für ein IBM i-Programm, welches einen Dokumentennamen zurückgibt. (in Bearbeitung)

Beispielprogramm für die Übergabe eines Dokumentes aufgerufen durch einen Hotkey, welcher in der Schablone dazu hinterlegt ist
***************** Datenanfang *****************************************
0008.00 PGM PARM(&KEY &DOCNAM &PATH)

0009.00 /* INPUT PARAMETER: CONTAINS THE CONCATENATED TEMPLATE FIELDS */
0010.00 DCL VAR(&KEY) TYPE(*CHAR) LEN(1024)
0011.00 DCL VAR(&KEY1) TYPE(*CHAR) LEN(8)
0012.00 DCL VAR(&KEY2) TYPE(*CHAR) LEN(8)

0013.00 /* OUTPUT PARAMETER: CONTAINS THE DOCUMENT NAME (E.G.: TEST.BMP */
0014.00 DCL VAR(&DOCNAM) TYPE(*CHAR) LEN(256)

0015.00 /* OUTPUT PARAMETER: CONTAINS THE PATH NAME OR PATHES LIST */
0016.00 DCL VAR(&PATH) TYPE(*CHAR) LEN(1024)

0017.00 CHGDTAARA DTAARA(*LDA (1 1024)) VALUE(&KEY)
0018.00 RTVDTAARA DTAARA(*LDA (1 8)) RTNVAR(&KEY1)
0019.00 RTVDTAARA DTAARA(*LDA (9 8)) RTNVAR(&KEY2)

0020.00 /* CALL A PROGRAM WHICH ACCESSES YOUR DATA BASE TO RETRIEVE DATA */

0021.00 /* CALL PGM(RPGPGM) PARM(&KEY &DOCNAM &PATH) */

0024.00 CHGVAR VAR(&PATH) VALUE('C:/TEST/')
0025.00 CHGVAR VAR(&DOCNAM) VALUE('TEST.BMP')

Hinweis: Bitte übergeben Sie an directmedia keine Backslash >>> {color} <<< bei Pfadübergaben, sondern immer nur einfache Slash >>> / <<<

Aufruf von directmedia über einen CALL-Befehl (CALL FSTCALL)

Zusätzlich zum Aufruf von directmedia mittels Hotkeys kann der Aufruf auch direkt über einen CALL-Befehl erfolgen. Das dabei aufzurufende Programm FSTCALL befindet sich in der Bibliothek

DIRMEDIA und benötigt folgende 17 Eingangsparameter wie folgt:

Parameterliste für das Programm FSTCALL:

Parameterbeschreibung

Parametertyp

Gültige Parameterargumente

Pfad und Dokumentenname(Command)

Text 128

z.B.: C:/BITMAP/TEST.BMP

Horizontale Anfangsposition(PX)

Numerisch 4(0)

z.B.: 0050 (50 Pixel von links)Blank für Standardwert

Vertikale Anfangsposition(PY)

Numerisch 4(0)

z.B.: 0040 (40 Pixel von oben)Blank für Standardwert

Breite des Windows(SX)

Numerisch 4(0)

z.B.: 0250 (250 Pixel breit)Blank für Standardwert

Höhe des Windows(SY)

Numerisch 4(0)

z.B.: 0300 (300 Pixel hoch)Blank für Standardwert

Unterdrückung Anzeige Menüs(NM)

Text 1

'1' Keine Anzeige von MenüsBlank für Menüs anzeigen

Unterdrückung Anzeige Toolbar(NT)

Text 1

'1' Keine Anzeige der ToolbarBlank für Toolbar anzeigen

Unterdrückung Anzeige Statusbar (NS)

Text 1

'1' Keine Statusbar anzeigenBlank für Statusbar anzeigen

Unterdrückung Anzeige Caption(=Fenstertitel) (NC)

Text 1

'1' Keine Caption anzeigenBlank für Caption anzeigen

Schließen aller von directmedia vorher geöffneten Windows(CA)

Text 1

'1' Schließen aller WindowsBlank für nicht schließen

Schließen des zuletzt von directmedia geöffneten Windows(CP)

Text 1

'1' Schließen des letzten WindowBlank für nicht schließen

Kontrolle (Focus) an IBM i(CL)

Text 1

'1' Kontrolle geht an IBM iBlank für Kontrolle im Window (Focus)

Horizontale Scrollbalkenposition(SCX)

Numerisch 4(0)

z.B.: 0100 (100 Pixel von links)Blank für Position links

Vertikale Scrollbalkenposition(SCY)

Numerisch 4(0)

z.B.: 0200 (200 Pixel von oben)Blank für Position oben

Zoomfaktor in %(ZM)

Numerisch 3(0)

z.B.: 150 (150 %)Blank für 100%

Drehwinkel des Bildes(AG)

Numerisch 3(0)

z.B.: 090 (um 90° gedreht)Blank für keine DrehungErlaubte Werte: 090, 180, 270

Editierung(ED)

Text 1

'1' Editierung zulässigBlank für keine Editierung

Achtung: Dieser Parameter wird am PC z.Zt. noch nicht unterstützt, muss aber übergeben werden!


Hinweis: Bitte beachten Sie, dass alle Parameter in derselben wie oben angeführten Reihenfolge an das Programm FSTCALL übergeben werden müssen.

Nachfolgend finden Sie ein Beispiel für ein RPG/400-Program, welches obig beschriebene 17 Parameter an das Programm FSTCALL übergibt und dieses aufruft.

Beispielprogramm (RPG/400) für den Aufruf von FSTCALL
***************** Datenanfang *****************************************

 H* ÜBERGABE DER PARAMETER UND AUFRUF VON FSTCALL
 E BILD 128 1 ARRAY BITMAP
 C****************************************************************
 C MOVEA    *BLANKS              BILD   
 C MOVEA    'C:/TEST/'BILD,1     PFAD
 C MOVEA    'TEST.BMP'BILD,9                      BITMAPDATEI
 C*
 C CALL 'FSTCALL'    97
 C       PARM BILD                                      PFAD UND DATEINAME
 C       PARM '0050' POSX     4                         HORIZ. ANFANGSPOSITION IN PIXEL
 C       PARM '0050' POSY     4                         VERT. ANFANGSPOSITION IN PIXEL
 C       PARM '0200' SIZEX    4                         BREITE IN PIXEL
 C       PARM '0300' SIZEY    4                         HÖHE IN PIXEL
 C       PARM '1' NOMENU      1                         KEINE MENÜBAR
 C       PARM '1' NOTOOL      1                         KEINE TOOLBAR
 C       PARM '1' NOSTAT      1                         KEINE STATUSBAR
 C       PARM ' ' NOCAPT      1                         KEINE CAPTION
 C       PARM ' ' DELALL      1                         ALTE FENSTER SCHLIEßEN
 C       PARM '1' DELPRE      1                         LETZTES FENSTER SCHLIEßEN
 C       PARM '1' CONTRL      1                         KONTROLLE AN IBM i
 C       PARM ' ' SCRLX       4                         HORIZ. SCROLL-POSITION
 C       PARM ' ' SCRLY       4                         VERTIKALE SCROLL-POSITION
 C       PARM ' ' ZOOM        3                         ZOOMFAKTOR in %
 C       PARM ' ' ANGLE       3                         DREHWINKEL
 C       PARM ' ' EDIT        1                         EDITIEREN
 C*
 C SETON LR


Hinweis: Bitte übergeben Sie an directmedia keine Backslash >>> {color} <<< bei Pfadübergaben, sondern immer nur einfache Slash >>> / <<<