Presentation is loading. Please wait.

Presentation is loading. Please wait.

N2O NATURAL Change Management with 3GL Support, Source Compare,

Similar presentations


Presentation on theme: "N2O NATURAL Change Management with 3GL Support, Source Compare,"— Presentation transcript:

1 N2O NATURAL Change Management with 3GL Support, Source Compare,
Introduce self and Treehouse Software. Introduce N2O. We sometimes mention that the name almost doesn’t fit anymore. Originally, N2O was the NATURAL 2 Organizer. Now, it’s much more. It handles NATURAL, PREDICT, SYSERR, and 3GLs. It’s a complete change management product all by itself. A good humorous point here is to look at the name. Dentists use N2O (laughing gas) to ease the pain of dental work. Race car drivers use N2O (nitrous oxide) to improve the performance of their vehicles. NATURAL sites can use N2O, also, both to ease the pain of NATURAL and 3GL migrations, but also to improve the performance of their change management environment and application development staff. N2O NATURAL Change Management with 3GL Support, Source Compare, and N2OSCAN Track and manage changes to business-critical applications and installations N2O is a product of Treehouse Software, Inc. All rights reserved.

2 When we say “NATURAL objects” we mean any NATURAL entity, such as programs, subprograms, subroutines, copycode, maps, or helproutines. At this time, it is usually good to say that N2O is the only package that interfaces to all 3GL environments. N2O allows source, object, or both in Production. Other products only allow object. One reason you might want source in Production is to recompile it. Although listed last here, Checkout/Checkin is one of the most important N2O features. Checkout/Checkin makes individuals accountable for their code by tracking who modifies programs. N2O can optionally restrict access to a program to one or more users at a single point in time. Introduction Migrates DDMs, Metadata, NATURAL objects, PREDICT objects, and SYSERR messages N2O/3GL migrates members stored in LIBRARIAN, PANVALET, ENDEVOR, or MVS PDSs Project Tracking maintains information about organizational activities N2OSCAN – scans Natural objects for strings over a user specified object/library range. Extensive reporting features ease recovery and audit requirements.

3 This diagram shows a sample environment
This diagram shows a sample environment. There is a Production library for the code it uses every day, a Development library where modifications are made, a Test library where Quality Assurance is performed, and an Archive where old Production code is kept for emergency recovery. Be sure to mention that this is only a sample environment. It is not necessary for a site to have all of these environments. For example, if they don’t want to archive, they don’t have to. In fact, one N2O site has 15 environments and 140 valid paths between them, and N2O handles their situation just fine. Note the two-way arrows between DEV and TEST, and PROD/ARCH. This implies that paths in N2O are not necessarily “one-way streets.” Programs can flow back and forth if the site desires. Sample Environment #1

4 Sample Environment #2

5 Environment (this is an N2O administrator function, and is shown last)
Mention that the Environment Subsystem is a “set it and forget it” thing for the most part. Once you define the environment, you won’t need to access this subsystem again unless you make some kind of a change or introduce new change management policies. N2O Subsystems Migrations Reporting Project Tracking Toolbox Environment (this is an N2O administrator function, and is shown last)

6 Migrations Accomplished Online or Batch Source, object or both
Move or Copy DB2 Processing Verify object timestamps Autocompile, target compilation Stow, CAT Automatic Recovery XREF at the Target Verify existence of PREDICT Documentation Multiple target migrations Electronic authorization (up to 10 levels) Integrated with PREDICT XREF as an option Archive and Recovery Checkout/Checkin Emergency Recovery Audit trails and extensive reporting of migration activity

