-
Triggerprogramm debuggen
Hallo,
lang, lang ist es her, dass ich mal ein Triggerpgm debuggen musste - und jetzt weiss ich nicht mehr, wie das ging...
Kann mir hier mal wieder jemand auf die Sprünge helfen...
Danke schonmal vorab.
harbir
-
Ämmm ...
STRDBG TriggerPgmName UPDPROD(*YES)
Breakpoint (F6)
...
oder im Batch
Job anhalten,
STRSRVJOB derJob
dann
STRDBG ...
Job starten
F10
DSPMODSRC
Breakpoint ...
Oder was meinst Du ?
Robi
Das Notwendige steht über dem technisch machbaren.
(klingt komisch, funktioniert aber!)
-
Hallo,
möglicherweise ist ja der Job nicht bekannt oder kann nicht angehalten werden. In dem Fall kann man im Debugger mit dem Befehl sbreak einen Service-Entry-Point setzen setzen. Es spielt dann keine Rolle, welcher Job das ausführt.
Dieter
-
 Zitat von dschroeder
Hallo,
möglicherweise ist ja der Job nicht bekannt oder kann nicht angehalten werden. In dem Fall kann man im Debugger mit dem Befehl sbreak einen Service-Entry-Point setzen setzen. Es spielt dann keine Rolle, welcher Job das ausführt.
Dieter
Hallo,
ja, der Job ist nicht bekannt...
Kannst Du mir das etwas ausführlicher mit dem Service-Entry-Point erklären?
Danke
harbir
-
 Zitat von Robi
Ämmm ...
STRDBG TriggerPgmName UPDPROD(*YES)
Breakpoint (F6)
...
oder im Batch
Job anhalten,
STRSRVJOB derJob
dann
STRDBG ...
Job starten
F10
DSPMODSRC
Breakpoint ...
Oder was meinst Du ?
Robi
danke... , aber das normale debuggen beherrsch ich...
-
Zur Definition eines Service-Entry Points startet man den Debugger für das gewünschte Programm ganz normal mit STRDBG < Programmname>. Dann setzt man auf die gewünschte Zeile einen Breakpoint. Das macht man aber nicht mit der F6-Taste, sondern man gibt auf der Befehlszeile im Debugger sbreak user ein. (Z.B. "SBREAK 82 user meier"). In diesem Fall wird das Programm in der Zeile 82 gestoppt, sobald der User Meier in irgendeinem Job das Programm aufruft. Wenn das passiert, bekommt man in der Sitzung, in der man den Debugger gestartet hat, eine Meldung "Der Service-Eingangspunkt stoppte bei Zeile 20 in Programm SCR/A in Job ...". Auf diese Meldung geht man dann mit F1. Im Text kann man dann den genauen Job ablesen. In einer 2. Sitzung kann man dann für diesen Job einen STRSRVJOB durchführen und normal debuggen.
Das ist ein wenig umständlich. Einfacher geht es, wenn man RDP einsetzt. Da ist das ganze in der grafischen Oberfläche etwas benutzerfreundlicher gemacht. Aber es ist das gleiche Verfahren.
Gruß,
Dieter
-
Cool
Wieder was dazu gelernt. Das hätte mir bei so manchen batch-programm schon weiter geholfen....
Danke
Ronald
-
Das Thema Debugging scheint ja für für viele Forumsmitglieder interessant zu sein. Deshalb hier noch ein weiterer Hinweis zum STRDBG: Wenn man STRDBG standardmäßig ausführt, wird der zu debuggende Quelltext im 24x80 Modus angezeigt. Überlicherweise werden die meisten heute, wenn sie denn im SEU editieren, ihren Quelltext im 27x132 Modus anzeigen. Ich weiß nicht, ob bekannt ist, dass man den Debugger auch dazu bringen kann, den Quelltext im 132-Zeichen-Modus anzuzeigen. Dazu muss man vor dem Debugger-Start eine Environment-Variable setzen: ADDENVVAR ENVVAR(ILE_DEBUGGER_1)
VALUE(ALLOW_WIDE_SCREEN) LEVEL(*JOB)
Wir haben uns dazu ein eigenes Command "STRDBG132" erstellt, das die Variable setzt und nach dem Ende des Debugvorgangs wieder entfernt.
Ich meine, dass es ab und zu mal Probleme mit dem "hochauflösenden" Modus geben kann, wenn die Anwendung zwischendurch ein 80-Zeichen Windows sendet. Ich bin mir da aber nicht mehr sicher. Bei uns läuft das jedenfalls ganz gut. Einige Kollegen verwenden den normalen STRDBG, andere den STRDBG132.
Bei Bedarf kann ich das Command und das zugehörige CL gerne hier posten.
Aber für die meisten ist das sicherlich ein "alter Hut".
Gruß,
Dieter
-
Und zum Zurücksetzen auf 24x80 gibt man folgenden Befehl an:
Code:
ADDENVVAR ENVVAR(ILE_DEBUGGER_1) LEVEL(*JOB)
... und sollte ggf. in einem CL-Programm auf CPFA981 prüfen.
Birgitta
-
Hallo Birgitta,
ich korrigiere dich nur ungern: Aber zum Zurücksetzen kann man nicht ADDENVVAR verwenden, sondern man muss den Wert mit CHGENVVAR zurücksetzen oder die Variable mit RMVENVVAR entfernen.
Ich denke aber, dass allen klar war, was du gemeint hast. 
Gruß,
Dieter
 Zitat von B.Hauser
