450 likes | 1.27k Vues
Endevor API. Denk 03/2003 Johannes Radman. Allianz Wien SW-Entwicklung. Client-Server Power Builder C++ Java DB2 - DB2/2 Host PL1 (Visual-Age) DB2. GFB - Geschäftsfall Bearbeitung. ClearCase. Endevor 3.9. Endevor. Versionierung. ENDEVOR-Versionierung. PL1 ASM VAGEN COMPUSET
E N D
EndevorAPI Denk 03/2003 Johannes Radman
Allianz WienSW-Entwicklung • Client-Server • Power Builder • C++ • Java • DB2 - DB2/2 • Host • PL1 • (Visual-Age) • DB2 GFB - Geschäftsfall Bearbeitung ClearCase Endevor 3.9 Denk 2003
Endevor • Versionierung • ENDEVOR-Versionierung • PL1 • ASM • VAGEN • COMPUSET • ROCHADE • SQL-Stmt • JCL-Parameter • DB2-DDL • DB2-Load-Stmt • DB2-Unload-Stmt • Software-Versand Schweiz • REXX - PL1 - API Denk 2003
TEST SCHULUNG PRODUKTION Endevor E I R F V P HISTORY DOKU VERSION Denk 2003
Endevor • API • Application Program Interface • Direkter Zugriff auf Endevor-Daten • Sample-API-Application • Eigene Applikationen Denk 2003
API • Sprachen • ASM, COBOL,PLI • ENTBJAPI • Sample Program • Sample JCL (BC1JCAPI) • ENA$NDVR • Copybooks für ASM ECH* (z.B. ECHALELM) • Copybooks für Cobol ENH* (z.B. ENHALELM) • COB2PLI -> Copybooks für PLI Denk 2003
API List Actions • ALELM LIST ELEMENT • ALENV LIST ENVIRONMENT • ALSTG LIST STAGE • ALSYS LIST SYSTEM • ALTYP LIST TYPE • ALSBS LIST SUBSYSTEM • ALPGR LIST PROCESSOR GROUP • ALDSN LIST DATA SET • ALSIT LIST SITE • ALAGR LIST APPROVER GROUP • ALAGJ LIST APPROVER JUNCTION • AEELM EXTRACT ELEMENT Denk 2003
API Sample Program • ENTBJAPI • Cobol-Hauptprogramm • Batch • Foreground Denk 2003
API List Element in Batch //APITEST EXEC PGM=NDVRC1,PARM='ENTBJAPI',REGION=32M,DYNAMNBR=1500 //SYSOUT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //BSTERR DD SYSOUT=* //BSTAPI DD SYSOUT=* //MSGFILE DD SYSOUT=X,DCB=(RECFM=FB,LRECL=133,BLKSIZE=13300) //ELEMENTS DD DSN=GRU2.ENDEVOR.ELEMENTS,DISP=SHR //*----------------------------------------------------------------- //* ENV SYSTEM SUBSYS ELEMENT TYPE TOENV TOSTAGE //*4567890123456789012345678901234567890123456789012345678901 //*LM AA APROD PAE * * * //*----------------------------------------------------------------- //SYSIN DD * AACTLYMSGFILE ELEMENTS ALELM FN APROD PAE * * APL* RUN QUIT Denk 2003
API List Element in Rexx dummy =ALLOCF("133 13300 FB 1 1 CYL MSGFILE") dummy =ALLOCF("2048 22800 VB 1 1 CYL ELEMENT") dummy = ALLOCF("80 16000 FB 1 1 CYL SYSIN") "ALLOC F(SYSPRINT BSTAPI BSTERR SYSOUT) DUMMY REUS„ QUEUE 'AACTL MSGFILE ELEMENT' QUEUE 'ALELM A AINTTST E* * UBH* *' QUEUE 'RUN' QUEUE 'AACTLY' QUEUE 'RUN' QUEUE 'QUIT' "EXECIO "QUEUED()" DISKW SYSIN (FINIS" "ISPEXEC SELECT PGM(ENTBJAPI)" "EXECIO * DISKR ELEMENT (STEM NDVR." "EXECIO 0 DISKR ELEMENT (FINIS" DO I = 1 TO NDVR.0 ... END "FREE F(SYSOUT SYSIN SYSPRINT BSTERR BSTAPI MSGFILE ELEMENT" Denk 2003
API List Actions (3.9) • ALAPPLIST PACKAGE APPROVERS • ALPKG LIST PACKAGE • ALSCL LIST PACKAGE SCL • ALSUM LIST PACKAGE ACTION SUMMARY • ALBKO LIST PACKAGE BACKOUT INFORMATION • ALBCASLIST PACKAGE CAST REPORT • ALBCOR LIST CORRELATION RECORDS Denk 2003
API Element Actions (3.9) • AEADD ADD ELEMENT • AEDEL DELETE ELEMENT • AEGEN GENERATE ELEMENT • AEMOV MOVEELEMENT • AEPRE PRINT ELEMENT • AEPRM PRINT MEMBER • AERET RETRIEVE ELEMENT • AESIG SIGNIN ELEMENT • AETRA TRANSFER ELEMENT • AEUPD UPDATE ELEMENT Denk 2003
API Package Actions (3.9) • APAPP APPROVE PACKAGE • APBKI BACKIN PACKAGE • APBKO BACKOUT PACKAGE • APCOM PACKAGE • APCOR COMMIT PACKAGE • APDEL DELETE PACKAGE • APDEN DENY PACKAGE • APEXE EXECUTE PACKAGE • APRES RESET PACKAGE Denk 2003
API • ENA$NDVR • wird dynamisch aufgerufen (fetch – call - release) • Programm muß APF-Autorisiert laufen • Lademodul-Bibliothek muß APF-Authorisiert sein • DB2-Programm: CAF • LINK • Option: AC(1) Denk 2003
API PLI-Beispiel DCL ENA$NDVR OPTIONS(COBOL) ENTRY; %INCLUDE NDVALELM; /* Copybook für LIST ELEMENT */ %INCLUDE NDVAACTL; /* Copybook für Steuerung */ %INCLUDE NDVCNST; /* Copybook EAC_CONSTANTS */ .... FETCH ENA$NDVR; /* ENDEVOR API laden */ ... AACTL_MSG_DDN = 'MSGFILE'; /* DD-Statement für API-Messages */ AACTL_LIST_DDN = 'ELEMENT'; /* DD-Statement für API-Output */ AACTL_SHUTDOWN = ' '; CALL ENA$NDVR(AACTL); /* ENDEVOR API initialisieren */ .... CALL ELEMENT_LESEN; ... AACTL_MSG_DDN = ''; AACTL_LIST_DDN = ''; AACTL_SHUTDOWN = 'Y'; CALL ENA$NDVR(AACTL); /* ENDEVOR API terminieren */ RELEASE ENA$NDVR; /* ENDEVOR API freigeben */ Denk 2003
API PLI-Beispiel ELEMENT_LESEN: PROC; /* PARAMETER FÜR ENDEVOR API - LIST ELEMENT */ ALELM_RQ_PATH = 'L'; /* EAC_PATH_LOGICAL */ ALELM_RQ_RETURN = 'F'; /* EAC_RETURN FIRST */ ALELM_RQ_SEARCH = 'N'; /* EAC_SEARCH_NO */ ALELM_RQ_ENV = 'APROD'; ALELM_RQ_SYSTEM = '*'; ALELM_RQ_SUBSYS = '*'; ALELM_RQ_TYPE = '*'; ALELM_RQ_ELM = 'VPZJO*'; ALELM_RQ_STG_ID = 'P'; /* ENDEVOR API AUFRUFEN */ CALL ENA$NDVR(AACTL, ALELM_RQ, ALELM_RS); IF AACTL_RTNCODE = 0 THEN /* entweder Datenaus Struktur ALELM_RS oder FILE "ELEMENT" auslesen */ ELSE /* nix gefunden */ Denk 2003
API - in Prozessoren //*************************************************************** //* INHALTLICHE PRÜFUNG DER ROCHADE-ATTRIBUTE - NDVITRO //*************************************************************** //ROCHCHK EXEC PGM=CONAPI,MAXRC=4, // PARM='NDVITRO,&MEMBER &C1SYSTEM &C1SUBSYS &C1ELTYPE' //ELEMENT DD DSN=&&TEMP,DISP=(NEW,DELETE), // UNIT=SYSDA,SPACE=(CYL,(5,5)), // DCB=(RECFM=VB,LRECL=2048,BLKSIZE=0) //MSGFILE DD SYSOUT=* //BSTAPI DD SYSOUT=* API MESSAGES //BSTERR DD SYSOUT=* API-ERROR MESSAGES //SYSPRINT DD DSN=&&ROCHLST,DISP=(OLD,PASS) Denk 2003
Dokumentation • EM390API • CA-ENDEVOR for MVS API Guide Denk 2003
Beispiel • Versionsbereitstellung - Auslieferung Denk 2003
Beispiel • Versionsbereitstellung Denk 2003
Beispiel • Versionsbereitstellung neu Denk 2003
Beispiel • Versionsauslieferung Denk 2003
Beispiel • Versionsauslieferung neu Denk 2003
TEST SCHULUNG PRODUKTION E I R F V P Beispiel • Element-Actions unter TSO • RETRIEVE • ADD • MOVE • DEFINE/CAST PACKAGE Denk 2003
Beispiel - Retrieve #RET UBHJOMW Denk 2003
Beispiel - Retrieve S Denk 2003
Beispiel - Retrieve C A - E N D E V O R E X E C U T I O N R E P O R T C1G0202I ACTION #1 / STMT #1 C1G0203I RETRIEVE ELEMENT UBHJOMW C1G0204I FROM ENVIRONMENT: AINTTST SYSTEM: AE SUBSYSTEM: RW C1G0205I TO DSNAME: GRU2.QUELL.DATA C1G0232I OPTIONS: REPLACE LIKE MEMBER, OVERRIDE SIGNOUT, SEARCH C1G0232I COMMENT: DENK 2001 TEST-RETRIEVE/ADD C1G0275W "OVERRIDE SIGNOUT" WAS SPECIFIED FOR ELEMENT UBHJOMW SIGNED OUT TO GRU SMGR127I ELEMENT UBHJOMW 01.58 WRITTEN TO GRU2.QUELL.DATA(UBHJOMW) C1G0200I REQUEST PROCESSING FOR ELEMENT UBHJOMW COMPLETED, HIGHEST ENDEVOR RC WAS 0004 END OF JOB. HIGHEST ENDEVOR RC = 0004 Denk 2003
Beispiel - Edit #add Denk 2003
Beispiel - Add I TEST DENK 2003 Denk 2003
Beispiel - Add Batch: Foreground: Denk 2003
Beispiel - Move UBH* I Denk 2003
Beispiel - Move S S S Denk 2003
Beispiel - Move TEST DENK 2003 Denk 2003
Beispiel - Move TEST DENK 2003 Denk 2003
Beispiel - Move Denk 2003
Beispiel Denk 2003
Beispiel UBHJMMA Denk 2003
Beispiel UBHJMMA Denk 2003
Beispiel HF021221 Denk 2003
Beispiel Denk 2003