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.
- mittels eines Hotkeys und eines direkt vom IBM i-Bildschirm eingelesenen Dokumentennamens. (=Aktionstyp der Schablone = 2 bzw. Feldliste als Dokumentenname)
- mittels eines Hotkey und eines über ein IBM i-Programm eingelesenen Dokumentennamens. (=Aktionstyp der Schablone = 3 bzw. Dokumentenname von IBM i-Datenbank).
- ü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.
- 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)
- 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)
- 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.
- 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)
- 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)
- 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)
***************** 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.
***************** 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 >>> / <<<