• The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
Menu
  • The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
  • Guru: Edit Result Sets in Run SQL Scripts

    October 7, 2019 Paul Tuohy

    Before getting into the detail in this article, I want it to be clear that I do NOT (in any way) advocate the direct editing of data in a production database. But when it comes to a test database, then the ability to directly edit data is invaluable.

    Back in the days of System i Navigator, you could right click on a table, select the Edit option and a window would open containing the contents of the table. You could directly edit the contents of any cell. Rows could be inserted or deleted using the Rows option on the menu. …

    Read more
  • Guru: MERGE, Chicken, And Eggs

    September 30, 2019 Ted Holt

    Which came first: the chicken or the egg? I don’t have time to ponder such trivialities. However, I am glad to know that SQL has a way to help me with chicken-and-egg database updates, i.e., when two statements need to run but each politely needs for the other to go first.

    Suppose you support an IBM i system that keeps up with inventory. It has an item master table (physical file) that stores general information such as a description, the standard cost, and the list price of an item.

    create table ItemMaster
      (ItemNumber     char(6),
       Revision       dec(3),
       Description    char(20),
       Cost           dec(5,2),
       
    …

    Read more
  • Guru: Parsing JSON With DATA-INTO And A Twist

    September 23, 2019 Mike Larsen

    One of my recent projects required me to parse JSON returned from a web service. On the surface this sounded like a pretty easy task, but I quickly ran into a challenge. The JSON being retuned didn’t have a top-level element, and since I wanted to load the JSON into a data structure, my program couldn’t handle it.

    After some searching, I found that some of my options included changing the code in the parser (JSONPARSE) or using a totally different parser altogether. While both of these are viable options, I decided to take a slightly different route.

    Before I …

    Read more
  • Guru: Enumerated Data Types In RPG

    September 16, 2019 Ted Holt

    IT has changed a lot since I entered the field several decades ago, but some things have not changed. I would read in those early days that COBOL was dead, and I read the same thing now. Yet COBOL is 60 years old and still going strong. Back then I heard RPG criticized as “Real Poor Garbage”. These days I hear it scorned as “legacy”, which I assume is supposed to mean the same thing. Yet today’s RPG is better than any of its predecessors for business programming.

    RPG supposedly does not have the features of modern languages. Maybe not, …

    Read more
  • Guru: I’m A Number, You’re A Number, Everybody’s A Number

    September 9, 2019 Ted Holt

    Do you, like Bob Seger, sometimes feel that you are nothing more than a number? Me too. That’s because to many people, that’s exactly what we are. And if there’s one thing that computers are good at, it’s assigning numbers — to orders, to accounts, to invoices, to transactions, and of course, to people. Since we have to make the computer assign numbers, we may as well learn the modern way to do it.

    In my earliest days of programming, I would store the last assigned of a series of numbers in a data file. (The S/34 and S/36 …

    Read more
  • Guru: Read a Data Area As a One-Row Table with SQL, Take Two

    August 26, 2019 Ted Holt

    Fifteen years ago, reader W.G. asked me about the possibility of treating a data area as a one-row table (a physical file with one record) in an SQL query. The question intrigued me because in my System/36 days, I had often wished that I could access the local data area (LDA) as a one-record data file in a query.

    Today, thanks to Scott Forstie and his team at IBM, I update my response to W.G. with more information. It’s not that the technique I presented in 2004 is outdated — it’s as relevant as ever — but that the fine …

    Read more
  • Guru: Going Dark In RDi

    August 19, 2019 Paul Tuohy

    In this article I am going to show you how to configure RDi for dark mode. Dark mode is where the background of an application is changed from white to black. Some say that dark mode makes text (and especially code) easier to read. Others say it’s more difficult to read. Personally, I am a convert, but I know other developers who hate it. Maybe you should give it a try and see which you prefer.

    Recently, there has been a lot of debate about dark mode (mostly prompted by Apple introducing it as an option in its operating systems), …

    Read more
  • Guru: RDi Code Coverage Without SEPs

    August 12, 2019 Susan Gantner

    My last Guru tip provided an introduction to RDi’s Code Coverage tool that you can use to determine how complete your tests are. In that tip I discussed how to run it using Service Entry Points (SEPs). In this follow-on tip, I’ll continue the exploration of this tool with some additional details plus introduce you to an alternative way to run a Code Coverage session.

    Before going into the alternative approach to running Code Coverage, there are a few details I didn’t mention in the first tip.

    I mentioned that Code Coverage uses the debug engine. What I didn’t mention …

    Read more
  • Guru: Passing Parameters To Python

    August 5, 2019 Mike Larsen

    Python scripts offer great benefits to developers, whether used standalone or in conjunction with RPG programs. As I’ve been exploring Python and recently I had a need to execute a Python script from an RPG program. In addition to executing the script, I also wanted to pass it parameters.

    One of the benefits of passing parameters is to give us the ability to soft-code programs or scripts. Soft-coding makes programs more flexible and re-usable, and helps to reduce maintenance.

    To illustrate how to do this, I’ve coded a very simple RPG program and an even simpler Python script. I’ll start …

    Read more
  • Guru: How Thorough Was Your Last Test? RDi Code Coverage Can Tell You

    July 22, 2019 Susan Gantner

    When you’ve made changes to one or more programs, you test all the changes – right? And, of course, you also test all the rest of the code just to make sure you didn’t break anything else. Did you do that with your last set of changes? Did you test ALL the code? Enabling you to answer that last question is what RDi’s Code Coverage facility is all about.

    This is an introduction to Code Coverage — the basics of both why and how to use it. Before I go into how to run it, it may pique your interest …

    Read more

Previous Articles Next Articles

Content archive

  • The Four Hundred
  • Four Hundred Stuff
  • Four Hundred Guru

Recent Posts

  • EvolveWare Makes Progress With RPG Code Modernization Using AI
  • Why The IBM i Market Needed Another VTL Option
  • What Price Power?
  • Cloud Revenues Saved By The GenAI Boom
  • IBM i PTF Guide, Volume 27, Number 44
  • Power Systems Grows Nicely In Q3, Looks To Grow For All 2025, Too
  • Beta Of MCP Server Opens Up IBM i For Agentic AI
  • Sundry IBM i And Power Stack Announcements For Your Consideration
  • Please Take The IBM i Marketplace Survey
  • IBM i PTF Guide, Volume 27, Number 43

Subscribe

To get news from IT Jungle sent to your inbox every week, subscribe to our newsletter.

Pages

  • About Us
  • Contact
  • Contributors
  • Four Hundred Monitor
  • IBM i PTF Guide
  • Media Kit
  • Subscribe

Search

Copyright © 2025 IT Jungle