7 Type can be N (NATURAL), P (PREDICT), S (SYSERR), and/or O (Other), or a combination, such as NPO.
Add Migration Request N-2-O REQUEST EVENT MENU TSI0373 11:38: TSI1 Code Function A Add an Event C Copy an Event D Delete an Event I Inquire an Event M Modify an Event R Recovery from Archive S Select Events for Processing . Terminate Request Event Menu Enter Code: A Event : PAYROLL Type : N Sequence : _______ Status: _ Direct Command: _____________________ MIG REQ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12- HELP END ENV MIG REP TOL USR PRJ EXIT Events are requested to build migration requests. Master Events (such as PAYROLL) are defined by the administrator as templates for use by the development teams.

8 NATURAL Migration Request
Mention that excessive data entry is not required because N2O provides most of this information automatically. The user can modify it if needed, or simply select the defaults supplied by the N2O Master Event. Discuss the Starting Program field and its role in simplifying program selection. To help enforce site standards, all of this information gets passed to an N2O User-Exit which may accept or reject the migration request based on site-specific criteria, such as prohibiting migrations without valid change control numbers or migrations without proper comments. The User-Exit is an optional feature, created for the convenience of the site. NATURAL Migration Request N-2-O ADD AN EVENT TSI0373 11:38: Event: PAYROLL Sequence: TSI1 From Env : TEST From Library : PAYTEST To Env : PROD To Library : PAYPROD Process Date : Process Time : 11:38:00 Starting Pgm : FEDTAX Include Objects from UEX15:N THIS IS A SAMPLE MIGRATION REQUEST________________ C __________________________________________________ o __________________________________________________ m __________________________________________________ e __________________________________________________ n __________________________________________________ t __________________________________________________ s __________________________________________________ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12- HELP END This occurrence of the Event PAYROLL (sequence 17), will migrate programs from Env. TEST, library PAYTEST to Env. PROD, library PAYPROD.

9 Program Selection List
Mention that full scrolling capabilities are available on this screen, and that the header information at the top of the screen is there to remind the user where the programs are going to/from, etc. The Starting Program field can be used to reposition the screen display at an appropriate point in the list of programs. Program Selection List Type A to Add Program to the Event, D to Delete N-2-O ADD AN EVENT TSI0373 11:38: Event: PAYROLL Sequence: TSI1 From Env: TEST From Library: PAYTEST To Env: PROD To Library: PAYPROD Starting Program: FEDTAXC Object Object S Object Type S/C Message S Object Type S/C Message A FEDTAXC COPYCODE S _ FEDTAXL LOCAL S _ FEDTAXM MAP S A FEDTAXP PROGRAM S _ FEDTAXS SUB-RTN S _ FICAC COPYCODE S _ FICAL LOCAL S _ FICAM MAP S _ FICAP PROGRAM S _ FICAS SUB-RTN S _ LIFEINSC COPYCODE S _ LIFEINSL LOCAL S _ LIFEINSM MAP S A LIFEINSP PROGRAM S _ LIFEINSS SUB-RTN S _ PENSIONC COPYCODE S _ PENSIONL LOCAL S _ PENSIONM MAP S _ PENSIONP PROGRAM S _ PENSIONS SUB-RTN S _ SALARYC COPYCODE S _ SALARYL LOCAL S _ SALARYM MAP S _ SALARYP PROGRAM S Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12- HELP ALL END TOP UP DOWN BOT STOP Objects to be included in this migration request are selected from a list of objects “checked out” to the user.

10 Selection List Confirmation
This screen shows the effect of migrating the programs (i.e., ADD, REPLACE, etc.) Selection List Confirmation Programs selected for migration, Press ENTER to proceed N-2-O ADD AN EVENT TSI0373 11:38: Event: PAYROLL Sequence: TSI1 From Env: TEST From Library: PAYTEST To Env: PROD To Library: PAYPROD Starting Program: FEDTAXC Object Object S Object Type S/C Message S Object Type S/C Message _ FEDTAXC COPYCODE S REPLACE _ FEDTAXL LOCAL S _ FEDTAXM MAP S _ FEDTAXP PROGRAM S REPLACE _ FEDTAXS SUB-RTN S _ FICAC COPYCODE S _ FICAL LOCAL S _ FICAM MAP S _ FICAP PROGRAM S _ FICAS SUB-RTN S _ LIFEINSC COPYCODE S _ LIFEINSL LOCAL S _ LIFEINSM MAP S _ LIFEINSP PROGRAM S ADD _ LIFEINSS SUB-RTN S _ PENSIONC COPYCODE S _ PENSIONL LOCAL S _ PENSIONM MAP S _ PENSIONP PROGRAM S _ PENSIONS SUB-RTN S _ SALARYC COPYCODE S _ SALARYL LOCAL S _ SALARYM MAP S _ SALARYP PROGRAM S Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12- HELP END TOP UP DOWN BOT STOP The "Message" field indicates the action to be taken in the target Environment.

