Entries by Alan Seiden

Easy Job Scheduling and Queuing with Seiden PHP+ on IBM i

Using a job queue or scheduler to run PHP scripts helps ensure that PHP-based processes are run successfully and on time. To make it easy for Seiden PHP+ users to schedule jobs, we provide job scheduler or queue functionality and support with our Seiden PHP+ SmartSupport. Benefits include the ability to:

Seiden PHP+: Built for IBM i. Backed by Experts.

I’m pleased to share that over the past year, we’ve rebranded our PHP distribution as Seiden PHP+. When we first created CommunityPlus+ PHP, it was meant to fill a gap—providing a stable, supported PHP environment for IBM i after Zend Server Basic was discontinued. The new name, Seiden PHP+, better reflects our team’s role in offering and supporting this full-featured, enterprise-grade PHP stack that businesses rely on for speed, stability, and security. Seiden PHP+ retains everything people loved about CommunityPlus+:

Improve Your TN5250 Experience in VS Code for IBM i

The open-source TN5250 emulator provides a handy way to launch IBM i 5250 sessions from within VS Code for IBM i. The one drawback I’ve found in TN5250 is the Cursor in protected area of display error when I accidentally type on a protected area of the screen—an area where input isn’t allowed. The error must be cleared before I can continue to work.

Scott Forstie’s Wish

At a recent Code for i Fridays meeting, DB2 for i Business Architect Scott Forstie shared with the group: “My wish is that every new database file is an SQL table.” Scott was recommending that new tables always be built using SQL rather than DDS. He had several good reasons, but to share the top two:

Release Levels for IBM i Services (SQL)

IBM i Services are a growing, innovative use of SQL on the IBM i platform. These services are SQL-based functions and views that provide convenient access to system functionality. For example, VS Code for i uses the LIBRARY_INFO table function. Because these SQL-based services are added and enhanced over time, each service has an operating system release and Group PTF level at which it became available. Our LIBRARY_INFO example was provided in IBM i 7.3 with Group PTF SF99703, Level 18, and enhanced with  SF99703 Level 22. For IBM i 7.4, it was SF99704, Level 7, and enhanced with SF99704 Level…

Physical File GREP (PFGREP): Fast IBM i Source Code Search

Our 2023 article on searching source physical file members using the QShell grep command showed grep’s potential. In practice, while we found QShell grep to be flexible, we also experienced slow performance and occasional errors. Now, our own Calvin Buckley has built an improved grep command called pfgrep to search traditional IBM i source physical file members. Quick and reliable, pfgrep is also free and open source.

Compare Source Between Two Partitions using VS Code for IBM i

Comparing source code between IBM i partitions has been a desired feature of Code for i. Although connecting to two systems within one Code for i window is not yet supported, comparing source from two systems IS possible. Patrick Behr recently posted a comparison technique using Git that works for multiple files. Another technique, which seems well suited for comparing single files rather than multiples, was provided by Christian Jorgensen in the Code for i Github repository. We share both versions below.

How to Speak IBM i

Sometimes it seems that IBM creates its own terminology for everything. One young colleague told us she was eager to learn about the IBM i platform, but her older colleagues used so many abbreviations and initialisms, the “alphabet soup” deterred her and caused frustration. We at Seiden Group try to bring teams together. In that spirit, here are several common IBM i terms and their definitions in platform-neutral terms:

Where to Find Release Notes for ACS Updates

IBM i Access Client Solutions (ACS) is a critical tool for essential features such as 5250 emulation, SQL, Db2 performance, and open source package management. Every update is packed with functionality improvements, bug fixes, and security updates.

C​reating a Debug Log with the PHP Toolkit for IBM i

One of my favorite features of the PHP Toolkit for IBM i is its ability to generate a detailed debug log. The log includes connection information, program call options, parameters in and out, and performance timing. When we receive questions about the toolkit as part of our SmartSupport, a debug log helps resolve the question quickly. Why use the PHP Toolkit? It can call commands, RPG, COBOL, and CL programs, flexibly and fast. The debug log can make troubleshooting easier than with other methods that don’t have a log, such as stored procedures.