COMMON Boot Camp

Update: A few videos are left to complete. Please provide your contact information below if you would like to receive an update when the training series are available. Thank you for your interest in Boot Camp.

Why Boot Camp?

COMMON Members, we heard you loud and clear. You are looking for a way to train new talent in your organization – perhaps students straight out of college or mid-career employees with no previous experience in IBM i Systems Administration or ILE RPG. The new Boot Camp video training series solves this challenge.

Each video in a series is presented by a subject matter expert. Available online 24×7, these subscription-based series are a perfect addition to your training program.

IBM i Systems Administration

This series consists of 17 sessions.

1. IBM i Operating System Introduction and Overview

Required Topics

  • Brief History of IBM i and Power Systems
    • Dates
    • Version History with Associated Hardware History
    • System Names
    • Communications Past (Twinax BiSync T/R SNA/SDLC FDDI IPX)
    • Modern Use Cases
  • System Concepts
    • Differences between IBM i and Other Systems
      • Integrated System
      • Main Storage (not memory)
      • IPL (unique to system)
      • PTFs (IBM i fix pack)
      • The Machine Interface
      • Everything Is an Object
  • Single-level Store
  • File Systems
  • Libraries
  • Messages and Message Queues
  • Printers, Output Queues and Spooled Files
  • Integrated File Systems
  • Storage Pools
  • Integrated Database (DB/2)
  • Security
    • Object Ownership
    • Hard Typing
  • Review of Interfaces to the System
    • Command Line Use and Command Construction
      • QSH and qp2term and Other Shells
      • Menu Structure
    • IBM Navigator for i Web Interface
    • Review of iSeries Access (historical, brief)
    • Access Client Solutions (the new, modern tool)
  • Security Basics
    • User Security
    • Limited User
    • Profile Types
    • Group Profiles
  • System Security
    • System Values
    • Password Rules
    • Auditing

2. Basic Power Systems Hardware Overview

Required Topics

  • Relationship of Physical Hardware to Operating System Resources
  • Physical, Partitioned vs Virtual Deployment
  • Understanding Port Numbering and Identifying Hardware
  • Tape Libraries and Tape Drives
  • Optical and RDX Drives
  • Virtual Interfaces
  • Disk Controllers and Raid
  • Internal Storage vs SAN
  • Printers and Output Queues
  • Hypervisor

3. File Systems

Required Topics

  • Security Model
  • Root (IFS)
    • Case Sensitivity
  • Library File System, Files and Members
  • QOpenSys
  • QNTC
  • QFileSvr400
  • QIBM
  • QDLS and Its Limitations
  • User Defined File Systems (UDFS)
  • NFS
  • Netserver
  • Samba

4. IBM i Work Management

Required Topics

  • Starting/Submitting Jobs
  • User Profiles
  • Library Lists
  • Subsystems
  • Class of Services
  • Routing Programs
  • Workstation Entries
  • Job Queues
  • Workload Capping
  • Performance
  • Spooled Files
  • OutQs
  • Memory Pools
    • Machine Pool
    • Base Pool
    • Interactive Pool
    • Spool Pool
    • Shared
    • Private Pools
  • Job Types
    • Batch Jobs
    • Interactive Jobs
    • Batch Immediate
    • Prestart vs Autostart
    • Writers
  • Ending Jobs
    • End Job vs End Job Abnormal

5. Problem Reporting and Management

Required Topics

  • Work Contact Information
  • Working with Problems
  • Reporting Problems to IBM
  • Basics of QMGTOOLS
  • Use of System History Log
  • Reading Job Log, Green Screen, Navigator and SQL
  • QSYSOPR, QSYSMSG, QSRVMSG and Redirecting Messages to Other Queues
  • Introduction to Service Tools
    • SST vs DST
  • Information – Where Do I Go for More Info?

6. Starting the System

Required Topics

  • Methods to Initiate IPL
    • IPL Manual vs Auto
  • A/B/D Mode IPL
  • Abnormal IPLs
    • Causes
  • CHGIPLA
  • Custom Startup Jobs
  • System Level SRC Codes and the Control Panel / HMC

7. Setting Up the System