Und zum Zurücksetzen auf 24x80 gibt man folgenden Befehl an:
Code:
ADDENVVAR ENVVAR(ILE_DEBUGGER_1) LEVEL(*JOB)
... und sollte ggf. in einem CL-Programm auf CPFA981 prüfen.
Birgitta
-
 Zitat von dschroeder
... Ich weiß nicht, ob bekannt ist, dass man den Debugger auch dazu bringen kann, den Quelltext im 132-Zeichen-Modus anzuzeigen.

...mir war es neu - habe es gleich eingebaut, weil es mich schon immer genervt hat, dass der Kommentarbereich fehlt.
Danke + Gruß,
Christian
-
 Zitat von dschroeder
Zur Definition eines Service-Entry Points startet man den Debugger für das gewünschte Programm ganz normal mit STRDBG < Programmname>. Dann setzt man auf die gewünschte Zeile einen Breakpoint. Das macht man aber nicht mit der F6-Taste, sondern man gibt auf der Befehlszeile im Debugger sbreak user ein. (Z.B. "SBREAK 82 user meier"). In diesem Fall wird das Programm in der Zeile 82 gestoppt, sobald der User Meier in irgendeinem Job das Programm aufruft. Wenn das passiert, bekommt man in der Sitzung, in der man den Debugger gestartet hat, eine Meldung "Der Service-Eingangspunkt stoppte bei Zeile 20 in Programm SCR/A in Job ...". Auf diese Meldung geht man dann mit F1. Im Text kann man dann den genauen Job ablesen. In einer 2. Sitzung kann man dann für diesen Job einen STRSRVJOB durchführen und normal debuggen.
Das ist ein wenig umständlich. Einfacher geht es, wenn man RDP einsetzt. Da ist das ganze in der grafischen Oberfläche etwas benutzerfreundlicher gemacht. Aber es ist das gleiche Verfahren.
Gruß,
Dieter
Wo ist das "Like" button? 
Also, if you don't know what job it is and it is not yet submitted (z.B. if a job is only submitted when a DTAQ entry is received), you can hold the JOBQ until the required job gets submitted.
Similar Threads
-
By Fuerchau in forum NEWSboard Programmierung
Antworten: 9
Letzter Beitrag: 01-06-12, 14:58
-
By M Scheid in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 07-11-05, 10:22
-
By Cobolaner in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 23-09-05, 09:13
-
By Flappes in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 21-07-05, 11:14
-
By kuempi von stein in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 01-03-05, 12:41
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks