app builder enterprise rebuild

Upload: sadot-enrique-castillo-galan

Post on 04-Jun-2018

240 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 App Builder Enterprise Rebuild

    1/187

    BluePhoenix AppBuilder 2.0.3.1

    Enterprise Rebuild Guide

  • 8/14/2019 App Builder Enterprise Rebuild

    2/187

    BluePhoenix AppBuilder 2.0.3.1Enterprise Rebuild GuideSeptember, 2002

    Corporate Headquarters

    BluePhoenix SolutionsVlierwerf 7B4704 SB RoosendaalThe Netherlands+31 (0) 165 399 401+31 (0) 165 396 308 fax www.bluephoenixsolutions.nl

    USA HeadquartersBluePhoenix Solutions USA, Inc.8000 Regency Parkway Cary, NC 27511United States

    +1 919.380.5100+1 919.380.5111 fax www.bluephoenixsolutions.com

    1992-2002 BluePhoenix Solutions

    All rights reserved.

    BluePhoenix is a trademark of BluePhoenix Solutions. All other product and company namesmentioned herein are for identification purposes only and are the property of, and may be trademarksof, their respective owners.

    Portions of this product may be covered by U.S. Patent Numbers 5,495,222 and 5,495,610 and variousother non-U.S. patents.

    The software supplied with this document is the property of BluePhoenix Solutions, and is furnishedunder a license agreement. Neither the software nor this document may be copied or transferred by anymeans, electronic or mechanical, except as provided in the licensing agreement.

    BluePhoenix Solutions has made every effort to ensure that the information contained in this documentis accurate; however, there are no representations or warranties regarding this information, includingwarranties of merchantability or fitness for a particular purpose. BluePhoenix Solutions assumes noresponsibility for errors or omissions that may occur in this document. The information in thisdocument is subject to change without prior notice and does not represent a commitment byBluePhoenix Solutions or its representatives.

    http://www.bluephoenixsolutions.com/http://www.bluephoenixsolutions.com/http://www.bluephoenixsolutions.com/http://www.bluephoenixsolutions.com/
  • 8/14/2019 App Builder Enterprise Rebuild

    3/187

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide i

    TABLE OFCONTENTS

    Table of Contents

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide

    1 Understanding Rebuild Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1Rebuild Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1

    Understanding Rebuild Package Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2Rebuild Processing Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2

    Rebuild Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3

    Rebuilding Package Entities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3

    Preparing OpenCOBOL Rebuilds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7Static Linking of Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7

    2 Rebuilding Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1Before You Rebuild . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1

    Step 1 - Create the Rebuild Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3

    Step 2 - Select Objects for Rebuild Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7Creating Relations from the Rebuild Package Entity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7Creating Relations from the Root Entity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-11

    Step 3 - Identify Objects to be Prepared . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13Reviewing Analyze Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15Handling Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16Getting an Advice File for the Workstation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-18

    Step 4 - Prepare Objects in the Rebuild Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-18Reviewing Rebuild Prepare Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-20

    Step 5 - Install the Application for Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-21Reviewing the Rebuild Install Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-23

    After You Rebuild . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-23

    3 Using Rebuild Analyze and Prepare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1Rebuild Analyze Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1

    Processing Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1Exception Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1Inverse Scope Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2Specifying Inverse Scope Processing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6Running RANALYZE with Inverse Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8

  • 8/14/2019 App Builder Enterprise Rebuild

    4/187

    ii AppBuilder 2.0.3.1 Enterprise Rebuild Guide

    Managing Concurrent Rebuilds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9Concurrent Rebuilds with Staging Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9Specifying Single Staging Libraries. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10

    Updating CICS using the DFHCSDUP Batch Facility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11Specifying DFHCSDUP Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11

    4 Rebuild Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1Rebuild Action Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1

    Add an Entity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3Add Keywords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-6Add a Relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7Add Text to Entity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8Add Text to Relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9Analyze Rebuild Impact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10Processing Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11Clean-up Rebuild Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12Delete Entity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13

    Delete Relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13Export Rebuild Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13Install Objects in the Rebuild Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-14List Rebuild Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-16List Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-20Maintain Entity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22Maintain Relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-22Prepare Object in Rebuild Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-23Reset Object Install Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24Reset Object Prepare Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-25Set Rebuild Install Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26Super Prepare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26View Results of Rebuild. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-27

    5 Setting Up The Rebuild Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1Rebuild Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1

    Migrate Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3

    A Status Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1

    B Rebuild Processing Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-1Rebuild Entity and Relationship Attribute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-1

    C File Allocations during Rebuild Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . .C-1The Rebuild Analyze Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1

    File Allocation Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1Rebuild Analyzer and Prepare Allocation Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-4

    Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i

  • 8/14/2019 App Builder Enterprise Rebuild

    5/187

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 1-1

    CHAPTER

    1UNDERSTANDING REBUILDPROCESSING

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide

    Most applications begin with an application design, pass through several development phases, and resultin a product. The development life cycle for AppBuilder development consists of five phases:

    application analysis and design

    application construction

    code preparation

    testing and debugging deployment

    Each of the five phases has a detailed set of activities and deliverables. Each activity consists of a set oftasks, including structured checkpoints that serve as a basis for project monitoring, scheduling, andresource allocation. Phase deliverables are continuously refined by overlapping phase activities. Eachphase iteratively refines the previous work until a completed application is generated, tested, anddelivered. See the Information Model Reference Guide for more information about applicationdevelopment phases.

    The preparation phase involves moving an application that has completed all the previous phases to aquality assurance (QA) environment, where it is tested. After testing, you deploy the executable

    application to client and server platforms in the production environment.

    Once an application has been migrated toor changed inan environment, the Enterprise RebuildFacility prepares, installs, links, and binds the host objects in that environment.

    Rebuild ProcessingThe Rebuild process generates executable files by preparing all objects that have been changed on thehost. For example, if you change a fields lengtheither through a migration, or directly in the hostworkbenchyou must prepare all executable objects in the target environment that use that field.

    The rebuild process automatically analyzes which, if any, of the objects in the package need to beprepared and the environment in which they need to be prepared. Once all the objects within the rebuildpackage that need to be rebuilt have been identified, the rebuild analysis creates another list of all objectsoutside the rebuild package that rebuilding affects. Although not in the rebuild package, these objectswill be affected by the rebuild process and are called exceptions .

  • 8/14/2019 App Builder Enterprise Rebuild

    6/187

    1-2 Understanding Rebuild Processing

    Understanding Rebuild Package Components

    When preparing the selected objects, the system creates and compiles the execution code and stores it instaging libraries on the platform for which the objects were prepared. You must install the preparedobjects for testing on the platform for which they were prepared, before moving the application fordistribution.

    Understanding Rebuild Package ComponentsThe Rebuild Facility lets you rebuild any preparable object in migration packages (rules, sets,components, files, windows, and reports).

    A migration package is a virtual container that holds repository objects to be copied.

    The rebuild package, like the migration package , consists of the rebuild entity, a relationship between therebuild entity and each root entity, the root entities themselves, and every object subordinate to a rootentity (determined by the objects you select, see Creating a Prepare Scope ).

    A function entity is the highest level object in a physical application hierarchy and it defines anenterprise s high-level activities, for example, Leasing, Sales, or Inventory Control. Typically, you defineinstances of function entities during the analysis phase of the development life cycle. A function refinesinto one or more processes.

    A process entity represents a single application (a leaf process) or a set of applications. Each process isdefined to work in one or more execution environments such as CICS on the host environment or PCon the workstation environment.

    Rebuild Processing TermsAn entity type is a generic category of entities, such as a rule, window, or rebuild package entity type.

    An exception , also called an affected object, is an object the rebuild will effect even though it is notincluded in the rebuild package.

    A leaf process represents a single application, and is a child entity of either a function or another process.

    An object is an instance of either an entity or relationship type, with attributes and parts.

    An object attribute is an element of an object that helps define and identify that object.

    An object part is an element of an object. An entity object can have source code, keywords, and text. Arelationship object can have keywords and text.

    The prepare scope includes the entity, along with all objects needed to prepare it on the host.

    A rebuild package entity is an instance of the rebuild package entity type. Rebuild package entityattributes provide information about the objects you are rebuilding, and they control rebuild processing.

    Note All objects that need to be prepared on the workstation must be either exported to a group repository andprepared, or downloaded to a personal repository and prepared.

  • 8/14/2019 App Builder Enterprise Rebuild

    7/187

    Rebuild Management

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 1-3

    A rebuild package is the rebuild package entity and every object with a relationship to it. The rebuildpackage entity is a virtual container that holds repository objects to be copied. The rebuild package,therefore, consists of the rebuild package entity, one relationship between the rebuild package entity andeach root entity, the root entities themselves, and every object subordinate to the root objects.

    A relationship type is a kind of relationship, such as the has-access-to or has-root relationship.

    A root entity is the first or top entity in any hierarchy that you want to rebuild. A rebuild package entityhas a has-root relationship to one or more root entities.

    A seed is a root entity added to a rebuild package entity.

    Rebuild ManagementGenerally, a repository administrator or change management team is responsible for rebuildingapplications. Method security defines who can rebuild in which repositories, versions, and projects. The

    function of the repository determines the access rights; therefore, access rights differ from repository torepository. For example, a QA or production repository is more controlled than a developmentrepository.

    One or more repository administrators perform the following functions:

    Coordinate with the development project leader and quality assurance manager to schedule arebuild after a migration or after changes have been made to objects on the host

    Perform rebuild processing, correct problems that arise, and repeat action processing until all jobscomplete successfully

    Move the executable code of the tested application for distribution

    Rebuilding Package EntitiesRebuild processing is divided into five actions performed in a structured sequence ( Figure 1-1 ):

    Creating the Rebuild Package

    Selecting Objects for Rebuild Processing

    Identifying Objects for Preparation

    Preparing Objects in the Rebuild Package Installing the Application

    The action sequence is the same whether you are rebuilding entire applications or parts of applications.

    Note Only one person can rebuild a specific rebuild package at a time.

  • 8/14/2019 App Builder Enterprise Rebuild

    8/187

    1-4 Understanding Rebuild Processing

    Rebuilding Package Entities

    Figure 1-1 Rebui ld Steps

    Creating the Rebuild Package

    Creating the rebuild package entails naming and defining a rebuild package entity. Rebuild processingcenters around this entity, which serves as the following:

    An identity card The rebuild package object lets you know the name, system ID, and purpose ofthe rebuild package.

    A container The rebuild package object serves as an envelope that contains root entities or rootentity hierarchies during rebuild processing.

    A management tool You can reuse a rebuild package object to organize and manage routinerebuilds. For example, if you implement an airline reservation management system in theproduction environment, you can reuse the rebuild package object to perform subsequent rebuildsrelated to that system.

    The rebuild package entity has 18 attributes that are divided into three types ( Table 1-1 )..

    For detailed instructions, refer to Step 1 - Create the Rebuild Package on page 2-3 .

    Table 1-1 Rebuild Package Attribute Types

    Attribut e type Description

    NamingIdentifies an instance of an entity. The name and system ID are alternate ways of identifying theinstance of an entity to the enterprise repository. The entity description can describe thepurpose of the rebuild.

    StateIdentifies the state of the jobs associated with a rebuild package entity. The system generates

    the rebuild state value after a batch job is submitted.

    AuditIdentifies the date, time, and user ID of the individual who created or modified the entity. Thesystem generates the values when the object is saved.

  • 8/14/2019 App Builder Enterprise Rebuild

    9/187

    Rebuilding Package Entities

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 1-5

    Selecting Objects for Rebuild Processing

    To select objects for rebuild processing, you must create a relationship between your new rebuildpackage entity and any migration entities, functions, or processes you want to rebuild. You create aseparate has-root relationship between a rebuild package entity and each root entity that you want torebuild. For example, if you create a relationship between a rebuild package entity and a root function,the relationship between them is Rebuild Package entity has-root Function (see Figure 1-2 ). In addition,the many-to-many relationship type permits one rebuild package to contain a combination of these rootentity types or preparable objects.Figure 1-2 Rebuild Package Entity has-root Function

    The purpose of the rebuild helps determine the number and type of root entities the package contains.For example, if you are rebuilding a newly-migrated application in the quality assurance environment,the root entity might be a migration entity. If you are rebuilding because of changes made to an existinggroup of applications, the root entities might be several processes and their related hierarchies.

    For detailed instructions, refer to Step 2 - Select Objects for Rebuild Processing on page 2-7 .

    Creating a Prepare Scope

    The Rebuild Facility analyzes the rebuild package by creating a prepare scope a list of all the preparableobjects (leaf processes, rules, components, reports, windows, files, and sets) for each leaf process. Thenthe system compares the significant date (the date of the last significant change) with the preparationdate (the date that the entity was last prepared). If the significant date is more recent than thepreparation date, the object needs to be prepared.

    The system places the object in a rebuild package prepare table and then moves on to the next item in the

    hierarchy. The Rebuild Facility checks each object in the prepare scope from the top down, then explodeseach object to be prepared from the bottom up to find all of the leaf processes affected by preparing theseobjects ( Figure 1-3 ). The leaf processes are listed as exceptions and you can choose whether to add themto the rebuild package and reanalyze. After you are satisfied with the results of the rebuild analyze, startpreparation of all the selected objects.

    For more information on preparing scope, refer to

    Note The Rebuild Facility prepares only those objects with significant changes since the last preparation.

  • 8/14/2019 App Builder Enterprise Rebuild

    10/187

    1-6 Understanding Rebuild Processing

    Rebuilding Package Entities

    Figure 1-3 Analyzing the Rebuild Package

    Identifying Objects for Preparation

    To rebuild, you must identify the objects that need to be prepared. The analyze rebuild impact(RANALYZE) action performs an extended where-used search to identify entities in a targetenvironment that must be prepared after you have imported a migration or made changes to one ormore entities.

    Preparing Objects in the Rebuild Package

    Preparing objects in the rebuild package automatically generates executable code for all the objectsidentified as included in the prepare. Most executable code created during the prepare (DBRMS, objects,etc.) is written to Rebuild Staging Libraries. The Staging Libraries are used by the Rebuild Install Methodto complete the prepare. The staging file allocations are determined by the Rebuild Analyze and Rebuild

    Prepare methods. For more information on allocations, see Appendix C, File Allocations duringRebuild Processing .

    The prepare process starts at the bottom of an application hierarchy, finds the first instance of an objectmarked for prepare, and prepares that instance. The process then continues upward in the hierarchy tothe next instance and prepares that instance, until all marked objects are prepared.

    Installing the Application

    Installing the application for testing is mandatory before moving the executables for distribution. TheRebuild Facility copies, binds, and installs the selected mainframe executables. You can then downloadthe workstation executables.

    Refer to the Construction Workbench Reference Guide for information on using the PreparationWorkbench to complete the installation. When installation is complete, test the application to make sureit works properly.

  • 8/14/2019 App Builder Enterprise Rebuild

    11/187

    Preparing OpenCOBOL Rebuilds

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 1-7

    Preparing OpenCOBOL Rebuilds

    The Rebuild facility for OpenCOBOL includes changes to the way that the VIEW, SET RULEand COMPONENT objects prepare. Only the following RBD methods are supported in this release:

    RELINK

    BIND

    INSTALL

    Static Linking of RulesAppBuilder OpenCOBOL links rules during the prepare phase in contrast to static linking based on thecompiler option. Lower level rules and components must be prepared before the higher level rule andcomponents.

    For more information about OpenCOBOL application development, see the Enterprise ApplicationsGuide and the Rules Language Reference Guide .

    Note The VIEW and SET prepares must be completed before a rule or component prepares.

  • 8/14/2019 App Builder Enterprise Rebuild

    12/187

    1-8 Understanding Rebuild Processing

    Preparing OpenCOBOL Rebuilds

  • 8/14/2019 App Builder Enterprise Rebuild

    13/187

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-1

    CHAPTER

    2REBUILDING APPLICATIONS

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide

    When you migrate or change an AppBuilder application in the mainframe environment, you use theRebuild facility to prepare and install it. The specific steps required to perform this operation isdescribed in detail in the following sections:

    Before You Rebuild

    Step 1 - Create the Rebuild Package

    Step 2 - Select Objects for Rebuild Processing

    Step 3 - Identify Objects to be Prepared

    Step 4 - Prepare Objects in the Rebuild Package

    Step 5 - Install the Application for Testing

    After You Rebuild

    Before You Rebuild

    Before you begin the rebuild process, ensure that: You are authorized to perform rebuild actions in the environment you have chosen. Check with

    your repository administrator if you are not sure whether you are authorized to rebuild.

    You have adequate time to complete the rebuild.

    Your environment has enough space and has been properly prepared. Use the view initializationfiles (INIDISP) action to check the values of your rebuild control environment variables.

    When you are ready to rebuild, you must first access the enterprise repository by following these threesteps:

    1. Following your site procedure, log on to the Time Sharing Option (TSO) system.2. On the command line of the Interactive System Productivity Facility/Program Development Facility

    (ISPF/PDF) Primary Option menu, type the option ( H in Figure 2-1 ) used to access the enterpriserepository and press Enter . The installation team specifies this value during your systeminstallation.

    Note Your repository administrator may have other criteria you must meet before rebuilding.

  • 8/14/2019 App Builder Enterprise Rebuild

    14/187

    2-2 Rebuilding Applications

    Before You Rebuild

    Figure 2-1 ISPF/PDF Primary Option menu

    3. The System Options menu is displayed ( Figure 2-2 ). To access the enterprise repository, selectoption 1 (AppBuilder Enterprise Repository) from the System Options menu and press Enter .

    Figure 2-2 System Options menu

    Note The ISPF/PDF Primary Option menu shown in Figure 2-1 is a sample and includes site-specific options.The equivalent panel at your site may look quite different.

    Note The number of options available depends on which options are installed.

  • 8/14/2019 App Builder Enterprise Rebuild

    15/187

    Step 1 - Create the Rebuild Package

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-3

    Figure 2-3 Host Workbench panel

    4. The Host Workbench panel opens ( Figure 2-3 ). Use the Display Entities (ENTITY) action at anytime to display this panel listing entity types in the repository.

    Step 1 - Create the Rebuild PackageThe rebuild package entity and its roots comprise the rebuild package, and all actions performed duringrebuild processing center around it. The add an entity (ADDE) action creates an instance of a rebuildpackage entity in the enterprise repository.

    To add a rebuild package entity:

    1. Navigate to the Host Workbench panel of the repository, version, and project in which you want torebuild. To change projects, use the change projects (PROJECTS) action.

    2. To add a rebuild package entity, type ADDE on the Rebuild Package action line ( Figure 2-4 ) andpress Enter .

    Note During rebuild processing, you will use actions, which are entered in the Action column, and commands,which are entered from the command line. Chapter 4, Rebuild Actions provides a complete list of therebuild processing actions.

    Host Workbench

    Repository: SUNRISE V: 2 Project: DEV Level: 1

    Action Entity

    ________ Migration________ Organization________ Physical Event________ Process________ Rebuild Package________ Relationship________ Report________ Rule________ Section________ Server________ Set________ State________ Symbol________ Table________ Transition________ Value________ View

    Command ===> _______________________________________________________________

  • 8/14/2019 App Builder Enterprise Rebuild

    16/187

    2-4 Rebuilding Applications

    Step 1 - Create the Rebuild Package

    Figure 2-4 Creating the rebuild package entity

    3. On the blank Add an Entity detail panel, type the name and, optionally, the description of the entity(Figure 2-5 ).

    Host Workbench

    Repository: SUNRISE V: 2 Project: DEV Level: 1

    Action Entity________ Organization________ Physical Event________ Process

    ADDE ____ Rebuild Package________ Relationship________ Report________ Rule________ Section________ Server________ Set________ State________ Symbol________ Table________ Transition________ Value________ View________ Window

  • 8/14/2019 App Builder Enterprise Rebuild

    17/187

    Step 1 - Create the Rebuild Package

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-5

    Figure 2-5 Naming the rebuild package entity

    The description, which can be up to 30 characters of text, explains the purpose of the rebuild toother Rebuild Facility users. Although a description is optional, we strongly recommend you addone to make the rebuild package entity more useful to other project members.

    4. When you have finished, tab to the command line and type SAVE. Press Enter .

    After you save, the panel title changes from Add an Entity to Maintain an Entity, the system-definedattributes are filled in, and you see a message that reads:

    User modifications to object have been saved. (See Figure 2-6 .)

    After an entity is saved, you can change the user-defined attributes by overtyping values and then

    typing SAVE on the command line again.

    Add an Entity More: +

    Repository: SUNRISE V: 2 Project: DEV Level: 2

    Rebuild Package Attributes:Name . . . . . . . . . . . . DMC_VER2_RBD __________________System Id . . . . . . . . . :Description . . . . . . . . . To rebuild migrated DMC App_l

    Rebuild Package State . . . : 1. Export Successful2. Export Job Submitted3. Export Job Failed4. Export Job Executing5. Exceptions Seeded6. Seeded7. Rebuild Analyze Submitted8. Rebuild Analyze Failed9. RBDA Successful w/Exceptions

    10. Rebuild Analyze Successful11. Rebuild Prepare Submitted12. Rebuild Prepare Executing13. Rebuild Prepare Failed

    14. Rebuild Prepare Successful15. Rebuild Install Submitted16. Rebuild Install Failed17. Rebuild Install Successful18. N/A19. Rebuild Install Incomplete20. Rebuild Prepare Incomplete21. Rebuild Analyze Executing22. Rebuild Install Executing

    Audit Attributes:Date Created . . . . . . . :Time Created . . . . . . . :Created by . . . . . . . . :Date Maintained . . . . . . :

    Time Maintained . . . . . . :Maintained by . . . . . . . :

  • 8/14/2019 App Builder Enterprise Rebuild

    18/187

    2-6 Rebuilding Applications

    Step 1 - Create the Rebuild Package

    Figure 2-6 Maintaining the rebuild package entity

    5. To add text to the entity, type TXE on the command line. The text describes the purpose and scopeof the rebuild package to other Rebuild Facility users. Figure 2-7 shows sample text. Althoughoptional, this step is recommended.

    Figure 2-7 Adding text to the rebuild package entity

    6. Press F3 to save the text and return to the Maintain an Entity panel.

    7. Type K on the command line to add keywords to the entity. Keywords describe the purpose andscope of the rebuild package to other Rebuild Facility users. Figure 2-8 shows sample keywords. Thisstep is optional.

    Note If the Autosave option is on, the information you enter is saved as soon as you press F3 to return to theprevious level. However, if you request an action that takes you to a subsequent level, you may lose yourchanges when exiting from that level. Manually save your changes in this case to prevent losing them.Refer to the Enterprise Administration Guide for more information on the Autosave option.

    Maintain an Entity More +

    Repository: SUNRISE V: 2 Project: DEV Level: 2

    Rebuild Package Attributes:Name . . . . . . . . . . . . DMC_VER2_RBD

    System Id . . . . . . . . . : AA5ENRDescription . . . . . . . . . To rebuild migrated DMC_App_lRebuild Package State . . . : 18 N/A

    Audit Attributes:Date Created . . . . . . . : 95/05/17Time Created . . . . . . . : 11:02Created by . . . . . . . . : SS0222Date Maintained . . . . . . : 95/10/07Time Maintained . . . . . . : 15:08Maintained by . . . . . . . : SS0222Project . . . . . . . . . . : DOCChange # . . . . . . . . . : 0001Owner Id . . . . . . . . . : SS0346Local Maintenance Date . . : 95/10/07Local Maintenance Time . . : 15:08:38

    User modifications to object have been Saved.

    --------- SS0222.SS0196.MOD.STK ------------------------------

    COLUMNS 001 072 TEXT for Rebuild Package

    Name . . . . . . . : DMC_VER2_RBD Version . . . . . : 2

    ****** ***************************** TOP OF DATA

  • 8/14/2019 App Builder Enterprise Rebuild

    19/187

    Step 2 - Select Objects for Rebuild Processing

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-7

    Figure 2-8 Adding keywords to the entity

    8. Press F3 to return to the Maintain an Entity panel.

    9. Press F3 to exit the Maintain an Entity panel. You can use the maintain entity (ME) action to displaythis panel if you want to check or change the entity attribute values.

    10. Record the name of this entity because you will use it throughout source environment processing.

    The rebuild package entity is not complete until you add one or more root entities to it. At this stage, you

    can only list existing entities with the list entity (LE) action, maintain entities with the maintain entity(ME) action, or delete entities with the delete entity (DE) action.

    To continue with the rebuild process, you must now define the scope of objects to be included in therebuild package, which you do by adding relations to the rebuild package. The following sectiondescribes how to define the scope.

    Step 2 - Select Objects for Rebuild ProcessingYou now have to select objects to be included in the rebuild package. The add a relation (ADDR) actiondefines the scope of objects to be included in the rebuild package by Creating Relations from the RebuildPackage Entity and the objects that you want to rebuild.

    You can create a relation between a rebuild package entity and root entities (or from the root entity toother entities) only if the entities are stored in the same version. That is, a rebuild package or root entityin version 2 can have relations only to entities that are also in version 2.

    You usually select objects for rebuild processing by creating relations from the rebuild package entity,but you can also use the procedure outlined in Creating Relations from the Root Entity .

    Creating Relations from the Rebuild Package Entity1. Record the name of each root entity that you want to add to the rebuild package.

    2. On the Host Workbench panel, type LE on the Rebuild Package action line ( Figure 2-9 ). Press Enter to navigate to the List Facility for Entity Rebuild Package panel.

    --------- SS0222.SS0196.MOD.STK ------------------------------COLUMNS 001 072

    KEYWORDS for Rebuild Package

    Name . . . . . . . : DMC_VER2_RBD Version . . . . . : 2

    ****** ***************************** TOP OF DATA****************************** 000001 REBUILD

    000002 DMC 000003 VER2 000004 VER2

  • 8/14/2019 App Builder Enterprise Rebuild

    20/187

  • 8/14/2019 App Builder Enterprise Rebuild

    21/187

    Step 2 - Select Objects for Rebuild Processing

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-9

    migration entity you exported to this target. The name must be an alphanumeric string up to 30single-byte or 14 double-byte characters.

    Figure 2-12 Naming the rebuild package

    6. If you are using the Host Workbench, type the long name of the application configuration in theApplication Configuration field, as shown in Figure 2-12 .

    7. Tab to the command line, type SAVE, and press Enter .

    8. A value of 2 (YES) is displayed to indicate the added entity is a root entity. (The values in thesethree fields are system-generated, so you cannot type values in them.)

    RANALYZE needs at least one root entity to perform the explode, for this reason the exit always sets the"is a root entity" value to YES when you add the relationship for initial processing. For example, if youestablish a relationship between a rebuild package and a Report and select NO for the option " is aroot entity ", the exit resets it to YES. When you maintain the relationship, the same attribute cannow be switched from YES to NO. See Handling Exceptions .

    After you save the relation, the panel changes from Add a Relation to Maintain a Relation and the systemfills in the values for the audit attributes. Note that the rebuild package state changes from N/A (notapplicable) to seeded , indicating you have added a root entity to the package. A message that reads Usermodifications to object have been saved appears in the command area ( Figure 2-13 ).

    Note You must analyze and import the migration entity before proceeding to rebuild processing.

    Note If you want to have two configurations for one entity, you can create two separate relations between therebuild package entity and the entity you want configured. Assign one an application configuration andleave the other one blank.

    Add a Relation More: +

    Repository: SUNRISE V: 2 Project: DEV Level: 4

    Rebuild PackageName . . . . . . . . . . . . DMC_VER2_RBD__________________

    Has-Root FunctionName . . . . . . . . . . . . DMC_VER2_FUNC1 ________________

    Relationship Attributes:Application Configuration . . PROJECT_DMC ___________________

    Is a Root Entity . . . . . . 2 1. No2. Yes

    Is a Refined Entity . . . . : 1. No

  • 8/14/2019 App Builder Enterprise Rebuild

    22/187

    2-10 Rebuilding Applications

    Step 2 - Select Objects for Rebuild Processing

    Figure 2-13 Saving a relation

    After a relation is saved, you can change the user-defined attributes by typing over the values andthen typing SAVE on the command line again.

    9. Type TXR on the action line to add text to the relation. Use the text to describe the purpose of therelation to other users. This step is recommended, although optional ( Figure 2-14 ).

    10. Press F3 to save the text and return to the Maintain a Relation panel.

    Figure 2-14 Adding text to the relation

    11. To add another root entity of the same type to the rebuild package from the active Maintain aRelation panel, tab to the Has-Root Name field, and overtype the first entity namewith the next entity name. Then type SAVE on the command line and press Enter . The systemdisplays the message, User modifications to object have been saved.

    12. To add a root entity of another entity type, press F3 to exit the active panel. Then repeat steps 2through 9, until you have included all the objects you want to rebuild.

    13. Press F3 to exit the Maintain a Relation panel. You can use the maintain relation (MR) action todisplay this panel again if you want to check or change the relation attribute values.

    Caution Once you start the analyze rebuild impact action (RANALYZE), you cannot add more entities to therebuild package unless you use the clean-up rebuild information action to set the state back toseeded . Make sure you have included all the objects you want to rebuild. For information about theCLEANUP action, see Clean-up Rebuild Information on page 4-12 .

    Maintain a Relation More: +

    Repository: SUNRISE V: 2 Project: DEV Level: 3

    Rebuild PackageName . . . . . . . . . . . . DMC_VER2_RBD________________

    Has-Root FunctionName . . . . . . . . . . . . DMC_VER2_FUNC1_______________

    Relationship Attributes:Application Configuration . . ______________________________Is a Root Entity . . . . . . 2 YesIs a Refined Entity . . . . : 1 NoHas Hierarchy Changed . . . : 1 NoAffected Entity (Not Analyze: 1 No

    Audit Attributes:Date Created . . . . . . . : 95/10/17Time Created . . . . . . . : 17:18

    User modifications to object have been Saved.

    --------- SS0222.SS0196.MOD.STK ------------------------------ COLUMNS 001 072TEXT for Relations

    Name . . . . . . . : DMC_VER2_FUNC1 Version . . . . . : 2

    ****** ***************************** TOP OF DATA ****************************** 000001 DMC_VER2_RBD HAS ROOT FUNCTION DMC_VER2_FUNC1.

    000002 APPLICATION CO NFIGURATION IS PROJECT_DMC. 000003 REBUILDING PACKAGE IN VERSION 2 FOR FIRST TIME.****** **************************** BOTTOM OF DATA ****************************

  • 8/14/2019 App Builder Enterprise Rebuild

    23/187

    Step 2 - Select Objects for Rebuild Processing

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-11

    Use the list relations (LR) action to make sure you have included all the root entities you want in therebuild package. Use the delete relation (DR) action to delete any entities you do not want in the rebuildpackage.

    Once you determine that the rebuild package is complete, you are ready to analyze it. The section, Step 3- Identify Objects to be Prepared , describes the analyze rebuild impact (RANALYZE) action in detail.

    Creating Relations from the Root EntityAlthough it is more common to select objects for the rebuild object is by creating relations from therebuild package entity, you can also create relations from the root entity or entities. The relationships you add should be the same as those from the root entities of the migration entity you exported to thistarget environment.

    The procedure is almost the same as the one described for creating relations from the rebuild packageentity. The differences between the two procedures are described below.

    1. Record the name of each root entity that you want to add to the rebuild package. Also record thename of your rebuild entity.

    2. Type ADDR on the action line that corresponds to the object you want to include in the rebuildpackage (Figure 2-15 ). Press Enter .

    Figure 2-15 Adding a relation from the root entity

    3. Select Is-A-Root-Of Rebuild Package from the list of available relation types on the ActionInformation pop-up panel ( Figure 2-16 ). Then press Enter .

    Host List Facility for Entity Function

    Repository: SUNRISE V: 2 Project: DEV Level: 2

    Action Name System Id ADDR ____ DMC_VER2_FUNC2 AA4HNR

    ________ GET_NRV1V2 AA3YNR________ MIG_FDFAULT AA12NR________ MIG_FREPORT AA13NR________ MIG_MODIFY_TESTS AA49NR________ MIG_TCFLVIEW AA4WNR________ WMM_MIG_PHY_EVT AA2INR

    ****************************** BOTTOM OF DATA ********************************

  • 8/14/2019 App Builder Enterprise Rebuild

    24/187

  • 8/14/2019 App Builder Enterprise Rebuild

    25/187

    Step 3 - Identify Objects to be Prepared

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-13

    Figure 2-18 Saving the relation

    6. To add an instance of another entity type , return to the Host Workbench panel ( Figure 2-9 ) andrepeat steps 2 through 5.

    7. Repeat this procedure until you have included all the root entity you want in the rebuild package.

    Use the list relations (LR) action to verify that all the root entities you want are in the rebuild package.The system displays each relation type, the name of each seed entity, and the date the relation wascreated. Use the delete relation (DR) action to delete any entities you do not want in the rebuild package.

    Once you determine that the rebuild package is complete, you are ready to analyze it. The next sectiondescribes the analyze rebuild impact (RANALYZE) action in detail.

    Step 3 - Identify Objects to be PreparedTo rebuild, you must identify the objects that need to be prepared. The analyze rebuild impact(RANALYZE) action performs an extended where-used search to identify entities in a targetenvironment that must be prepared after you have imported a migration, or made changes to one ormore entities.

    The analyze rebuild impact (RANALYZE) action submits a batch job that generates an online report.The reports lists every entity that needs to be prepared and installed by name, system ID, entity type, andexecution environment. See List Rebuild Contents on page 4-16 .

    This section describes how to identify which objects need to be prepared.

    8. On the Host Workbench panel, type LE on the Rebuild Package action line ( Figure 2-19 ) tonavigate to the List Facility for Entity Rebuild Package panel.

    Maintain a Relation More: +

    Repository: SUNRISE V: 2 Project: DEV Level: 3

    Rebuild PackageName . . . . . . . . . . . . DMC_VER2_RBD_________________

    Has-Root FunctionName . . . . . . . . . . . . DMC_VER2_FUNC2________________

    Relationship Attributes:Application Configuration . . PROJECT_DMC___________________Is a Root Entity . . . . . . 2 YesIs A Refined Entity . . . . : 1 NoHas Hierarchy Changed . . . : 1 No

    Audit Attributes:Date Created . . . . . . . : 95/05/17Time Created . . . . . . . : 16:01Created by . . . . . . . . : SS0222Date Maintained . . . . . . : 95/10/07

    User modifications to object have been Saved.

    Maintain a Relation More: +

    Repository: SUNRISE V: 2 Project: DEV Level: 3

    Rebuild PackageName . . . . . . . . . . . . DMC_VER2_RBD_________________

    Has-Root FunctionName . . . . . . . . . . . . DMC_VER2_FUNC2________________

    Relationship Attributes:Application Configuration . . PROJECT_DMC___________________Is a Root Entity . . . . . . 2 YesIs A Refined Entity . . . . : 1 NoHas Hierarchy Changed . . . : 1 No

    Audit Attributes:Date Created . . . . . . . : 95/05/17Time Created . . . . . . . : 16:01Created by . . . . . . . . : SS0222Date Maintained . . . . . . : 95/10/07

    User modifications to object have been Saved.

  • 8/14/2019 App Builder Enterprise Rebuild

    26/187

    2-14 Rebuilding Applications

    Step 3 - Identify Objects to be Prepared

    Figure 2-19 Navigating to the List Facility for Entity Rebuild Package panel

    9. Type RANALYZE on the action line of your rebuild package entity ( Figure 2-20 ).

    Figure 2-20 Selecting the rebuild package entity to analyze

    10. Press Enter to start the rebuild analyze job and return to the List Facility screen.

    The system acknowledges the submission of the rebuild analyze job with the message:

    Rebuild analyze for < entity name > processed.

    11. Monitor the progress of your job by checking the value of the rebuild package state attribute on theMaintain an Entity panel ( Figure 2-21 ).

    Note You must press F19 to refresh the values on the screen.

    Host Workbench

    Repository: SUNRISE V: 2 Project: DEV Level: 1

    Action Entity________ Organization________ Physical Event________ ProcessLE ______ Rebuild Package________ Relationship________ Report________ Rule________ Section________ Server________ Set________ State________ Symbol________ Table________ Transition________ Value________ View________ Window

    Host List Facility for Entity Rebuild Package

    Repository: SUNRISE V: 2 Project: DEV Level: 2

    Action Name System Id________ AWT_VER1_RBD AA46NR________ BRS_VER3_RBD AA5CNRRANALYZE DMC_VER2_RBD AA5ENR

    ***************************** BOTTOM OF DATA ********************************

  • 8/14/2019 App Builder Enterprise Rebuild

    27/187

    Step 3 - Identify Objects to be Prepared

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-15

    Figure 2-21 Checking the rebuild package state

    12. You cannot go to the next step until the rebuild package state registers a value of Rebuild AnalyzeSuccessful . See Table 4-7 on page 4-22 for a complete list of rebuild package state values.

    If the rebuild analyze job fails, review the job results using the System Display and Search Facility(SDSF), correct the problem, and run the job again.

    Reviewing Analyze ResultsThe analyze rebuild impact ( RANALYZE) submits a TSO job. Once the job has finished, you can reviewthe results online in three ways:

    Refresh the Maintain an Entity panel (press F19) to see the current rebuild package state attribute.The state reflects the submission, execution, and success or failure of the job.

    Record the job number that is displayed after you submit the analyze job. Then use SDSF to getdetailed job status information.

    Look at the messages associated with analyze processing. For instructions on accessing, interpreting,and printing analyze job messages, refer to the Enterprise Administration Guide .

    When you determine that the analyze has been successful, you can use the following actions to examinethe rebuild package:

    Use the list rebuild contents (LISTRBD) action to view the results of the rebuild impact. Use the list relation (LR) action to see which objects are part of the rebuild package.

    Use the view results of rebuild (RES) action to see the messages that contain the results of the batch job, including date and time stamps for job start and job end, as well as the final job-state value.

    See Chapter 4, Rebuild Actions for more information about these actions.

    Caution If the state of the repository changes before you rerun the analyze job, the results might not be thesame.

    Maintain an Entity More: +

    Repository: SUNRISE V: 2 Project: DEV Level: 3

    Rebuild Package Attributes:Name . . . . . . . . . . . . DMC_VER2_RBD_________________System Id . . . . . . . . . : AA5ENRDescription . . . . . . . . . REBUILD MIGRATED DMC_APP_1Rebuild Package State . . . : 21 Rebuild Analyze Executing

    Audit Attributes:Date Created . . . . . . . : 95/05/17Time Created . . . . . . . : 08:51Created by . . . . . . . . : SS0222Date Maintained . . . . . . : 95/10/07Time Maintained . . . . . . : 09:22Maintained by . . . . . . . : SS0222Project . . . . . . . . . . : DEVChange # . . . . . . . . . : 0005Owner Id . . . . . . . . . : SS0222Local Maintenance Date . . : 95/10/07

  • 8/14/2019 App Builder Enterprise Rebuild

    28/187

    2-16 Rebuilding Applications

    Step 3 - Identify Objects to be Prepared

    Handling ExceptionsExceptions are objects that, although not part of the rebuild package, will be affected by the rebuild. Ifthe results of an analyze rebuild impact (RANALYZE) action indicate the presence of exceptions ( Figure2-22), you can either analyze some or all again to include them in your rebuild package.

    Figure 2-22 Rebuild status showing exceptions

    Processing Selected Exceptions

    To process some, but not all of the exceptions, you need to update their relations to the rebuild package.You can list the exceptions by using the list relations (LR) action next to the name of the rebuild package.Scroll right to see the Affected Entity column, as shown in Figure 2-23 .

    Figure 2-23 Exceptions listed as affected entities

    Processing All Exceptions

    To reanalyze all exceptions, type RANALYZE on the action line for the rebuild package entity. TheAnalyze Options panel is displayed ( Figure 2-24 ).

    Note If you decide to continue the rebuild process without exceptions, you can process the exceptions later.

    Maintain an Entity More: +

    Repository: SUNRISE V: 2 Project: DEV Level: 3

    Rebuild Package Attributes:Name . . . . . . . . . . . . DMC_VER2_RBD__________________System Id . . . . . . . . . : AGWASRDescription . . . . . . . . . ______________________________Rebuild Package State . . . : 9 RBDA Successful w/Exceptions

    Audit Attributes:Date Created . . . . . . . : 95/10/11Time Created . . . . . . . : 18:03Created by . . . . . . . . : SS0222Date Maintained . . . . . . : 95/11/14

    Time Maintained . . . . . . : 14:57Maintained by . . . . . . . : SS0222Project . . . . . . . . . . : DEV

    Repository: SUNRISE V: 2 Project: DEV Level: 3Entity Name: DMC_VER2_RBD

    Relation Type: Has-Root Rule

    Action Name Affected Entity (Not Analyzed)________ DVT_RULE_ALL_SET_BATCH_SBCS Yes________ DVT_RULE_ALL_SET_CICS_SBCS Yes________ DVT_RULE_ALL_SET_IMS_SBCS Yes________ DVT_RULE_ALL_SET_MVS_SBCS Yes________ DVT_RULE_ALL_SET_PCCICS_SBCS Yes________ DVT_RULE_ALL_SET_PCIMS_SBCS Yes________ NEW_COMP_TEST Yes

  • 8/14/2019 App Builder Enterprise Rebuild

    29/187

    Step 3 - Identify Objects to be Prepared

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-17

    Figure 2-24 Selecting exceptions to analyze

    To analyze some but not all of the exceptions use the maintain relation (MR) action next to theexceptions you want to analyze. The Maintain a Relation panel is displayed ( Figure 2-25 ).

    Figure 2-25 Listing an exceptions relation to the rebuild package

    Overtype the 2 with a 1 in the Is a Root Entity field to specify that the exception is not to be aroot entity ( Figure 2-26 ).

    Figure 2-26 Updating an exceptions relation to the rebuild package

    Note For initial processing, RANALYZE needs at least one root entity to perform the explode, for this reason, theexit always sets the " is a root entity " value to YES when you initially add a relationship.

    Rebuild Package Analyze Options

    Name . . . . . . . . : DMC_VER2_RBD Version . . . . . . : 2

    Select the following processing options. Then press Enter.

    Processing OptionsExceptional Process Option . . . 4 1. Prepare excluding ALL Exceptions

    2. Re-Analyze including ALL Exceptions3. Re-Analyze excluding ALL Exceptions4. Select Exceptions to Analyze

    Maintain a Relation More: +

    Repository: SUNRISE V: 2 Project: DEV Level: 4

    Rebuild PackageName . . . . . . . . . . . . DMC_VER2_RBD________________

    Has-Root RuleName . . . . . . . . . . . . DVT_RULE_ALL_SET_BATCH_SBCS___

    Relationship Attributes:Application Configuration . . ______________________________Is a Root Entity . . . . . . 2 YesIs a Refined Entity . . . . : 2 YesHas Hierarchy Changed . . . : 2 YesAffected Entity (Not Analyze: 2 Yes

    Maintain a Relation More: +

    Repository: SUNRISE V: 2 Project: DEV Level: 4

    Rebuild PackageName . . . . . . . . . . . . DMC_VER2_RBD________________

    Has-Root RuleName . . . . . . . . . . . . DVT_RULE_ALL_SET_BATCH_SBCS___

    Relationship Attributes:Application Configuration . . ______________________________Is a Root Entity . . . . . . 1 NoIs a Refined Entity . . . . : 2 YesHas Hierarchy Changed . . . : 2 YesAffected Entity (Not Analyze: 2 Yes

  • 8/14/2019 App Builder Enterprise Rebuild

    30/187

    2-18 Rebuilding Applications

    Step 4 - Prepare Objects in the Rebuild Package

    After an analyze, you can switch the exceptions (out-of-scope) from root to non-root to minimize theexplode tree. See Creating Relations from the Rebuild Package Entity for information on switching thisattribute.

    After you have updated the relations of the exceptions you are interested in (that is, you have made themroot or non-root entities), you can reanalyze the rebuild package. Once you are satisfied with the results

    of the analyze rebuild impact, prepare the package.

    Getting an Advice File for the WorkstationThe analyze process writes a list of objects that need to prepared on the workstation to an advice file. Thefile has the same high-level qualifier(s) as the Results file, which is defined when AppBuilder software isinstalled. The low-level qualifier is ADVICE. The value of the RBWB variable in the @USERENVn file,where n is the repository version number, needs to be set to Y to get an advice file.

    An advice file is a file that contains a list of the entities to be prepared. By using an advice file, you cansplit up the work of preparing large repositories into more manageable pieces. Because these pieces are

    non-overlapping lists of preparable entities, they can be prepared in parallel as well.

    In the workstation Migration Workbench, you import the objects the advice file identifies as needingpreparation. You then use the Preparation Workbench to prepare them. See Export Rebuild Package on page 4-13 for more information about getting the objects listed in the advice file to the workstation.

    Step 4 - Prepare Objects in the Rebuild PackageThe rebuild prepare (RPREPARE) action submits a batch driver job that generates and compilesexecutable code for the selected objects. The code is placed in staging libraries until installation.

    To prepare the rebuild package:

    1. On the Host Workbench panel, type LE on the Rebuild Package action line to navigate to the ListFacility for Entity Rebuild Package panel. Type RPREPARE on the entity action line ( Figure 2-27 )and press Enter .

    Figure 2-27 Preparing the rebuild package

    2. Choose your rebuild prepare options in the Rebuild Package Prepare Options panel ( Figure 2-28 ).

    Host List Facility for Entity Rebuild Package

    Repository: SUNRISE V: 2 Project: DEV Level: 2

    Action Name System Id________ AWT_VER1_RBD AA46NR________ BRS_VER3_RBD AA5CNRRPREPARE DMC_VER2_RBD AA5ENR

  • 8/14/2019 App Builder Enterprise Rebuild

    31/187

    Step 4 - Prepare Objects in the Rebuild Package

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-19

    Figure 2-28 Selecting rebuild prepare options

    In the Objects to Prepare selection field, type the number that corresponds to the types of objects you want to prepare. You must prepare the phases in the order listed, unless the rebuild packagedoes not contain any objects in one of the phases.

    Option 4, Process (Not Needed), indicates that you do not need to prepare processes in AppBuilder.

    In the Execution Options field, type S to selector a space to deselect an option.

    In the Number of Jobs Active in the Queue field, you can keep the default value or type a numberfrom 1 to 9999 .

    3. Press Enter to start the rebuild prepare job and return to the List Facility screen.

    The system acknowledges the submission of the rebuild prepare job with the message:

    Rebuild prepare for < entity name > processed.

    4. Monitor the progress of your job by checking the value of the rebuild package state attribute on theMaintain an Entity panel (see Figure 2-29 ).

    Note You must press F19 to refresh the values on the screen.

    Rebuild Prepare Options for RBDPKG

    Name . . . . . . . . : DMS_VER2_RBD Version . . . . . . : 2

    Select the following processing options. Then press Enter.

    Processing OptionsObjects to Prepare . . . . . . . . . . 5 1. Sets

    2. Files, Windows, Reports3. Components, Rules4. Process (Not Needed)5. All of the above

    Execution Options . . . . . . . . . . _ Continuous submission_ Re-submit incomplete prepares_ Re-submit failed preparesS Ignore failed prepares_ Defer jobs to run overnight

    Number of jobs active in the queue . . 0003

    Rebuild Prepare Options for RBDPKG

    Name . . . . . . . . : DMS_VER2_RBD Version . . . . . . : 2

    Select the following processing options. Then press Enter.

    Processing OptionsObjects to Prepare . . . . . . . . . . 5 1. Sets

    2. Files, Windows, Reports3. Components, Rules4. Process (Not Needed)5. All of the above

    Execution Options . . . . . . . . . . _ Continuous submission_ Re-submit incomplete prepares_ Re-submit failed preparesS Ignore failed prepares_ Defer jobs to run overnight

  • 8/14/2019 App Builder Enterprise Rebuild

    32/187

  • 8/14/2019 App Builder Enterprise Rebuild

    33/187

    Step 5 - Install the Application for Testing

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-21

    You can browse, print, or delete the results file from the Repository File Browser.

    To track the job, record the job number displayed after you submit the rebuild prepare job and thenchoose the Spool Display and Search Facility in ISPF to get detailed job status information.

    Look at the messages associated with rebuild analyze processing. For instructions on accessing,interpreting, and printing results messages, refer to The MVS Environment .

    If the job fails, correct the problem, and resubmit the job with one of the following options:

    Resubmit incomplete prepares (a JCL error prevented the job from completing)

    Resubmit failed prepares

    Ignore failed prepares

    If the preparation failed because of an external condition, such as running out of space, you can reset thepreparation status after correcting the environmental condition that caused the failure. Use the resetprepare status action (RESETPR) to reset the preparation of some or all of the objects in the rebuildpackage. See Reset Object Prepare Status on page 4-25 for more information.

    When you determine that the rebuild prepare has been successful, you are ready to install the applicationfor testing.

    Step 5 - Install the Application for TestingAfter the rebuild prepare (RPREPARE) action creates executable code, you must install the code. Therebuild install (RINSTALL) action moves executable files into user libraries for testing.

    The rebuild install (RINSTALL) action submits a batch driver job that copies the host executable filesfrom staging data sets to user run-time libraries, and then binds them. This rebuild install is required to

    complete processing.

    To install the objects in the rebuild package:

    1. On the Host Workbench panel ( Figure 2-3 ), type LE on the Rebuild Package action line to navigateto the List Facility for Entity Rebuild Package panel. Type RINSTALL on the entity action line(Figure 2-30 ).

    Figure 2-30 Selecting the rebuild package to install

    2. Choose your rebuild install options in the Rebuild Package Install Options panel, as Figure 2-31 shows.

    Host List Facility for Entity Rebuild Package

    Repository: SUNRISE V: 2 Project: DEVLevel: 2

    Action Name System Id________ AWT_VER1_RBD AA46NR

    Host List Facility for Entity Rebuild Package

    Repository: SUNRISE V: 2 Project: DEV Level: 2

    Action Name System Id________ AWT_VER1_RBD AA46NR________ BRS_VER3_RBD AA5CNRRINSTALL DMC_VER2_RBD AA5ENR

  • 8/14/2019 App Builder Enterprise Rebuild

    34/187

    2-22 Rebuilding Applications

    Step 5 - Install the Application for Testing

    Figure 2-31 Selecting install options for the rebuild package

    In the Install Steps to Execute field, type a 1 to static link, a 2 to copy executables, a 3 to bind thepackage, a 4 do a top bind, a 5 to do an LU2 install, or a 6 to do all of the above.

    In the Execution Options field, type an S to select or a space to deselect an option.

    In the DB2 Bind Intermediate Rules field, type a 1 to select Yes or a 2 to select No.

    3. Press Enter to start the rebuild install job and return to the List Facility screen.

    The system acknowledges the submission of the rebuild install job with the message:

    Rebuild install for processed.

    4. Monitor the progress of your job by checking the value of the rebuild package state attribute on theMaintain an Entity panel.

    The rebuild package state registers a value of Rebuild Install Successfulwhen processing is complete.See Table 4-7 for a complete list of rebuild package state values.

    If the rebuild install job fails, review the job results using SDSF, correct the problem, and resubmitthe job with the Resubmit Failed Jobs option selected. See Reset Object Install Status on page 4-24 for more information about resetting the install status.

    Updating Preparation Status

    The preparation status of repository objects is updated after a successful rebuild install. Note that if twoor more rebuild packages share a preparable object, the shared objects can have only a single status. So iftwo or more rebuild packages are processing simultaneously, the job that finishes first updates the statusof any shared objects.

    For example, suppose rebuild package ONE and rebuild package TWO both contain rule A. Between thetime rule A is successfully prepared but before it is installed in package ONE, rebuild package TWO runsthe analyze step. Because the status of rule A is not yet Rebuild Install Successful , package TWO analyzesand prepares rule A again.

    Caution If you reset the install status, you reset the status of all entities in subsequent phases.

    Rebuild Install Options for RBDPKG Command =======>

    ___________________________________________________________ Name . . . . . . . . : TEST01_REBUILD1 Version . . . . . . : L Type 's' to select an option or type a space to deselect. Thenpress ENTER. Processing Options Install Steps to Execute . . . _1. Static Link 4. DB2 Bind Top Rules2. Copy Executables 5. LU2 Install3. DB2 Bind Package 6. All of the above Execution Options . . . . . .

    _ Re-submit incomplete installs _Re-submit failed installs S Ignore failed installs _ Re-generate Bindcontrol cards _ Re-generate LU2 control cards _Defer jobs for overnight execution DB2 Bind Intermediate Rules . 2 1. Yes 2. No

  • 8/14/2019 App Builder Enterprise Rebuild

    35/187

    After You Rebuild

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 2-23

    Reviewing the Rebuild Install ResultsThe rebuild install (RINSTALL) action submits one driver job which submits multiple jobs to fulfill yourrequest. Once the jobs are finished, you can review the results online in several ways:

    Refresh the Maintain an Entity panel (press F19) to see the current rebuild package state. The statereflects the submission, execution, and success or failure of the job.

    Use the list rebuild (LISTRBD) action to monitor each rebuild install status.

    To get more information for processed installs, use the view results (RES) action by typing RES onthe action line beside the rebuild package entity you want to view.

    To track the job, record the job number displayed after you submit the rebuild install job, thenchoose the System Display and Search Facility in ISPF to get detailed job status information.

    Look at the messages associated with rebuild install processing. For instructions on accessing,interpreting, and printing results messages, refer to The MVS Environment .

    If the job fails, correct the problem, and resubmit the job with the Resubmit Failed Objects optionselected.

    If the install failed because of an external condition, such as running out of space, you can reset theinstall status after correcting the environmental condition that caused the failure. Use the reset installstatus action (RESETINS) to reset the install of some or all of the objects in the rebuild package. SeeReset Object Install Status on page 4-24 for more information.

    After You RebuildWhen you determine that the rebuild has been successful, you can use the following actions to furtherexamine the rebuilt migration package:

    Use the list rebuild (LISTRBD) action to examine what changes have been made to the repository. Use the view results of rebuild (RES) action to see the messages that contain the results of the batch

    job, including date and timestamps for job start and job end, as well as the final job status value.

    Use the report (REP) action to generate hard copy or on-line reports.

    When you determine that the rebuild install has been successful, you are ready to test the application.

  • 8/14/2019 App Builder Enterprise Rebuild

    36/187

    2-24 Rebuilding Applications

    After You Rebuild

  • 8/14/2019 App Builder Enterprise Rebuild

    37/187

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 3-1

    CHAPTER

    3USING REBUILD ANALYZE ANDPREPARE

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide

    In the previous section, we discussed the step-by-step procedure to rebuild applications. There areseveral specific tools you can use during the analyze and prepare process that will enhance performanceand efficiency.

    Rebuild Analyze UtilitiesYou use the RANALYZE (Rebuild Analyze) action to submit a batch job that identifies every entity in therebuild package that needs to be prepared. Once these entities have been marked for prepare, rebuildanalyze checks for entities outside the rebuild package that rebuilding may also effect. It automaticallyadds these entities, called exceptions, to the package.

    Processing OptionsAnalyzing exceptions is a time-consuming, labor-intensive process that may not be appropriate for everyrebuild. Repositories that feature a high degree of object reuse may require a great many rebuild-analyzeiterations before all exceptions have been identified. Especially in the dynamic environment of adevelopment repository, where applications are frequently being modified and reprepared, you maywant to try a less stringent approach called inverse scope processing.

    Two approaches offer solutions to these issues:

    Exception Scope

    Inverse Scope Processing

    Exception ScopeIn exception scope processing, rebuild analyze looks at every preparable entity in the rebuild package todetermine whether the date it was last changed is more recent than the date it was last installed. If so, theentity is marked for prepare. Preparable entities are rules, components, reports, sets, windows, files, and

    Note Inverse scope cannot be used in a mix-and-match mode with Exception scope processing.

  • 8/14/2019 App Builder Enterprise Rebuild

    38/187

    3-2 Using Rebuild Analyze and Prepare

    Processing Options

    bitmaps. Views, component subroutines, forms, physical events, and bitmap implementation names arenot considered preparable entities.

    If an entity has not been changed after it was last installed, it still is marked for prepare if one of itschildren including a non-preparable child has changed: if view1 has changed and if view1 is a childof rule1, then mark rule1 for prepare. A view need not be an immediate child of rule1; it need only exist

    somewhere in rule1 s preparation scope.Once an entity has been marked for prepare, rebuild analyze checks for exceptions whether preparingthe entity may effect entities outside the rebuild package ( Figure 3-3 ). Suppose you are analyzingprocess1, and rule1 is marked for prepare. If rule1 is also used in process2, process2 is marked as anexception (the change to view1 might effect a parent of rule1 in process2; when you analyze exceptions,the parent of rule1 will be marked for prepare).

    Inverse Scope ProcessingIn inverse scope processing, rebuild analyze looks at every entity in the rebuild package, whether or not

    its parent has changed, to determine whether the date it was last changed is more recent than the date itwas last installed. A changed preparable entity is marked for prepare. An unchanged preparable entity ismarked for prepare if one of its children has changed.

    There is no notion of exceptions. A preparable entity outside the rebuild package is marked for prepare ifone of its children inside the rebuild package has changed.

    The principal differences between the scopes are:

    Inside the rebuild package: Inverse scope processing checks entities for change whether or not theirparents have changed.

    Outside the rebuild package: Inverse scope processing has no notion of exceptions.

    The following sections :

    Comparing Exception and Inverse Scope Processing looks at these differences in practical terms.

    Comparing Exception and Inverse Scope Processing

    Inverse scope processing checks entities for change whether or not their parents have changed.

    Figure 3-1 shows how exception scope processing checks non-preparable child entities for change onlywhen their parents have not changed.

  • 8/14/2019 App Builder Enterprise Rebuild

    39/187

  • 8/14/2019 App Builder Enterprise Rebuild

    40/187

    3-4 Using Rebuild Analyze and Prepare

    Processing Options

    parent is marked for prepare. In our example, the change to view1 causes rule1 to be marked forprepare.

    When inverse scope processing finds that rule1 has not changed, it does nothing. Inverse scope doesnot need to check rule1 s relationship tables because it is going to look at every entity in the rebuildpackage anyway. When it eventually detects the change to view1, inverse scope identifies the rule asa parent and marks it for prepare.

    In this way, inverse scope processing avoids a major expense; it checks every entity in the rebuild packagewhether or not its parent has changed, inverse scope saves the cost of having to check the unchangedparent s relationship tables.

    Figure 3-3 shows how exception scope processing handles entities outside the rebuild package.

    Figure 3-3 Exception scope: handling entities outside the package

    As the example shows, process2 is marked as an exception after rule1 is marked for prepare. Whenprocess2 is added to the rebuild package and the package is analyzed again, rule3 is marked for preparebecause of the change to view1.

    Figure 3-4 shows how inverse scope processing handles entities outside the rebuild package.

    package

    process1

    rule1

    view1

    rule2

    view2

    @ +

    @

    +

    process2

    rule3

    *

    #

    Change to view1so mark rule3 for

    rule1 marked for prepare so mark process2 as exception

    prepare on 2nd run

    + entity marked for prepare@ entity changed

    * entity marked as exception# entity marked for prepare 2nd run

  • 8/14/2019 App Builder Enterprise Rebuild

    41/187

    Processing Options

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 3-5

    Figure 3-4 Inverse scope: handling entities outside the package

    As the example shows, rule3 is marked for prepare because of the change to view1. Once again, inversescope mimics the results for exception scope, but now after exception scope has been run a second time,that is, after the exception has been added to the rebuild package and the package has been analyzedagain.

    Figure 3-6 looks at a case in which the scopes give different results.

    Figure 3-5 Different Results from Scopes

    package

    process1

    rule1

    view1

    rule2

    view2

    @ +

    @

    +

    process2

    rule3+

    + entity marked for prepare@ entity changed

    * entity marked as exception# entity marked for prepare 2nd run

    Change to view1so mark rule3 for prepare

    package

    process1

    rule1

    set1 @ +

    +

    rule5

    process3

    rule4

    @

    +

    Change to set1 so mark rule4 for prepare

    rule5 not marked for prepare despite change

  • 8/14/2019 App Builder Enterprise Rebuild

    42/187

  • 8/14/2019 App Builder Enterprise Rebuild

    43/187

  • 8/14/2019 App Builder Enterprise Rebuild

    44/187

    3-8 Using Rebuild Analyze and Prepare

    Processing Options

    Invoking UPDRSTAT

    1. You invoke UPDRSTAT against the management services entity in the entities window for an ADMproject, as shown in Figure 3-9 .

    Figure 3-9 Running the UPDRSTAT action

    2. When the Rebuild Install update panel is displayed ( Figure 3-10 ), specify the repository version, oran A for all versions.

    3. At the Commit Count prompt, enter an integer less than 9999 that represents the number of views you want UPDRSTAT to process before committing the database.

    4. At the Update Rebuild Install Table prompt, specify N if you do not want non-preparable entities tobe added to the tracking table. You will receive a report of UPDRSTAT activity only.

    5. To view the report, enter the RES command against the management services entity.

    Figure 3-10 Specifying the entities to update

    New PR Flag

    When you use the PR command to manually prepare an entity, set the variable UPDENTMT in the@USRENVn file to Y to update the install date of the entity to the current date, as if rebuild hadprepared and installed the entity. Otherwise, the entity may be prepared again when you do a fullrebuild.

    Running RANALYZE with Inverse ScopeSelect 1 for inverse scope in the Rebuild Analyze panel, as shown in Figure 3-11 . If you plan to useinverse scope only, set the INVERSE_PREPARE_SCOPE variable in the @RBDENVn file to Y; the optionto specify inverse or exception scope processing will not be displayed on the Rebuild Analyze panel.

    Note You need only run UPDRSTAT once for each repository version. New entities are added to the table asnecessary, without the need to run the utility again.

    Command ===> ______________________________________________________________

    Repository: CAPE541 V: 5 Project: ADM Level: 1

    Action Entity updrstat Management Services

    ________ Migration________ Project

    ________ Repository ________ User ******************** BOTTOM OF DATA **********************

    REBUILD INSTALL -- UPDATE PANEL

    Enter processing information and press ENTER.

    Version . . . . . . . . . . . .1

    Commit Count . . . . . . . . . 200_

    Update Rebuild Install Table . Y

    REBUILD INSTALL -- UPDATE PANEL

    Enter processing information and press ENTER.

    Version . . . . . . . . . . . .1

    Commit Count . . . . . . . . . 200_

    Update Rebuild Install Table . Y

  • 8/14/2019 App Builder Enterprise Rebuild

    45/187

    Managing Concurrent Rebuilds

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 3-9

    Figure 3-11 Running RANALYZE with inverse scope

    .

    Managing Concurrent RebuildsConcurrent rebuilds present special problems for repositories with a high degree of object reuse.Consider the scenario described in Figure 3-12 . rule1 is contained in rebuild package1 and rebuildpackage2. rebuild package1 is prepared on March 3; its executables are stored in a staging library untilthe package can be installed. Meanwhile, rule1 is changed on March 4 and rebuild package2 is prepared.Because package2s executables are stored in a separate staging library, the change to rule1 is not

    reflected in the staging library for package1. If rebuild package1 is installed after rebuild package2, thechange will be lost.

    Figure 3-12 Concurrent Rebuilds

    Concurrent Rebuilds with Staging LibrariesThe rebuild prepare feature in AppBuilder lets you use a single staging library for concurrent rebuilds ina repository version, as shown in Figure 3-13 . The single staging library reflects the most current state ofthe entities in the rebuild packages.

    Rebuild Analyze for RBDPKG Entity

    Name . . . . . APPCFG_CICS_TEST Version . . . 1

    Specify Rebuild Analyze option. Then Press Enter.

    Rebuild Analyze option . . . 1 1. Inverse Processing 2. Exception processing

    package1

    rule1

    package2

    prepared 3/3 prepared 3/5

    changed 3/4

    library1 library2

    Problem: library1 does not reflect change to rule1

  • 8/14/2019 App Builder Enterprise Rebuild

    46/187

    3-10 Using Rebuild Analyze and Prepare

    Managing Concurrent Rebuilds

    Figure 3-13 Concurrent rebuilds with a single staging library

    Keep in mind the following tradeoffs in using single staging libraries for concurrent rebuilds:

    If your site is doing many concurrent rebuilds, you may run into resource contention problems asthe rebuilds wait for the single library to become available.

    Single staging libraries use more disk space, because they contain information for multiple rebuildsin a repository version.

    Specifying Single Staging LibrariesTo specify a single staging library:

    1. Set the variable ONE_STAGING_LIB in the @RBDENVn file to Y to specify that you want to use asingle staging library.

    2. Specify a dataset qualifier for the library in the variable RBD_DSN_QUALIFIER in the @USRENVnfile. The default is RBDPKG. For example, you might have a staging library dataset name ofHPSOUT.FF1.RBDPKG.STATLNK.

    The file @SEERENV INI file contains dataset storage information about staging libraries, both sin-gle and multiple, in lines of the form:

    VFLE_1= 1 CYL PO FB 80 3120 NEWFREE CATALOG N/A STATLNK STATLNK

    VFL2_1= 20 10 100

    The values for multiple staging libraries are calculated internally. The repository administrator mustset the required values for single staging libraries. On every VFLE_n and VFL2_n line, specify valuesfor the fields shown in bold in the example:

    Type of storage (CYL, for cylinder storage, in line 1 of the example)

    Number of primary storage (20, in line 2 of the example)

    Number of secondary storage (10, in line 2 of the example) Number of directory blocks (100, in line 2 of the example)

    Make sure to over estimate so that you don t run out of space and do not modify any other settings.The datasets will not be allocated during a rebuild until they are needed (as determined by rebuildanalyze).

    package1

    rule1

    package2

    prepared 3/3 prepared 3/5

    changed 3/4

    library

    Solution: single staging library reflects change to rule1

  • 8/14/2019 App Builder Enterprise Rebuild

    47/187

    Updating CICS using the DFHCSDUP Batch Facility

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 3-11

    Updating CICS using the DFHCSDUP Batch FacilityWhen you prepare a rule in the host environment, AppBuilder automatically updates the platform therule executes in. For CICS, the updates are managed in a batch job that simulates a user performing theupdates with an LU2 script file.

    This approach works well for ordinary prepares in a development environment, where you are typicallyprocessing one rule at a time. It works much less efficiently in a rebuild, where different scriptcommands have to be generated and executed for every rule being prepared.

    The rebuild install feature in AppBuilder lets you use an IBM batch facility called DFHCSDUP to updateCICS. Instead of generating multiple LU2 script commands, rebuild install simply writes the requiredupdates to an intermediate file, which the utility then uses to perform the updates in CICS. Note that you must recycle the CICS region before the changes are activated.

    Specifying DFHCSDUP Processing

    To specify DFHCSDUP processing:1. Set the variable RDODEFN in the CICS INI file for the repository version to Y to specify that you

    want to use DFHCSDUP.

    2. In the variable RDOCSDLT in the CICS INI file, specify Y if you want to submit the batch jobautomatically, N if you want to save the job stream to a dataset for later execution. The RDOCSDLToption is useful at sites at which only CICS systems programmers are authorized to execute theDFHCSDUP utility.

    The sequential dataset for the intermediate file has a name of the form:

    ....RINSTALL.HMFCDUP

    Sample command language to run the DFHCSDUP batch utility follows:

    //XXXXXXXX JOB (DRHA-AZ),'DFHCSDUP',PRTY=15,// MSGLEVEL=(1,1),CLASS=1,MSGCLASS=X,// NOTIFY=XXXXXX,TIME=10//*//STEP01 EXEC PGM=DFHCSDUP,REGION=3M//*//STEPLIB DD DSN=CICS.SDFHLOAD,DISP=SHR//*//DFHCSD DD DSN=,DISP=SHR//SYSPRINT DD SYSOUT=*//SYSUDUMP DD SYSOUT=*

    //SYSOUT DD SYSOUT=*//SYSIN DD DSN= ... .RINSTALL.HMFCDUP, DISP=SHR

  • 8/14/2019 App Builder Enterprise Rebuild

    48/187

    3-12 Using Rebuild Analyze and Prepare

    Updating CICS using the DFHCSDUP Batch Facility

  • 8/14/2019 App Builder Enterprise Rebuild

    49/187

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide 4-1

    CHAPTER

    4REBUILD ACTIONS

    AppBuilder 2.0.3.1 Enterprise Rebuild Guide

    The rebuild actions and methods outlined in this section allow you to control the rebuild process bygenerating reports, overriding values, automating the rebuild process, maintaining the repository, andother functions. Topics include:

    Rebuild Action SummaryTable 4-1 lists and describes each action in alphabetical order by command and gives a reference so youcan find more detailed information. Your enterprise administrator controls the INI variables.

    Rebuild Action Summary Install Objects in the Rebuild Package

    Add an Entity List Rebuild Contents

    Add Keywords List Relations

    Add a Relation Maintain Entity

    Add Text to Entity Maintain Relation

    Add Text to Relation Prepare Object in Rebuild Package

    Analyze Rebuild Impact Reset Object Install Status

    Clean-up Rebuild Information Reset Object Prepare Status

    Delete Entity Set Rebuild Install Status

    Delete Relation Super Prepare

    Export Rebuild Package View Results of Rebuild

    Note Refer to the E nterprise Administration Guide for more information on mainframe actions.

    Table 4-1 Rebuild Actions

    Action Description

    ACTIONSList entity actions

    Displays all actions available to you. The actions available depend on whereyou are in the rebuild process. This is a standard repository action.

    ADDE Add an ent