Required Topics

  • Intro to the System Console (ACS)
    • When to Use System Console
    • Which Consoles Are Available
    • Which Consoles Does Your System Have
  • System Resource Allocation
    • ASP
    • Memory Pool Allocation
  • System Values
    • Allow Object Restore
    • User Profile Password Level
    • Auditing Values
    • Append Jobs
    • Number of Jobs Initially Started
    • Date and Time
    • CCSIDs
    • History Log Size
    • QLIMIT SECOFR
    • System and User Library Set Defaults
    • System Security Level
    • QPRFADJ
  • Selecting a Controlling Subsystem
  • Subsystems to Start
  • TCP/IP Interfaces and Servers to Start
  • Network Attributes
  • Setting the Database Name
  • Migrating from a Previous System
    • Retrieve System Information
    • Update System Information
  • Host table entries and DNS
  • Domain information
  • Exit programs

8. IBM i Virtual Optical and Virtual Tape

Required Topics

  • Concepts
    • Performance Differences
    • Compare Virtual Tape and Optical Devices to Physical Tape, Devices and Libraries
    • Network-based Virtual Optical
    • Storage
  • Creating Image Catalogs
  • Creating Devices
  • Populating Image Catalogs
  • Managing Virtual Device and Storage
    • Initializing Previously Used Virtual Tapes
  • Save and Restore Considerations
    • New Cloud Storage Solutions

9. IBM i Networking

Required Topics

  • Line Descriptions
  • TCP/IP Interfaces, Creating, Sstarting, VIPs, VLANs, Naming
  • Routing
  • Starting/Stopping and Maintenance of Services and Defaults
  • Bridging, Aggregation, VLANs
  • Packet Filtering
  • High Level Monitoring How-to
  • SSL TLS
  • IPV4 vs IPV6

10. IBM i Backup and Recovery Basics

Required Topics

  • Know Your Recovery Strategy Before You Begin
  • Tape Drive and Tape Library Basics
  • FlashCopy Overview
  • Cloud Storage Solutions
  • Tour of the SAVE Menu
  • Save While Active Concepts
  • Backup and Recovery Management Tooling (i.e. BRMS)
  • Save Strategy
    • How Often to Save
    • Save Before and After Upgrades and Maintenance
    • Saving the Right Stuff
      • Security
      • Configuration
      • Libraries
      • DLO
      • IFS
  • Monitoring Your Backups
  • Finding the QJOBMSGQFL Landmine
  • Restoring Library Objects and Restoring to a Different Library
  • Restoring IFS Objects and Restoring to a Different Folder
  • Restoring Authorities
  • Transferring Configuration from One System to Another RtvSysInf/UpdSysInf
  • Testing Your Recovery

11. IBM i Security Basics

Required Topics

  • Security Concepts
    • Object-centric vs Data-centric Security
      • Data and Column Encryption
      • Row Column Access Control
  • User Profiles
    • Passwords
    • Group Profiles
    • Special Authorities
    • User ID/Group ID
    • Initial Program
    • Job Description
  • Security System Values
    • System Security Level
    • Password Level (10 Characters vs 120 Characters)
  • Authorization Lists
  • Adopted Authority
  • Limited Users
  • Single Sign-on
    • Kerberos and EIM Concepts
  • Auditing Concepts
    • Audit Logs
    • Generated columns
  • Public Authority
  • Authority Collection Support (7.3)

12. CL Programs, Commands and Using SQL to Manage Your System

Required Topics

  • CL Program Basics
    • Identify Variables
    • Identify Subroutines
    • Control Flow
    • Monitor for Messages
    • ILE CL vs OPM
  • Where to Store CL Programs and Source
  • How to Find Correct Source for CL Program or Command
  • How to Retrieve Source When You Cannot Find Source
  • How to Edit and Compile CL
  • Modify and Deploy a Startup Program
  • Create Your Own Command
  • SQL Basics
  • Demo: Use CL and SQL to Determine PTF and Group Levels

13. Installing IBM i and Licensed Program Products (LPPs)

Required Topics

  • No-charge vs Additional Charge LPPs
  • Obtaining – Intro to ESS, Registering, Selecting, Download Options
  • License Keys
    • Obtain
    • Install
  • Building Image Catalog and Virtual Optical
    • Maintenance Considerations – Delete or Leave?
  • GO LICPGM
    • Difference Between Programs and Options
    • Installing LPPs
    • Save/Restore/Deletion of LPPs
    • Saving and Restoring LPPs from Another System
    • Installing Secondary Language
  • Accepting License Agreement
  • Passport Advantage

14. PTF Installation and Maintenance