11 XREF Option Programs selected for migration, Press ENTER to proceed N-2-O ADD AN EVENT TSI0373 11:38: Event: PAYROLL Sequence: TSI1 From Env: TEST From Library: PAYTEST To Env: PROD To Library: PAYPROD Starting Program: FEDTAXC Object Object S Object Type S/C Message A FEDTAXC COPYCODE | Select an Option | S _ FEDTAXM MAP | | S REPLACE _ FEDTAXS SUB-RTN | X Include XREF objects in | S ADD _ LIFEINSL LOCAL | the Event | S A LIFEINSP PROGRAM | | S | _ Do not include XREF objects in | | the Event | | | Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12- END TOP UP DOWN BOT STOP The Cross Reference selection option is specified by the administrator to allow selection of cross referenced objects during the object selection process.

12 XREF indicates the programs that are related to programs you are migrating. These appear on the left. The programs that you previously selected, which are affected by or invoked by the XREF programs are listed on the right. For example, on this screen, you have already selected the copycode FEDTAXC. XREF is telling you that the subroutine FEDTAXS is affected by changes to FEDTAXC, and that you might want to include FEDTAXS in the migration. You have the option of selecting the programs you want to include, if any, or you can select them all. Sometimes audience members ask what happens if the same program is cross-referenced to more than one other program. If the program is affected by changes to 5 other programs, N2O will list all of the other programs. There will be 5 lines showing that the program is affected by 5 other programs. You always get complete information. XREF Selection List Type A to ADD program to the Event. N-2-O XREF LISTING TSI0373 11:38: TSI1 From Env: TEST From Library: PAYTEST To Env: PROD To Library: PAYPROD S Object Explanation Programs selected for migration A FEDTAXS Affected by changes to FEDTAXC A FEDTAXM Invoked by FEDTAXP A LIFEINSC Invoked by LIFEINSP Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12- HELP END EXIT The XREF listing displays objects that could be impacted by changes to the objects selected (based on Predict XREF information).

13 Event Processing Screen
Note that archiving occurred as part of this migration. Event Processing Screen | |ENT PROCESSING SCREEN TSI0373 | Migration complete for |PAYROLL Sequence: TSI1 | | | Event : PAYROLL |PAYTEST To Env: PROD To Library: PAYPROD | Sequence : |e Control: PAY1001 Migrated Archived Source Object Source Object FEDTAXC REPLACED **** ADDED **** FEDTAXP REPLACED **** ADDED **** LIFEINSP 3 out of ADDED **** ***** **** Online migrations display the objects migrated similar to the Natural CATALL Command execution.

14 The Checkout/Checkin feature is a really powerful way to protect your development work. It can ensure that one programmer does not overlay the work of another, and that one programmer knows if another is modifying the same program. It can stop many of development “accidents” from occurring. Of course, this feature is optional. Sites may choose not to use it. Checkout/Checkin Base Environment – usually the production environment (where the locked version of source code resides) Checkout: occurs when an object migrates from a BASE environment to a non-base environment. Checkin: occurs when a previously checked out object migrates from a non-base environment back to the original BASE environment.

