PDA

View Full Version : Wo bin ich QCTL od. QINTER



Seiten : [1] 2

Frank.Sobanek
08-08-01, 12:45
Folgendes Problem:
Bei einem Tagesabschluss,der Interactiv gestartet werden muss wird vor der Sicherung Qinter beendet. Jetzt passiert es immer wieder das User sich selbst abschiessen,weil sie im falschen SBS gestartet haben.Ich habe das Problem kurzfristig so gelöst,das ich vor beginn des TA.mit DSPJOB (*Print/*STSA)eine Liste erstelle und diese auslese.
Gibt es keine andere Möglichkeit herauszufinden in welchem SBS ich mich befinde.Gruss Frank

schreibr
08-08-01, 12:57
Hallo Frank,
ich würde Dein Problem ganz anders angehen. Ich kann doch festlegen, in welchem Subsystem der Bildschirm AUTOMATISCH läuft ! Schau Dir mal mit WRKSBSD QINTER und Auswahl 5 die Punkte 4. und 5. an. Hier kannst Du mit den Befehlen GO CMDWSE Datenstationseinträge ändern bzw. hinzufügen. Dadurch steuerst Du, welche BS-Typ bzw. welcher BS-Name in welchem Subsystem läuft.
Gruss Reinhold

Frank.Sobanek
08-08-01, 13:11
<BLOCKQUOTE><font size="1" face="Verdana, Arial">Zitat:</font><HR>Original erstellt von schreibr:
Hallo Frank,
ich würde Dein Problem ganz anders angehen. Ich kann doch festlegen, in welchem Subsystem der Bildschirm AUTOMATISCH läuft ! Schau Dir mal mit WRKSBSD QINTER und Auswahl 5 die Punkte 4. und 5. an. Hier kannst Du mit den Befehlen GO CMDWSE Datenstationseinträge ändern bzw. hinzufügen. Dadurch steuerst Du, welche BS-Typ bzw. welcher BS-Name in welchem Subsystem läuft.
Gruss Reinhold[/quote]

Frank.Sobanek
08-08-01, 13:35
Hallo Reinhold,
dieses Progamm lauft beim Kunden.
Dieser weiss an welchem BS der Tagesabschluss aufgerufen werden muss.Doch immer wieder passiert es das der falsche BS benutzt wird.??????
Und um ganz sicher zu gehen wurden wir gebeten das ganze so zu gestalten das nichts
mehr passieren kann.Der Tagesabschluss muss
täglich von hand gestartet werden.
Gruss danke für die Antwort.

schreibr
08-08-01, 13:48
Hallo Frank,
wie wäre es dann mit folgender Variante:
Im CL für den Tagesabschluss als eine der ersten Anweisungen einen RTVJOBA JOB(&JOB) einbauen. Als Name im &JOB wird Dir der Name des Bildschirms zurückgegeben. Jetzt kannst Du noch qualifiziert den Bildschirmname abfragen, an dem der Tagesabschluss ausschliesslich aufgerufen werden darf. Jeden anderen Bildschirmnamen kannst Du abweisen - und, ist es das ?
Gruss Reinhold

Frank.Sobanek
08-08-01, 14:37
Hallo Reinhold,
gut!!!! aber was passiert wenn jemand
TFRJOB an dem BS eingegeben hat.
Wie gesagt die Nummer soll 100%tig sein.
Du kennst ja den Spruch mit dem Pferd vor der Apotheke.
Gruss
Frank

JoergZ
08-08-01, 14:46
Hallo Frank !

Also wenn ich das richtig verstanden habe, ist der Name des Bildschirms von dem aus der TA aufgerufen wird halbwegs konstant.

Warum hinterlegst Du nicht in einer Datei, DTAARA oder wo auch immer den oder die Devicenamen, an denen der Aufruf erlaubt ist. Im TA ermittelst Du mit RTVJOBA den BS-Namen und checkst ihn gegen die hinterlegten Werte.


Gruss

Jörg

Bruno Jakob
08-08-01, 15:15
Hallo Frank,

hast Du schon mal mit API's gearbeitet. Mit dem API QUSRJOBI kannst Du direkt rausfinden, in welchem Subsystem der Job aktiv ist.

Und so geht's:

PGM
DCL VAR(&RETVAL) TYPE(*CHAR) LEN(100)
DCL VAR(&RETLEN) TYPE(*CHAR) LEN(4) +
VALUE(X'00000064')
DCL VAR(&FORMATNAME) TYPE(*CHAR) LEN(10) +
VALUE('JOBI0200')
DCL VAR(&QUALJOB) TYPE(*CHAR) LEN(26) VALUE('*')
DCL VAR(&JOBIDENT) TYPE(*CHAR) LEN(16)
DCL VAR(&SUBSYS) TYPE(*CHAR) LEN(10)

CALL PGM(QUSRJOBI) PARM(&RETVAL &RETLEN +
&FORMATNAME &QUALJOB &JOBIDENT)
CHGVAR VAR(&SUBSYS) VALUE(%SST(&RETVAL 63 10))

SNDMSG MSG(&SUBSYS) TOUSR(JAKOB)
ENDPGM

Gruß
Bruno

[Dieser Beitrag wurde von Bruno Jakob am 08. August 2001 editiert.]

Frank.Sobanek
08-08-01, 15:19
Hallo Jörg,
die Idee von Dir und Reinhold ist schon in ordnung,und auch nicht so aufwendig wie meine.Mein erster Gedanke war ich baue einen TFRJOB ein um sicher zu gehen das der User immer im QCTL ist.Aber, und das hätte ich villeicht sagen sollen das Programm lauft in der 36er Umgebung,und dort führt er den TFRJOB nicht aus.Wenn aber, und das ist tatsächlich schon passiert jemand an dem Bildschirm per TFRJOB im AS/400 Modus in sein
SBS wechselt,dann stimmt zwar der BS_Name aber unter Umständen nicht das SBS.

Frank.Sobanek
08-08-01, 15:27
Hallo Bruno,
nein wie geht das.??