Required Topics

  • Overview of PTFs, Purpose and Use
    • How to Figure Out What Is Installed
    • CUMes and Included Groups
    • Dependent Groups
    • Corequisites and Prerequisites
  • Perm and Temp, A and B Sides
    • Ramifications of Perm vs Temp Apply on Product Upgrades
  • PTF Groups
    • Fixing Group Status “Not Applied”
    • Why Are Groups Listed Twice?
  • Obtaining PTFs
    • Fix Central Overview
  • GO PTF Menu
    • Option 8 vs INSPTF
  • Loading, Applying  and Removing
    • Finding the QJOBMSGQFL Landmine
  • Firmware Updates – OS vs HMC
  • Recovering from a Failed Load or Apply
  • Querying PTF and Group Levels with SQL Services

15. Analyzing and Understanding Disk Space Utilization

Required Topics

  • Monitoring
  • Reporting
  • RtvDskInf / RtvDirInf Data Collection
    • SQL on the Retrieved Data
  • IFS Shell Commands, Find, Du, Ls
  • Disk Cleanup “Usual Suspects”
    • Journal Entries
    • Save Files
    • Virtual Tape and Virtual Optical
    • Deleted Record Space (RGZPFM)
    • Temporary Object Space

16. Database Management

Required Topics

  • Create and Work with DB2 Objects (tables, indexes, views, user defined functions, etc.)
  • Understanding Database Statistics
  • Basic Index Strategy Skills
  • Manage Referential Integrity and Check Constraints
  • Manage Database Logging (Journaling)
  • SQL Plan Cache
  • Show Statements
  • Visual Explain
  • SQL Plan Cache Snapshots
  • SQL Performance Monitors
  • Reorganize Physical File Members
  • System Limits
  • Save and Restore Considerations
  • Determining Sources of Locking Problems
  • Reverse Engineer SQL DDL from Tables Created with SQL or DDS
  • Relevant Tools

17. Practical Management of the System – Daily Care and Feeding

Required Topics

  • Hands-on Practical Examples
  • Key Throughout Is to Know What Is Normal for Your System
  • Work Management
    • Verify That Your Jobs Are Running
  • Problem Management
    • Any New Open Problems
  • User Management
    • Disabled Users
    • Users That Have Not Signed On in X Amount of Time
  • Daily Backups
    • Did It Complete?
    • If Not, Why?
    • Did It Complete in Expected Amount of Time?
  • Audit Reviews
    • Where to Look
    • What to Look For
  • Storage
    • Growing At the Expected Rate?
    • Journal Cleanup
    • Temporary Storage Growth
  • Message Management
    • QSYSMSG, QSYSOPR Are They Clean?
  • Network Management
    • Failed Network Lines
    • Correct Services Running?
  • Spooled File Management
    • Impact on Job Structures
    • Disconnected Job Logs
  • Database Management
    • Review Index Advisor
  • Performance Management
    • Observe Paging and Faulting Rates
    • Observe Disk Percent Busy
    • Observe CPU Usage
  • Job Management
    • Identify Runaway Jobs
    • Fix Runaway Jobs
  • Working with Scheduled Jobs
    • Jobs that Failed
    • Jobs That Are Still Running That Shouldn’t Be Running

Programming in ILE RPG

This series consists of 10 sessions with accompanying practical exercises.

1. Introduction to Programming and RPG - Hello World Program-Driven

Required Topics

  • Discuss Series – how exercises work, database file, source code, map the way through
  • Editing Source – with highest level explanation of RDi
  • Identify and Define Program Variables
  • Define Printer File
  • Variable Assignment for “Hello World”
  • Exercise: Print “Hello World” (DSPLY Command – results called from 5250 interface)
  • Compile and Bind Programs
  • Run and Test Programs – show in green screen, WRKOBJ, WRKSPLF, Call
  • Explain Libraries, Explain Objects, Explain Spooled Files – show in green screen
  • Variable Assignment for Add Two Integers
  • Exercise: Add Two Integers (DSPLY Command)

2. Getting Started - How an RPG Program is Put Together