15 Although we allow for sites who want to perform concurrent development, N2O will not allow them to checkout two copies of the same program to the same environment. This will ensure that a programmer does not overlay another programmer’s copy of the same program. Checkout/Checkin Protects the integrity of an object by restricting the migration process The levels of concurrent development can be specified N2OEDIT limits edit capability to the Checkout user SPoD connection to limit edit capability to the Checkout user Extract a program copy for reference purposes (migrate without a checkout)

16 Checkout/Checkin Utilities
Be sure to point out that while N2O provides these checkout utilities, the actual checkouts are done automatically for you when you migrate a given program. The utilities are here to help you handle special situations like transferring your program to someone else or canceling the checkout of a program. Checkout/Checkin Utilities Checkout new objects for development Cancel a checkout Transfer ownership of a checked-out object Reject a checkout, returning to previous status

17 Autocompile Compiles objects in proper CAT/STOW order
If someone asks, Autocompile is done through use of CATALL. XREF at the Target option can compile related programs even if they were not migrated. Autocompile Compiles objects in proper CAT/STOW order Optional compile of XREF’d objects on the target Produces a complete compilation error report

18 Other Migration Types Data Definition Modules Metadata PREDICT Objects
SYSERR User-Supplied Messages 3GL Programs and Other Objects

19 PREDICT Migration Request
N-2-O ADD AN EVENT TSI0373 11:38: Event: PAYROLL Sequence: TSI1 From Env : To Env : | Objects | Process Date : | | : 11:38:00 | _ DA _ PR | | _ DC _ RL | Change Control : | _ ET _ RP | Inclu| _ FI _ RT |: N C ______________| _ KY _ SC |___________ o ______________| _ LS _ SV |___________ m ______________| _ MO _ SY |___________ m ______________| _ NO _ US |___________ e ______________| _ NW _ VE |___________ n ______________| _ PG _ VM |___________ t ______________| _ UDE |___________ s ______________ ___________ _______________________________________________ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12- HELP END

20 3GL Migration Request 03-12-31 N-2-O ADD AN EVENT TSI0373
11:38: Event: PAYROLL Sequence: TSI1 From Env : To Env : | | Process Date : | S Categories | : 11:38:00 | | | _ ASMB | | _ COBOL | THIS IS A SAMP| _ FORT | C _______________| _ PL/I |______________ o _______________| _ RPG |______________ m _______________| _ DATA |______________ m _______________| _ JCL |______________ e _______________| _ OTHER |______________ n _______________ ______________ t __________________________________________________ s __________________________________________________ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12- HELP END

21 Batch Migration Request initiated on-line Post dating Off-peak
If asked, tell people that batch processing is provided to allow sites to meet their performance and scheduling needs, since batch jobs can be executed at non-prime times, when they will not affect on-line response. Postdating is not “automatic.” That is, something postdated for midnight will not magically come alive at midnight. Postdating simply says “it cannot happen before this time, should anyone try to process the migration.” Batch Migration Request initiated on-line Post dating Off-peak Required for remote nodes

22 Batch Migrations

23 Reporting Subsystem Event Object Environment Statistical Security
Authorized Users to an Environment Node Definition Usage Archive Definition Usage Environment Definition Usage Users Related to a Group-ID Event Events Requiring Further Authorization Chronology of Events Events Related by Change Control Event Details Events Processed by Date Events with Warning Messages Events Pending Move Events Pending Autocompile Autocompile Summary for Events Object History of an Environment History of an Object Directory List Directory Compare Cross Reference Checked Out Objects Objects Archived by N2OPURGE Archive Version Summary Events Pending for an Object Statistical Events Pending Autocompile for a Library Events Pending for an Environment Objects Migrated Objects Migrated by a User Objects Migrated for an Event Objects Migrated by Change Control Security Reports are available detailing all N2O Security settings.

