Module 3: Endevor Actions
Endevor- Actions
Actions are the verbs of Endevor - everything you do to an element is an action: ADD, UPDATE, RETRIEVE, GENERATE, MOVE, DELETE, and more. You can run actions two ways: in the foreground through ISPF panels (interactive, good for learning), or in batch with SCL submitted as a job (repeatable, good for many elements).
Both ways do exactly the same thing. Foreground panels actually build SCL behind the scenes and submit it. Once you are comfortable, batch SCL is faster and becomes essential for packages and automation.
Running actions in batch - the JCL skeleton
Batch SCL runs under the Endevor batch interface program. Your SCL statements go in the BSTIPT01 input stream:
The report of what happened comes back in C1PRINT. Always read it - a return code 0 with warnings inside is not the same as a clean run.
ADD - bring a new element under control
- ADD is only for the first time. It copies the PDS member into the entry stage as level 01.
- OPTION GENERATE 'Y' compiles it immediately - the usual choice for programs.
- ADD fails if the element already exists in that stage - use UPDATE instead.
UPDATE - store a new level of an existing element
- UPDATE creates the next level (02, 03, ...) and stamps your CCID and comment on it.
- The element must be signed out to you, or the UPDATE is rejected - this is the concurrent-change protection.
- GENERATE 'N' skips the compile; run a separate GENERATE action later when you are ready to build.
RETRIEVE - copy an element out to your PDS
- RETRIEVE with SIGNOUT 'Y' locks the element to you - nobody else can UPDATE it until you sign it back in.
- To fetch an older level for comparison or recovery, add LEVEL '01' (or any level number).
- Always retrieve fresh before editing - editing a stale PDS copy is the classic way to lose someone else's change.
GENERATE - compile and link the element
- GENERATE runs the element's generate processor: compile, link-edit, and stamp the footprint.
- Generate in the same stage you will promote from - a load module built in D is what moves to T.
- A failed GENERATE leaves the source level intact; fix the code, UPDATE again, and regenerate.
MOVE - promote an element up the stages
- MOVE copies the source to the target stage and regenerates it there with that stage's processor group.
- WITH HISTORY 'Y' carries the audit history along - auditors expect this on production moves.
- MOVE to PROD is usually restricted to packages; a direct MOVE to P may be blocked by your site's rules.
DELETE - remove an element from a stage
- DELETE removes the element from the named stage only - other stages keep their copies.
- History is retained according to site rules, so a deleted element can often be recovered - ask your administrator quickly.
- Deleting from PROD is heavily restricted; it normally happens only through an approved package.
Other useful actions
- TRANSFER - move an element between systems or subsystems (or environments) without going through stage promotion.
- PRINT - print an element's source, its history, or a change summary to a dataset or SYSOUT.
- SIGNIN / SIGNOUT - release or take the lock on an element without moving any source.
- ARCHIVE / RESTORE - offload old levels to archive datasets and bring them back when needed.
- LIST - list elements matching selection criteria (name masks like PAY* are allowed).