Required Topics

  • Define Files, Members, Records, Fields
  • Cross-reference with SQL Terminology – schemas, tables, rows, and columns
  • Define and Use Dcl-f (Declare File)
  • Identify Sections of an RPG IV Program
  • Programming Specifications
  • CTL-OPT Keyword
  • Explain Program Development Cycle (short section)
  • Define and Use Dcl-s (Declare Standalone Variable)
  • Define Free Format Specifications
  • Syntax of Writing Comments in RPG (brief)
  • Basic Syntax in RPG – IF, ELSE, ELSEIF, SELECT, WHEN, LOOPS, COMPARISONS, OTHER
  • Monitoring for Errors – MONITOR, ON-ERROR
  • How to Find Reference Manuals
  • Externally Described Files
    • Describe and Use EDTWRD and EDTCDE Edit Codes
    • Define and Use Overflow, SPACEA, SPACEB, SKIPA, SKIPB
    • Use Field Reference File
    • Use WRITE Operation
    • SETLL Operation
    • READ Operation
    • %EOF Function
  • Exercise: Prog1_Documentation (maybe prog3, refer to section above for prog1 & prog2)

3. Basic Screens

Required Topics

  • Screens Are a Different DDS
  • Show Keywords
  • Screen Designer in RDi – literals, function keys, input, output, formats
  • Address That Screen from RPG Program – declare and execute formats
  • INDARA, INDDS
  • Outputting onto Screen
  • Exercise: Type YourName, Program Outputs “Hello NAME” Using DSPF
  • CUA (breezy, indicating short overview section)
  • Accessing Individual Records from a File (chain write update)
  • Create a CRUD Program
  • CHAIN
  • UPDATE
  • DELETE
  • %FOUND
  • Using File and Record Locking
  • Exercise: Screen That Asks for Cust Number, Retrieve, Update or Write Back to File – customer maintenance program (CSCTP)
    • Do the exercise in the main program

4. Using Declarations and Data Structures for File I/O

Required Topics

  • Declare and Use Constants
  • Declare and Use Literals (brief)
  • Declare and Use Standalone Variables
  • Declare and Use the LIKE Keyword
  • Declare and Use Data Structures
  • Declaring the Data Structure Header
  • Declare and Use Data Structure Subfields
  • Declare and Use Overlapping Subfields
  • Declare and Use Externally Described Data Structures
  • Declare and Use Qualified Data Structures
  • Declare and Use LIKE and LIKEDS
  • Declare and Use Arrays
  • %LOOKUP
  • SortA
  • %XFOOT
  • Mention Other Types (Compile Time and Prerun Time) of Arrays and Tables to be Found in the Documentation
  • Data Structure Arrays
  • Assign Initial Values to Variables
  • Initialize Data Structures and fields
  • Exercise: Split Phone Number Area Code from Exchange, Look Up the Full State Name from the Two Character Code Using an Array (CSCSTP)
  • Introduction to Data Structures as a Mechanism for Passing Info to and from File
  • LIKEREC Keyword, *input, *output
  • Using Data Structures with Database
  • Using Data Structures with Display Files
  • INDDS Keyword
  • EVAL-CORR
  • Exercise: Redo CRUD Application with Data Structures for File I/O (CSCSTP)

5. Controlling Program Workflow - Subroutines and Subprocedures

Required Topics

  • Using Relational Comparisons – >, =>, =, <=, <, <>
  • Define and Use Sequence
  • Define and Use Selection
  • Declare and Use IF, ELSE, ELSEIF
  • Declare and Use SELECT, WHEN, OTHER
  • Define and Use Control Break Logic (not using the cycle)
  • Declare and Use Iteration
    • Declare and Use DOW Operation
    • Declare and Use DOU Operation
    • Declare and Use FOR Operation
  • Loops and Early Exits
    • Declare and Use ITER Operation
    • Use the LEAVE Operation
  • Declare and Use Subroutines
    • Use the BEGSR, ENDSR Operation
    • Use the EXSR Operation
    • Use the LEAVESR Operation
  • Declare and Use Subprocedures
    • Declaring local variables
    • Parameters
    • Return Values
    • Passing Parameters by Value
  • Calling Programs
    • Parameters
    • Prototypes
    • Calling the Prototype
  • Exercise: CRUD Application in Different Routines, Pass the Data Structures as Paramaters (CSCSTP)
  • Exercise: Report That Does Control Breaks (CSCTP) Total Balance Due by State

6. ILE Concepts