24 The report lists activities in reverse chronological order so that the most recent change activity is at the top of the report, and the oldest change activity is at the bottom. History of an Object N-2-O OBJECT REPORTING TSIO373 11:38: HISTORY OF AN OBJECT TSI1 Object: MENU Page: 1 Event/ From To Mig Arch Purg Added X Date Utility Seq Env Env Message S/C S/C S/C User-ID _ PAYIN TEST PROD REPLACE S S *** TSIO391 _ EXTRACT PROD TEST REPLACE S S *** TSIO517 _ PAYQA DEV TEST REPLACE S S *** TSIO391 _ PAYOUT PROD DEV REPLACE S S *** TSIO391 _ CANCEL PROD DEV ****** *** *** *** TSIO377 _ CHECKOUT PROD DEV ****** *** *** *** TSIO376 _ EXTRACT PROD TEST ADD S *** *** TSIO381 _ EXTRACT PROD TEST REPLACE C *** *** TSIO383 _ PAYIN TEST PROD REPLACE S S/C *** TSIO387 _ PAYQA DEV TEST REPLACE S/C C *** TSIO387 _ PAYOUT PROD DEV REPLACE S *** S TSIO387 _ EXTRACT DEV TEST REPLACE C C *** TSIO385 _ EXTRACT PROD TEST REPLACE C *** C TSIO374 Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- END STOP

25 Autocompile Summary for Events
Note that “AC-ERROR” in the Warning field indicates that at least one program in the event failed to compile. Autocompile Summary for Events N2O EVENT REPORTING TSI0373 11:38: AUTOCOMPILE SUMMARY TSI01A Change Closed Autocompiled ---- X Event Seq Control Date Time Date Time Warning _ PAY-IN A :38: :38:00 AC-ERROR _ PAY-IN A :38: :38:00 ****** _ PAY-IN C :38: :38:00 ****** _ PAY-IN A :38: :38:00 ****** _ PAY-IN B :38: :38:00 AC-ERROR _ PAY-IN A :38: :38:00 ****** _ PAY-OUT B :38: :38:00 ****** _ PAY-OUT C :38: :38:00 ****** _ PAY-OUT C :38: :38:00 ****** _ PAY-OUT B :38: :38:00 ****** _ PAY-OUT A :38: :38:00 ****** _ PAY-OUT A :38:00 Canceled Canceled ****** _ PAY-OUT B :38: :38:00 ****** Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12- END STOP AC-ERROR indicates an object(s) failed compile

26 Autocompile Summary Details
Only LOCAL1 was migrated. The others were compiled automatically by N2O’s XREF at the Target option. Autocompile Summary Details N-2-O AUTOCOMPILE DETAILS TSIO :38: Event: PAYIN Sequence: TSI1 From Env: TEST From Library: PAYTEST To Env: PROD To Library: PAYPROD Target Object Autocompiled XREF Object Type Date Time User-ID * CINCLUDE COPYCODE :17:32 TSIO * PROGRAM1 PROGRAM :17:35 TSIO LOCAL1 LOCAL :17:40 TSIO * SUBRTN1 SUB-RTN Error Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF END STOP SUBRTN1 failed compile with a NAT0082 error on line 1060

27 Project Tracking Collects requests for application modifications from:
Management Project Team End Users Documents each task in a project Tracks a task through its stages from definition through completion Allows the progress of a project to be assessed quickly through on-line and batch reports Reporting options available for History of a Task, Task Details, Project Status, Custom Reports

28 Integrated with N2O N2O Events can be associated with a Task to:
Provide extensive documentation for each migration request Supply a list of objects to be migrated in the request Prevent migration of objects based on the status of the Task

29 The Toolbox Subsystem, which supplies application development tools for the N2O Administrator and application programmers consists of Documentation Tools, Maintenance Tools, and Programmer Tools. Toolbox N-2-O PROGRAMMER TOOLS MENU TSIO373 11:38: TSI1 Code Function C Object Compare D Source Compare S N2OSCAN Utility . Terminate Programmer Tools Enter Code: _ Type: _ Direct Command: ________________________ TOL PROG Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- HELP END ENV MIG REP TOL USR PRJ EXIT

