Lesson Objectives

By the end of this lesson, you will be able to:

  • Understand the role of exits and APIs in TURNOVER® for iSeries (now Lifecycle Manager) for customizing and integrating with other tools like Hawkeye, LANSA, CA 2E, JD Edwards, and BPCS.
  • Navigate the Work with Exits panel to view, activate, and manage exit points, including browsing sample source code.
  • Identify key exit points and their purposes, such as form processing, checkout, and distribution exits.
  • Use APIs (encapsulated as commands) to automate functions, with access to help text for parameters and usage.
  • Apply best practices and cautions for implementing exits to avoid impacting all changes.

This summary condenses the 20-page supplement (v101, September 2018) into modules for developers and administrators. Exits and APIs provide extensibility for TURNOVER®'s change management framework. As of October 24, 2025, the product is TURNOVER® Lifecycle Manager (Release 2.100+, 2022 copyright in related docs), with similar exit/API structures but potential additions for modern integrations (e.g., workflow enhancements); check UNICOM support for updates, as no specific post-2018 supplement #30 was found publicly.

Key Concepts

  • Exits: User-defined programs run at specific points in TURNOVER® processes (e.g., pre-checkout, form approval); activated via Work with Exits panel (Main Menu 8 > 7).
  • APIs: Commands encapsulating programs for functions like adding worklist items or checking out objects; most have F1 help for parameters.
  • Integration: Designed for tools/products; sample source in product library for customization.
  • Work with Exits Panel: View exits, browse/copy samples, activate with program/library.
  • Cautions: Active exits affect all changes; code/target carefully, test thoroughly.
  • Prerequisites: TURNOVER® v101+; access to online help (F1 on commands/panels); familiarity with PWM/forms.

Module 1: Introduction to Exits and APIs

Framework for Development

  • TURNOVER® supports end-to-end development and integrates with third-party tools via exits/APIs.
  • APIs: Commands for automation (e.g., every function has an API per related supplements).
  • Exits: Run user programs at key points; manage via dedicated panel.

Work with Exits Panel

  • Access: Main Menu Option 8 (Utilities) > Submenu 7 (Work with Exits).
  • Functions: 5=Browse program, 7=Work with samples, 8=Help.
  • Columns: Exit number, description, active status, program/library, library list (*CURRENT, *LIBL, *APPL).
  • F8 for IFS exits; samples provided for starting points.

Module 2: List of Exit Points

The supplement lists and details exit points; each runs at specific times with parameters for customization. Samples available for many.

ExitDescriptionWhen RunsParameters/Key Notes
EXIT 1Form Finalization ProcessingDuring form finalizationCustom post-processing; sample TOEXIT1.
EXIT 2Pre-Distribution Form ExitBefore form distributionValidate/modify before send; parameters for form details.
EXIT 3Pre-Distribution Library ExitBefore lib distributionHandle lib-specific logic; example TOEXIT3 in SMITH lib.
EXIT 4Receive of DistributionOn receiving distributed formPost-receive actions; for remote/hub versions.
EXIT 5Determining Source file namesWhen resolving source filesOverride source location; active by default.
EXIT 8Form Initialization phaseDuring form initSetup form data; library list *CURRENT.
EXIT 9Post-Checkout ExitAfter checkoutAdditional actions post-reservation; sample TOEXIT9.
EXIT 10Manual check-inFor manual object check-inCustom check-in logic.
EXIT 11Form Completion ProcessingAfter form runPost-completion tasks; *APPL lib list.
EXIT 12Add a line to TurnOver formWhen adding form lineModify new lines; e.g., add defaults.
EXIT 13Pre-run Error check ExitBefore error checkPre-validation.
EXIT 14Pre-Checkout ProcessingBefore checkoutValidate before reservation; sample TOEXIT14.
EXIT 15Add PWL ItemWhen adding to Programmer WorklistCustom add logic.
EXIT 16Form ApprovalDuring approvalCustom approval workflows.
EXIT 17Document pre-checkout exitBefore document checkoutFor document management integrations.
  • More Exits: Remaining pages detail additional ones (e.g., EXIT 18+ for projects, escalation blackout per v100 notes); IFS exits (F8) for stream files.
  • Samples: Provided in product lib; browse/copy to customize.

Module 3: APIs and Commands

APIs are OS/400 commands for nearly every function; F1 for help on parameters/usage.

  • Examples (from related docs/supplements):
    • ADDPWLITM: Add item to worklist (F6 equivalent).
    • CHECKOUT: Checkout object/source.
    • CHGPWL: Change worklist.
    • CMPSRCMBR: Compare source members.
    • CPYPWL: Copy worklist.
    • DSPCHKOUT: Display checkout activity.
    • DSPCOHST: Display checkout history.
    • STRPWM: Start PWM.
    • TURNOVER: Main menu.
    • And more (e.g., for forms, reports, helpdesk).
  • Usage: Encapsulate programs; integrate into custom scripts/exits.
  • Best Practices: Use for automation; refer to online help/User Guide for full list/parameters.

Module 4: Best Practices and Cautions

Implementation Tips

  • Target Specifics: Code exits to filter by app/level (e.g., if app = 'PAYROLL' then...).
  • Testing: Use test environment; simulate processes.
  • Samples: Compile from provided source; activate selectively.
  • IFS Exits: For modern/IFS objects; separate panel.

Cautions

  • Global Impact: Active exits run for all changes; errors can disrupt.
  • Maintenance: Document customizations; update for releases.

Assessment and Next Steps

  • Quiz Ideas: What panel manages exits? Purpose of EXIT 9? How to access API help?
  • Practice: Access Work with Exits, browse a sample, activate a test exit.
  • Further Learning: User Guide (v101) for commands; Administrator’s Guide (Release 2.100) for advanced integrations; Supplements #14 (Change Process), #24 (Emergencies). Contact UNICOM support (tech.support@unicomsi.com or +1-603-924-8818) for 2025 updates or sample code access

Resources

Resource 1

TURNOVER Exits and APIs

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
>