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
------------------------------
Original Message:
Sent: Sep 28, 2022 12:22 AM
From: Leanne Hayes
Subject: Re: Userdata - What do you use it for?
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?
Original Message:
Sent: Jun 26, 2019 02:15 PM
From: Mathew Goldstein
Subject: Re: Userdata - What do you use it for?
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.
Original Message:
Sent: 06-26-2019 02:48 AM
From: Eoin O'Cleirigh
Subject: Re: Userdata - What do you use it for?
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
Original Message:
Sent: 06-25-2019 01:35 PM
From: Joseph Walther
Subject: Re: Userdata - What do you use it for?
Offering another two additional examples for the use of Userdata, and remain curious to how others are using it.
- 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.
- 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.
Original Message:
Sent: 08-08-2014 09:26 AM
From: MARIA Hackmann-Peters
Subject: Re: Userdata - What do you use it for?
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)