30 This screen shows the differences found between a pair of objects.
Note that you can compare objects in the same or different environments, same or different libraries, etc. One use for this report is a QA person who wants to know what has changed to a given program since it left production. Source Compare N-2-O SOURCE COMPARE UTILITY Report Page: 1 14:08: Source Code Object Page: 1 Base >>>>: Env Def: D230 Library: LIB-ONE PROGRAM : PGM-ONE Mode: REPORT >>>> Comp: Env Def: D230 Library: LIB-TWO PROGRAM : PGM-TWO Mode: REPORT ==== ==== * THIS IS A PROGRAM IN THE PAYROLL SYSTEM WHICH <<< MATCHING BLOCK >>> MOVE 1 TO #INDEX ADD 3 TO #TOTAL IF #TAX-1 = #TAX DO WRITE 'THE FIGURES DO NOT MATCH' DOEND ADD 2 TO #TOTAL * CALCULATION ROUTINE <<< MATCHING BLOCK >>> SUBTRACT 1 FROM #REMAINDER RESET #I #J * Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- END INFO LEFT RIGHT ---- Lines are identical Lines 60 – 90 have been deleted from the version in LIB-TWO Lines 60 in LIB-TWO has no match in LIB-ONE Lines in LIB-ONE match 70 – 110 in LIB-TWO This screen shows the differences found between a pair of objects.

31 Compare Source Programs
Tell them, if asked, that N2O can resynchronize regardless of how much space is between the lines in the base and compare copies. Compare Source Programs N-2-O SOURCE COMPARE UTILITY Report Page: 4 11:38: Range Statistics Object Page: 1 Env Dbid Fnr Library Object Type Date Time Ver Base : D LIB-ONE PGM-ONE PROGRAM 2001/01/13 10:47: Compare: D LIB-TWO PGM-TWO PROGRAM 2001/02/08 09:23: Mode Terminal Userid OS TP Mon Trans Size Base : STRUCT TSITERM TSI300C MVS/ESA TSO TDEV 1,470 Bytes Compare: STRUCT TSITERM TSI300D MVS/ESA TSO TPRD 1,873 Bytes Source Comment Total Lines Lines Lines Base : = 16 Compare: = 12 11 Lines match in both objects Options were as follows: Ignore Comments - Y Ignore Positions - 123 Ignore Spacing - Y Ignore Identical Objects - Y Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- END Range Statistics include the total number of identical, changed, and total unique NATURAL objects.

32 N2OSCAN A single scan: Searches NATURAL code in a user-specified range of objects and libraries May search for up to 50 user-specified strings Example Scan Parm Set: This example specifies to include “DATE,” while excluding “UPDATE” Scan output: Stored in an ADABAS file May be viewed in reports on-line and in batch ENV=PROD,START-LIB=PAYROLL,START-OBJ=PAY,END-OBJ=PAYPGM6 * I,Y,DATE E,N,UPDATE

33 N2OSCAN - Select Object Scan Output Set
Valid Values: L=List strings found, S=Source View N-2-O SELECT OBJECT SCAN OUTPUT SET TSI004 11:38: TSI019 User ID: TREE Environment: PROD Scan Parm Set: SCPRD1 Start Library: PAYROLL Start Object: PAY End Library: End Object: PAYPGM6 Library: PAYROLL Start List at Object: ________ Obj Lines Lines % Lns NonCom NonCom %NonC S Object Type Hit Total Hit LnsHit LnsTot LnHit _ PAYCALC N _ PAYPGM1 P _ PAYPGM2 M _ PAYPGM4 C _ PAYPGM5 N Enter---PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12 HELP END UP DOWN >ZERO Note the number of hits for comment and non-comment lines for each program, subprogram, etc.

