[NEWSboard IBMi Forum]
Seite 5 von 6 Erste ... 4 5 6 Letzte
  1. #49
    Registriert seit
    Dec 2009
    Beiträge
    314
    /* */
    /* CL-Programm: LEACDTZET */
    /* Parameter: &EMAIL */
    /* Funktion: */
    /* Verfasser: A. Nicoladoni 20140730 */
    /* */
    /*---------------------------------------------------------------- */
    /* ÄNDERUNG NR USER WAS */
    /*---------------------------------------------------------------- */
    /* 20161207 W01161 Nicolado Parameter verlängern */
    /* 20170811 W01260 Nicolado Ausgabe der Parameter in Qsysopr */
    /*---------------------------------------------------------------- */
    PGM PARM(&EMAIL &PGM)
    DCL VAR(&EMAIL) TYPE(*CHAR) LEN(200)
    DCL VAR(&USER) TYPE(*CHAR) LEN(10)
    DCL VAR(&PFAD) TYPE(*CHAR) LEN(50)
    DCL VAR(&DATE) TYPE(*CHAR) LEN(6)
    DCL VAR(&SUBJECT) TYPE(*CHAR) LEN(60)
    DCL VAR(&LAST) TYPE(*CHAR) LEN(6)
    DCL VAR(&JOB) TYPE(*CHAR) LEN(10)
    DCL VAR(&NBR) TYPE(*CHAR) LEN(6)
    DCL VAR(&PGM) TYPE(*CHAR) LEN(10)
    DCL VAR(&SYSTEM) TYPE(*CHAR) LEN(40)
    DCL VAR(&NAME) TYPE(*CHAR) LEN(10)
    CHGJOB LOG(*SAME *SAME *SECLVL) LOGCLPGM(*YES) +
    LOGOUTPUT(*SAME)

    CHGVAR VAR(&LAST) VALUE('*LAST')
    CHGVAR VAR(&NAME) VALUE(' ')
    RTVJOBA JOB(&JOB) USER(&USER) NBR(&NBR) DATE(&DATE)
    RTVNETA SYSNAME(&SYSTEM)

    IF COND(&SYSTEM *EQ 'ZL958') THEN(DO)
    CALL PGM(LEACLUSR) PARM(&USER &NAME)
    ENDDO
    IF COND(&SYSTEM *NE 'ZL958') THEN(DO)
    CHGVAR VAR(&NAME) VALUE(&SYSTEM)
    ENDDO
    IF COND(&PGM *EQ 'LEAPDTZETT') THEN(DO)
    CHGVAR VAR(&PFAD) VALUE('/HOME/' *CAT &USER *TCAT +
    '/DT_Zettel_' *CAT %SUBSTRING(&DATE 1 2) *CAT +
    '_' *CAT %SUBSTRING(&DATE 3 2) *CAT '_' *CAT +
    %SUBSTRING(&DATE 5 2) *CAT '_Inland.PDF')
    CHGVAR VAR(&SUBJECT) +
    VALUE('DT-Zettel 20' *CAT +
    %SUBSTRING(&DATE 1 2) *CAT '.' *CAT +
    %SUBSTRING(&DATE 3 2) *CAT '.' *CAT +
    %SUBSTRING(&DATE 5 2) *CAT ' Inland - ' +
    *CAT &NAME)
    DMPCLPGM
    CPYSPLF FILE(QSYSPRT) TOFILE(*TOSTMF) +
    JOB(&NBR/&USER/&JOB) SPLNBR(*LAST) +
    TOMBR(*FIRST) TOSTMF(&PFAD) WSCST(*PDF) +
    STMFOPT(*REPLACE) OPNSPLF(*YES)
    SNDSMTPEMM RCP((&EMAIL)) SUBJECT(&SUBJECT) ATTACH((&PFAD *PDF +
    *BIN)) CHARSET(*UTF8 *DFT) CONTENT(*PLAIN)
    GOTO CMDLBL(ENDE)
    ENDDO
    IF COND(&PGM *EQ 'LEACABSA') THEN(DO)
    CHGVAR VAR(&PFAD) VALUE('/HOME/' *CAT &USER *TCAT +
    '/DT_Zettel_' *CAT %SUBSTRING(&DATE 1 2) *CAT +
    '_' *CAT %SUBSTRING(&DATE 3 2) *CAT '_' *CAT +
    %SUBSTRING(&DATE 5 2) *CAT '_Ausland.PDF')
    CHGVAR VAR(&SUBJECT) +
    VALUE('DT-Zettel 20' *CAT +
    %SUBSTRING(&DATE 1 2) *CAT '.' *CAT +
    %SUBSTRING(&DATE 3 2) *CAT '.' *CAT +
    %SUBSTRING(&DATE 5 2) *CAT ' Ausland - ' +
    *CAT &NAME)

    DMPCLPGM
    CPYSPLF FILE(BZV3AA) TOFILE(*TOSTMF) +
    JOB(&NBR/&USER/&JOB) SPLNBR(*LAST) +
    TOMBR(*FIRST) TOSTMF(&PFAD) WSCST(*PDF) +
    STMFOPT(*REPLACE) OPNSPLF(*YES)
    SNDSMTPEMM RCP((&EMAIL)) SUBJECT(&SUBJECT) ATTACH((&PFAD *PDF +
    *BIN)) CHARSET(*UTF8 *DFT) CONTENT(*PLAIN)
    GOTO CMDLBL(ENDE)
    ENDDO
    ENDE:
    SNDPGMMSG MSG('Inputparameter: ' *cat &EMAIL *CAT ' ' +
    *CAT &PGM) TOMSGQ(*SYSOPR)
    SNDPGMMSG MSG('Job: ' *cat &NBR *CAT ' ' *CAT &USER *CAT ' ' +
    *CAT &JOB) TOMSGQ(*SYSOPR)
    SNDPGMMSG MSG('Pfad: ' *cat &PFAD) TOMSGQ(*SYSOPR)
    SNDPGMMSG MSG('Betreff: ' *cat &SUBJECT) TOMSGQ(*SYSOPR)
    SNDPGMMSG MSG('Datum: ' *cat &DATE) TOMSGQ(*SYSOPR)
    SNDPGMMSG MSG('System: ' *cat &SYSTEM) TOMSGQ(*SYSOPR)
    SNDPGMMSG MSG('Name: ' *cat &NAME) TOMSGQ(*SYSOPR)
    ENDEAUS:
    ENDPGM


    Der Absturz kommt auf Zeile 58, das ist der DMPCLPGM
    Der zugehörige JOBLOG hat 267 Seiten
    Andreas
    Ein AS/400 Dinosaurier since 1989

  2. #50
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    Kandidat Nr. 1 ist: &EMAIL ist null
    einfache Prüfung:- zusätzliche Variable definieren analog zu &EMAIL und dann sollte es knallen, wenn man versuch &EMAIL an selbige zuzuweisen.

    Müsste aber auch zu finden sein, wenn man den Callstack nach oben sucht, bzw im angefangenen Dump oder Joblog zu finden sein.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #51
    Registriert seit
    Dec 2009
    Beiträge
    314
    &EMAIL enthält definitiv eine gültige EMAIL-Adresse, &PGM ist der Steuerparameter und definitiv befüllt.
    Auf dem Testsystem wo selbiges Programm installiert ist funktioniert das Ding ja tagellos.
    Andreas
    Ein AS/400 Dinosaurier since 1989

  4. #52
    Registriert seit
    Dec 2009
    Beiträge
    314
    Ach ja und keinerlei Dump nicht mal eine Zeile
    Andreas
    Ein AS/400 Dinosaurier since 1989

  5. #53
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    Zitat Zitat von nico1964 Beitrag anzeigen
    &EMAIL enthält definitiv eine gültige EMAIL-Adresse, &PGM ist der Steuerparameter und definitiv befüllt.
    Auf dem Testsystem wo selbiges Programm installiert ist funktioniert das Ding ja tagellos.
    woher weißt du das so sicher? Wenn was auf einem System funzt und woanders nicht, dann ist eine abweichende Programmversion im Spiel.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  6. #54
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Hast du keine Chance das mal tatsächlich auf dem Echtsystem zu debuggen und dir die Inhalte zur Laufzeit anzusehen?
    STRSRVJOB
    STRDBG
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  7. #55
    Registriert seit
    Dec 2009
    Beiträge
    314
    Zitat Zitat von BenderD Beitrag anzeigen
    woher weißt du das so sicher? Wenn was auf einem System funzt und woanders nicht, dann ist eine abweichende Programmversion im Spiel.
    Ich weiß das, weil ich der Autor des Compilescripts bin und dieses für alle Programme, DSPF und PRTF verwendet wird. Außerdem wird bei der Installation des nicht funktionierenden Programms nicht nur dieses installiert sondern auch noch 3 andere Programme, welche auch auf der Produktion funktionieren.
    Andreas
    Ein AS/400 Dinosaurier since 1989

  8. #56
    Registriert seit
    Dec 2009
    Beiträge
    314
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Hast du keine Chance das mal tatsächlich auf dem Echtsystem zu debuggen und dir die Inhalte zur Laufzeit anzusehen?
    STRSRVJOB
    STRDBG
    Das ist die letzte Möglichkeit die ich in Erwägung ziehen möchte, da ich dafür eine Berechtigung von ganz oben (Geschäftsführung) brauche.

    Am Freitag ist meinem Kollegen noch eines eingefallen: Kann es sein, das eine zu geringe Anzahl an Jobs in der Subsystembeschreibung den Fehler verursacht. Er meint nämlich, dass diese unterschiedlich ist.
    Andreas
    Ein AS/400 Dinosaurier since 1989

  9. #57
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Was soll damit gemeint sein?
    Ein Job, der darauf wartet gestartet zu werden verursacht keinen Fehler.
    Ein Job, der einen Fehler verursacht, läuft bereits.
    Da der Fehler nach Anpassung deines CL's nun nicht mehr auf dem CPYSPLF sondern auf dem DMPCLPGM spielt die Anzahl Jobs keine Rolle, da der Dump keine JVM benötigt.
    Da aber für die PDF-Erstellung ebenso kein installiertes Java Voraussetzung ist, gehe ich mal davon aus, dass auch dafür keine JVM (separater Job) benötigt wird.
    Möglicherweise spielt aber bei beidem das Spoolsystem eine Rolle und dort sind ggf. nicht genügend Ressourcen verfügbar.
    Mach mal einen WRKSYSSTS und lass dir die Anzahl Jobs nennen und die Anzahl bei WRKACTJOB. DIe Differenz sind die toten Job's, die noch jede Menge (ggf. nicht mehr benötigter) Spools belegen und verwaltet werden müssen. Auch pending Joblogs könnten ein Problem darstellen.
    Man muss schließlich in alle Richtungen denken...
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  10. #58
    Registriert seit
    Nov 2003
    Beiträge
    2.307
    Wo kommt &EMAIL her und wie ist die Variable dort definiert?

  11. #59
    Registriert seit
    Dec 2009
    Beiträge
    314
    Zitat Zitat von Pikachu Beitrag anzeigen
    Wo kommt &EMAIL her und wie ist die Variable dort definiert?
    Je nach Aufruf aus einem COBOL-PGM

    WRK-EMAIL-INTERN-MAILADDI PIC X(200).
    WRK-EMAIL-INTERN-PGM PIC X(10).

    CALL 'LEACDTZET' USING WRK-EMAIL-INTERN-MAILADDI
    WRK-EMAIL-INTERN-PGM



    oder aus einem CL-PGM

    DCL VAR(&MADDI) TYPE(*CHAR) LEN(200)
    DCL VAR(&MPGM) TYPE(*CHAR) LEN(10)
    CALL PGM(LEACDTZET) PARM(&MADDI &MPGM)
    Andreas
    Ein AS/400 Dinosaurier since 1989

  12. #60
    Registriert seit
    Nov 2003
    Beiträge
    2.307
    Wie ist das Jobdatumsformat der beiden Jobs? Was steht in &PFAD?

Similar Threads

  1. Datenstrukturen: Verhalten bei V7.3 geändert?
    By dschroeder in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 28-08-17, 12:52
  2. Merkwürdiges Job-Verhalten auf Power7
    By Flappes in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 22-05-17, 14:03
  3. Kurioses verhalten von SNDSMTPEMM
    By Gast951 in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 21-02-17, 08:02
  4. Unterschiedliches Verhalten gsk_secure_soc_init() V5R3 - V5R4
    By schatte in forum NEWSboard Programmierung
    Antworten: 0
    Letzter Beitrag: 22-08-15, 14:46
  5. Neue Preise für RAM, Interaktiv + 17 GB
    By Reinhard Düvel in forum NEWSboard Server & Hardware Markt
    Antworten: 1
    Letzter Beitrag: 06-05-02, 13:34

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •