Die wichtigste Quelle noch vergessen...
PHP-Code:
 * ************************************************************************             
 * 
Programm erstellen mit:                                                              
 *        
CRTRPGMOD MODULE(DIPOBJ/LISTMSGWSRCFILE(DIPSRVPGM/QRPGLESRCdbgview(*all)  
 *        
CRTPGM PGM(DIPOBJ/LISTMSGWBNDSRVPGM(DIPSRVPGM/#USRSPAPI)                    
 
* ************************************************************************             
h bnddir('QC2LE')                                                                       
                                                                                        
fgrobjdp   uf a e             disk                                                      
                                                                                        
D
UserSpace für JobListe                                                               
D UserOK          S              1A                                                     
D UserSpace       S             20A   INZ
('QUSLJOB   QTEMP     ')                       
D UsrSpcExtA      S             10A   INZ('PROD')                                       
D UsrSpcText      S             50A   INZ('JobListe         ')                          
D LstFormat       S              8A   INZ('JOBL0200')                                   
D I_O_Err         s               *                                                     
                                                                                        
D LstFormat1      S              8A   INZ('JOBI0200')                                   
                                                                                        
D NbrEntries      s             10U 0   
D Count           s             10U 0   
                                        
d                                       
D JOBL0200        ds                    
D  $JobName               1     10      
D  $UserName             11     20      
D  $Jobnummer            21     26      
D  $JobIdent             27     42      
D  $Status               43     52      
D  $JobTyp               53     53      
D  $JobTyp1              54     54      
D  $Reserved             55     56      
D  $JobInfoStat          57     57      
D  $Reserved1            58     60      
d                                       
D JOBI0200        ds                    
d  $Job_Type             61     61      
d  $Funktion             98    107      
D  $Act_Job_St          108    111                                         
d  $jobi0200              1    256                                         
d                                                                          
d  $jobi0200Len   s              4B 0 Inz
(256)                             
d                                                                          
d                                                                          
d Job_Name2       s             26    Inz
('*INT                      ')    
d Job_Name1       s             26    Inz('*INT                      ')    
d Job_Name        s             26    Inz('*ALL      *ALL      *ALL  ')    
d Job_Status      s             10    Inz('*ACTIVE   ')                    
d                                                                          
D sk              c                   
''''                                 
d Fehler_msg      s            100                                         
d Empfaenger      s             30                                         
d Befehl          s            800                                         
d MSG_Text        s            256                                         
d                                                                          
d von             c                   x
'00'                                
d nach            c                   x'40'                                
                                                                        
 
Prototype Lists                                                      
D
/COPY dipsrvpgm/QRPGLESRC,FUSPCP                                       
                                                                        
D System          pr            10i 0 extproc
('system')                 
D                                 *   value options(*string)            
D                                                                       
                                                                        
c                   
Eval      UserOK   =   CrtUsrSpc(UserSpace       :  
c                                                    UsrSpcExtA      :  
c                                                    UsrSpcText      )  
c                                                                       
c                   Call      
'QUSLJOB'                                 
c                   Parm                    UserSpace                   
c                   Parm                    LstFormat                   
c                   Parm                    Job_Name                    
c                   Parm                    Job_Status                  
c                   Parm                    I_O_Err                     
c                                                                       
c                                                                      
c                   
Eval      NbrEntries GetNumEnt(UserSpace)        
c                                                                      
c                   
For       Count  =  1 to NbrEntries                
c                   
Eval      JOBL0200 =  GetSpcEnt(UserSpace Count
c                   ExSr      Work                                     
c                   
EndFor                                             
c                                                                      
c                   
Eval      UserOK   =   DltUsrSpc(UserSpace)        
c                                                                      
c                   
Eval      *InLr    =   *On                         
                                                                       
                                                                       
c     Work          BegSr                                              
c
*                                                                     
c                   Call (e)  'QUSRJOBI'                               
c                   Parm                    JOBI0200                   
c                   Parm                    $jobi0200Len               
c                   Parm                    LstFormat1                 
c                   Parm                    Job_Name1            
c                   Parm                    $JobIdent            
c                                                                
c                   
If        $Act_Job_St 'MSGW'  and          
c                             $Job_Type <> 'W'                   
c                   ExSr      SR_Fehler                          
c                   
EndIf                                        
c*                                                               
c                   EndSr                                        
                                                                 
c     SR_Fehler     BegSr                                        
c
*                                                               
c                   Eval      Job_Name2 $Jobname $UserName 
c                                         $JobNummer             
c                   Call      
'MSGINFO'                          
c                   Parm                    Job_Name2            
c                   Parm                    MSG_Text             
c                                                                
c                   
Eval      Fehler_msg  ='MSGW - Job: ' +      
c                                          $Jobname $UserName +       
c                                          $JobNummer ' ' $Funktion 
c                                                                       
c                   
Eval      MSG_Text = %XLatevon:nach:msg_text )    
c                   If        pm_Empf1 <> *Blanks                       
c                   
Eval      Empfaenger pm_Empf1                     
c                   ExSr      SR_Email                                  
c                   
EndIf                                               
c                   If        pm_Empf2 <> *Blanks                       
c                   
Eval      Empfaenger pm_Empf2                     
c                   ExSr      SR_Email                                  
c                   
EndIf                                               
c                   If        pm_Empf3 <> *Blanks                       
c                   
Eval      Empfaenger pm_Empf3                     
c                   ExSr      SR_Email                                  
c                   
EndIf                                               
c                   If        pm_Empf4 <> *Blanks                       
c                   
Eval      Empfaenger pm_Empf4                     
c                   ExSr      SR_Email                                  
c                   
EndIf                                                    
c                   If        pm_Empf5 <> *Blanks                            
c                   
Eval      Empfaenger pm_Empf5                          
c                   ExSr      SR_Email                                       
c                   
EndIf                                                    
c*                                                                           
c                   EndSr                                                    
                                                                             
c     SR_Email      BegSr                                                    
c
*                                                                           
c                   Eval      Befehl 'cl_sndm '                         +  
c                                      sk 'AS400@GTC10.de' sk ' '   +  
c                                      sk + %Trim(Empfaenger) + sk ' '  +  
c                                      sk + %TrimMSG_Text ) + sk ' '  +  
c                                      sk + %Trim(Fehler_msg) + sk           
c                   CallP     System
befehl )                               
c*                                                                           
c                   EndSr                                                    
                                                                             
c     
*InzSr        BegSr                                          
c
*                                                                 
c     *Entry        PList                                          
c                   Parm                    PM_Empf1         30    
c                   Parm                    PM_Empf2         30    
c                   Parm                    PM_Empf3         30    
c                   Parm                    PM_Empf4         30    
c                   Parm                    PM_Empf5         30    
c
*                                                                 
c                   EndSr