34 N2OSCAN - Object Source View
> + SUB-PGM : PAYCALC Lib: PAYROLL Mode: STRUCT 0010 DEFINE DATA PARAMETER #NAME (A30) LOCAL USING EMPVIEW LOCAL #CURRENT-DATE (A6) 0070 END DEFINE 0080 ** 0090 MOVE EDITED *DATX (EM=YYMMDD) TO #CURRENT-DATE 0100 ** 0110 FIND EMP-INFO BY KEY WHERE EMP-NAME = #NAME ACCEPT IF EMP-RAISE = 'Y' REJECT IF EMP-HIRE-DATE > #CURRENT-DATE IF #CURRENT-DATE GE EMP-RAISE-DATE COMPUTE EMP-SALARY = EMP-SALARY + EMP-SALARY * 0.05 UPDATE ELSE INPUT WITH TEXT 'RAISE DATE FOR THIS EMPLOYEE NOT REACHED' USING MAP #INVALID-DATE-MAP END-IF PF3-EXIT PF4-UPDATE INFO Strings found are highlighted Note that UPDATE is not highlighted on line 160

35 N2OSCAN - Scan Output Detail Function
N-2-O SCAN OUTPUT DETAIL TSI004 11:38: TSI019 User ID: TREE Environment: PROD Scan Parm Set: SCPRD1 Start Library: PAYROLL Start Object: PAY End Library: End Object: PAYPGM6 Library: PAYROLL Object: PAYCALC Type: N Line Nbr C String Found #CURRENT-DATE 009O #CURRENT-DATE EMP-HIRE-DATE #CURRENT–DATE #CURRENT-DATE EMP–RAISE–DATE DATE #INVALID–DATE–MAP #DATE #DATE EMP-RAISE-DATE Enter---PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12 HELP END UP DOWN Lists the strings found in a specific object

36 Documentation Tools Assists in documentation and debugging NATURAL applications by providing utilities to display/print: NATURAL Objects File Layouts Descriptor X-REF Information Object Flow Analysis Object X-REF Archived 3GL Objects

37 Documentation Tools NATURAL Object Listing Function
N-2-O DOCUMENTATION TOOLS REPORT PAGE: 11:38: NATURAL OBJECT LISTING OBJECT PAGE: Env Def: B1 Library: Paytest PROGRAM : FEDTAXP Mode: Struct BATCH02 | Type Date Time User-ID Terminal Ver OS TP Mon Trans | | | | Src: :10:26 TREE06 TSI01D CMS VM/CMS NT | | Obj: :10:26 TREE06 TSI01D CMS VM/CMS NT | | Source Size : Bytes | | User Area (USIZE) : Bytes Buffer Pool Size : | | Source Area (ESIZE) : Bytes Number Subroutines : | 0010 DEFINE DATA GLOBAL USING PAYROLLG N 10 > 1 #TOTAL 0030 * LOCAL USING FEDTAXL > 1 #SALARY N 6 > 1 #TAX-RATE N .2 > 1 #DECISION A 1 0050 END DEFINE (Continued on next page)

38 Documentation Tools NATURAL Object Listing Function (continued)
0060 * 0070 REPEAT 0080 * 0090 INPUT USING MAP ‘FEDTAXM’ 0100 WRITE ‘TOTAL TAXES DUE FOR SOCIAL SECURITY #’ #SS 0140 INCLUDE FEDTAXC > 0010 * > 0020 * WILL CALCULATE THE TOTAL TAXES OWED > 0030 * > 0040 COMPUTE #TOTAL = #TAX-RATE * #SALARY 0150 PERFORM FEDTAXS 0160 * 0170 IF #DECISION = ‘N’ INPUT ‘FUNCTION TERMINATED’ ESCAPE BOTTOM 0200 END-IF 0210 END-REPEAT 0220 END INCLUDE FEDTAXC is expanded

39 Security Function Profile: Functional access to screens
Approval Profile: Migration profiles (paths) allowed PREDICT Profile: PREDICT migrations allowed 3GL Profile: 3GL migrations allowed SECURITRE Interface