Required Topics

  • Exporting Subprocedures
  • Define Binding
  • Cycle Main vs No Main vs Linear Main Procedures (breezy)
  • Modules
  • Use the /COPY, /INCLUDE Statements
  • Compile and Bind Modular Programs
  • Exercise: Redo CRUD Program Using Modules, Read, Write/Update, and State Lookup into Separate Modules (CSCSTP)
  • Describe Single Entry Point Programs
  • Describe Multiple Entry Point Service Programs
  • Use Binding Directories
  • Compile and Bind Service Programs
  • Describe and Use Binder Language
  • Describe and Use Service Program Signatures
  • Use the CRTSRVPGM command
  • Deploy Service Programs in an Application
  • File I/O and Subprocedures
  • Use the DSPPGM and DSPSRVPGM Commands (breezy)
  • Activation Groups
    • Describe and Use the Default Activation Group
    • Describe and Use a Named ILE Activation Group
    • Describe and the Caller’s Activation Group
    • Describe and Use Activation Groups and File Overrides
    • Describe and Use Activation Groups and File Opens
  • Exercise: Redo CRUD Program Using Service Programs (CSCSTP)

7. Static SQL

Required Topics

  • Define SQL Data Manipulation Language (DML)
  • Define and Use DML Statements Select, Inset, Update and Delete
  • Define and Use EXEC-SQL
  • Using Host Variables in SQL statements
  • Define and Use Host Structures
  • Handle Null Values in Tables Use the SQL
  • Handle SQL Return Codes (SQLCODE and SQLSTATE)
  • Define and Use SQL Cursors
  • Use the SQL OPEN Statement
  • Use the SQL FETCH Statement
  • Use the SQL CLOSE Statement
  • Use the SQL UPDATE Statement
  • Use the SQL DELETE Statement
  • Use the SQL SET OPTION Statements (ALWCPYDTA, CLOSQCLCSR)
  • Create a SQLRPGLE Program
  • Exercise: Redo CRUD Application Using SQL (CSCSTP), Take Service Program and Redo with SQL-based Service Program

8. Further Operations and Functions (Select Functions and Primer How to Get More Information)

Required Topics

  • How to Look Up Functions in the Manual (knowledge center)
  • Demonstrate Going Down List and Picking a Function
  • Explain the Documentation for One of the Functions (fixed, free, factor 1, 2, and result)
  • How to Look Up Op Codes in the Manual
  • Demonstrate Going Down List and Picking an Op Code
  • Explain the Documentation for One of the Op Codes (fixed, free, factor 1, 2, and result)
  • Using Op Codes and Functions in Calculations
  • Numeric Examples
    • %EDITC
    • %DEC, %DECH (plus discussion of half adjust)
    • %REM
  • String Examples
    • %SUBST
    • %CHAR
    • %SCAN
    • %CHECK
    • %XLATE
    • %TRIM (%TRIMR, %TRIML)
  • Date Examples
    • %DIFF
    • %SUBDT
    • %DATE, %YEAR, %HOUR (different date and time formats discussed)
  • Exercise: CSCSTP Table – Write Procedure to Convert to Proper Case (%SUBST and %XLATE) and Flag if Last Order Date within X Days (%DATE and %DIFF)

9. Programming with Subfiles

Required Topics

  • Subfile Record Format
  • Define and Use the SFL Keyword
  • Subfile Control Record Format
  • Define and Use the SFLCTL Keyword
  • Define and Use the SFLDSP, SFLDSPCTL Keywords
  • Define and Use the SFLPAG, SFLSIZ Keywords
  • Define Footer Record Format
  • Define and Use the OVERLAY Keyword
  • Load a Subfile
  • Load an Entire Subfile
  • Load a Subfile a Page at a Time
  • Expanding Subfile
  • Reloading a Subfile after Delete or Sort
  • Getting Input from Subfiles
  • Define and Use the READC Statement
  • Define and Use the Chain Op Code
  • Exercise: Create Order Entry Application (CSCSTP, CSINVP, CSORDP, CSORDPRP)

10. Additional SQL Techniques

Required Topics

  • Dynamic SQL vs Static SQL Use Sases
  • Use the SQL PREPARE Statement
  • Use the SQL EXECUTE Statement
  • Using Prepare with Cursors
  • Reserved Variable Names
  • Exercise: Convert Report Application to a Subfile SQL – Dynamically Control How Sorted Based on Parameter (CSCSTP)
  • Commitment Control – Why It Is Important
    • Commitment Scope
    • Rollback and Commit Statements
    • Set options statement for defining commit options
  • Exercise: Order Entry Application with Commitment Control (CSCSTP, CSINVP, CSORDP, CSORDPRP)