Endevor

 View Only
Expand all | Collapse all

Userdata - What do you use it for?

  • 1.  Userdata - What do you use it for?

    Posted Jan 10, 2014 10:59 AM

    I'm investigating the Endevor USERDATA field and wondered what other sites use the USERDATA field for now, and what you would use it for if CA provided an easy to use interface from the panels?



  • 2.  RE: Userdata - What do you use it for?
    Best Answer

    Broadcom Employee
    Posted Jan 10, 2014 11:10 AM

    For me the most obvious use is to extend options that control processor actions, beyond what I can do with a processor group.  Processor groups are great but with only 8 characters in the name I run out of characters to indicate options like pre-compile, db2, debug, amode, rmode etc.  Yes I could use CONPARMX but that means a separate element, if I could use the Element user data I could enable options like a debug compile, copybook search order overrides etc.  Yes, they are sticky, so they will stay with the element but they could also be overridden, or only active/relevant for certain stages in the lifecycle.  For example if Debug option is turned on, it still only works at development/test stages.



  • 3.  RE: Userdata - What do you use it for?

    Posted Jan 10, 2014 12:48 PM

    I actually used the USERDATA field for a client a few years back to pass some data from the CA Repository and store it in Endevor with the generated copybook element created from the Repository.  We didn't need to access the userdata from the ISPF panels for this particular CA Repository interface, but I can see where this could be useful for building other applications.

    Kevin



  • 4.  Re: Userdata - What do you use it for?

    Posted Aug 08, 2014 09:27 AM

    we will start using Userdata information to transport information from Exit02 into the processor

     

    (in our Case Exit02 has to set a Message and the processor has specific steps to react on that)



  • 5.  RE: Re: Userdata - What do you use it for?

    Broadcom Employee
    Posted Jun 25, 2019 01:36 PM
    Offering another two additional examples for the use of Userdata, and remain curious to how others are using it.
    1. User Data is used when converting to Endevor from another SCM tool that maintains a date-time stamp for each member. As a member is loaded into Endevor, the date-time stamp is copied into user data. This allows conversion routines a way to determine quickly whether a member has been updated since its last Endevor load (the date-time has changed), and cause only changed members to be loaded again. Overall, the conversion then becomes an iterative process and the time-window for the last process is quite small.
    2. User Data is used for an Endevor that has multiple "paths" to production. When an element reaches environments in the upper section of the life cycle, it is necessary for the processor to know which path was used to get there. At this Endevor site, the DB2 Binds differ based on where the element started its migration. To provide the starting location, the entry environment and subsystem are copied into the User Data as elements are placed into any Entry stage. The User Data is preserved by Endevor - even after 1 or more Move actions, and available to processors - even during the Move to production.



  • 6.  RE: Re: Userdata - What do you use it for?

    Broadcom Employee
    Posted Jun 26, 2019 03:43 AM

    Thanks Dan, this is a topic that I think will never die - so let me add another potential use case; suppose you need to an an object to Endevor but the object has some strange characteristics, maybe a name that is not permitted by name rules (one continuing special characters, like delimiters or characters reserved for wild card or placeholders... or some carry along meta data, like say a branch name, GIT checksum etc.  Adding the element with the 'allowed' name, but keeping that associated meta data makes it easy to access later (especially in processors). 

    And you should not forget the power of the new ALTER ELEMENT command to adjust or remove UserData that you no longer need.  If for example you were reserving a few bytes for "upload date" as Dan suggests, once that project is finished you can use the column specific alter commands to remove that zone from all, or selective, Elements.

    Keep 'em coming and let us know if there are additional requirements - for example if you use the USERDATA field for multiple purposes would you like a custom exit to break them up again for formatting or display? 



    ------------------------------
    Sr Principal Software Engineer
    ------------------------------



  • 7.  RE: Re: Userdata - What do you use it for?

    Posted Jun 26, 2019 02:16 PM
    We require the developers to identify the application project​ that each program element is assigned to as a comment the first time the program element is added to ENDEVOR. Exit 2 verifies the comment is a valid application project identifier for the current inventory area and saves the validated application project identifier to the program element user data. When an application project is retired we can then identify all of the program elements that probably should be transferred out of production to the archive where the retired program elements are retained. Otherwise it is difficult to keep production from accumulating more and more obsolete program elements over time. Particular subsystems may be utilized for multiple application projects and developers want to use the CCID for various other purposes, such as associating sets of program elements with particular developer teams. We need to be able to list program elements with their user data, but for us a CSV file is good enough for this purpose, a panel display is not needed.


  • 8.  RE: Re: Userdata - What do you use it for?

    Posted Sep 28, 2022 12:22 AM
    I can see that UserData could be useful but how do you add it in the first place?  I can see that it can be added via the user extension points facility in QuickEdit but I'm interested in knowing how it can be included initially.  Is this only possible via an exit?


  • 9.  RE: Re: Userdata - What do you use it for?

    Posted Sep 28, 2022 12:38 AM

    Hi Leanne,

    When user data was first added, it could only be updated using an EXIT, but now it can be modified simply using ALTER SCL, in fact that's how the sample user extension works, albeit one element at a time.  Building a batch request to update more elements is just a matter of, well SCL generation, pick your favourite method.

    Accessing the data is easier because it's always been available as a processor variable from the variable &C1EUDATA, and of course you can slice and dice it using substrings.

    Regards,
    Eoin



    ------------------------------
    Eoin O'Cleirigh
    Lead Systems Engineer @ ANZ +64273888404
    ------------------------------



  • 10.  RE: Re: Userdata - What do you use it for?

    Posted Sep 28, 2022 12:42 AM
    One more update - there is a nice launching point for all the doc on Altering Metadata here: https://techdocs.broadcom.com/us/en/ca-mainframe-software/devops/ca-endevor-software-change-manager/19-0/administrating/altering-element-record-metadata.html

    ------------------------------
    Eoin O'Cleirigh
    Lead Systems Engineer @ ANZ +64273888404
    ------------------------------



  • 11.  RE: Re: Userdata - What do you use it for?

    Posted Sep 28, 2022 01:20 AM
    Thanks Eoin!  That's really useful - gives me plenty to think about so we're prepared if a use for it arises.  I was just exploring what your fabulous sample user extension points can do now that we have almost got to the point where we can make them available (long story) and it got me wondering about how we might use UserData.


  • 12.  RE: Userdata - What do you use it for?

    Posted Sep 29, 2022 07:46 AM

    Greetings.  We have several maps to production and use part of the USERDATA field to keep track of who did what when as the element moves into our BUILD stage.  We also use this field in a couple of the reports that we generate that gives QA teams a quick contact for any testing issues.

    ALTER ELEMENT CXH94123
    FROM ENV ENVBUILD SYS CXX SUB H09 TYP C STAGE B
    REPLACE USER DATA WITH
    (1,40,' ','CHANGED CC273EL CX092622BEL2 220926')
    OPTION UPDATE ELEMENT CCID 'CX092622BEL2'
    .

    ALTER ELEMENT CA01
    FROM ENV ENVBUILD SYS CXX SUB CSPROD TYP LINKDLL4 STAGE B
    REPLACE USER DATA WITH
    (1,40,' ','COPYBACK CC273EL CX092622BEL2 220926')
    OPTION UPDATE ELEMENT CCID 'CX092622BEL2'
    .