40 N2O Summary Adapts to your environment
Provides control over NATURAL application development Enhances program integrity Features simple installation and use Provides valuable tools Offers extensive reporting and audit tracking

41 Environment Considerations Environment Definition
N-2-O ENVIRONMENT DEFINITION TSI0371 11:38: TSI1 Env Def : PROD Updated : TSI :38:00 Desc : PAYROLL PRODUCTION ENVIRONMENT ________ Base Env : YES Auth Required : YES_ Archive : ARC1 3GL Node : ____ GL Interface: __________ NODE DBID FNR Password Cipher Code FUSER : CPU ________ ________ FDIC : CPU ________ ________ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12 HELP END Multiple "Environment definitions" can be defined for each Natural Environment.

42 Environment Considerations Add a Migration Profile
One Migration Profile must be defined for each migration path in the site’s environment (e.g., Test to Production). The Migration Profile tells N2O how the site wants migrations on this path to work. For example: Should migrations occur on-line, in batch, or both ways? Should only source code, only object code, or both be migrated? Should Autocompile be used? Should N2O perform XREF at the target? Should there be a delay for authorization? Should XREF Information be migrated? Environment Considerations Add a Migration Profile N-2-O ADD A MIGRATION PROFILE TSIO373 11:38: TSI1 From Env : TEST To Env : PROD Updated : TSI :49:40 Desc : TEST TO PROD MIG PROF Mode : BOTH DB2 Processing : N Type : BOTH Verify Object : NO_ Migrate XREF: N Program Doc : NO_ Autocompile : NO__ Migration Method: COPY Auto Rec : N Deferred Time : 0___ hrs. XREF Target : ACGHLMNPST4 Delay : AUTH Levels of Auth : 3_ JCL Library : N2OBATCH 3GL JCL Lib : ________ JCL Program : N2OMIGR 3GL JCL Pgm : ________ PREDICT JCL Pgm : ________ 3GL JCL Arch : ________ Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- HELP END Multiple "migration profiles," or standard paths of migration, can be defined.

43 Environment Considerations Master Event
The idea behind Master Events is that the user should not have to memorize where the FUSER and FDIC files are, and that the user should not have to input certain basic information each time a migration is requested. Each application group at a site could have its own set of Master Events. The Change Control field is used at some sites where a user requesting a change fills out some kind of a paper form with a Change Control # on it, which is then used to track related changes. For example, the Change Control number can be used to tie together the migrations of several individuals working on the same change request. N-2-O ADD A MASTER EVENT TSIO373 11:38: TSI1 Event : CHECKOUT Updated : TSIO :38:00 Desc : ______________________________ From Env : TEST From Library : PAYT To Env : PROD To Library : PAYP Starting Pgm : ________ Ending Pgm : ________ Change Cntl : N Project Tracking: N Lock Event : NO_ Extract Event : NO_ Comments : NO_ Extract Rename : NO_ Event Purge : 180 Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12--- HELP END An Event name identifies a standard migration process.

44 Sampling of User-Exits
When user enters MENU When migration is first requested When objects are selected When a migration is ready for authorization At completion of migration

45 Sampling of APIs Checkout Utility API allow a site to perform Checkouts Event Reporting API allow a site to perform retrieval functions for an Event's Details and its Object Details Copy an Event API allow a site to copy an event Add/Modify an Event API allow a site to Add or Modify an event Add/Delete Object to/from an Event API allow a site to Add or Delete Objects to/from an event Submit an Event API allow a site to submit an event Directory List API allow a site to retrieve a list of Objects as the Directory Listing report Sample code to use N2O APIs The sample program shows how to invoke APIs #4, #5, #6 and #7 to create a user event screen. Security Definitions Reporting enables sites to create custom reports of the N2O Security definitions

46


Download ppt "N2O NATURAL Change Management with 3GL Support, Source Compare,"

Similar presentations


Ads by Google