SEU vs. RDi - what are the advantages?

  • Posted on: 5 August 2016
  • By: NickLitten
modern ibm rpg programmer with IBM RDi

In the 1980's and 1990'S the source code editor was a text based green screen tool (PDM/SEU) which is still in use at AHP today. This text based editor does not syntax check any of the new programming languages nor does it allow more than 20 lines of source code to be displayed at any time. In the late 1990's SEU was replaced by the new generation of Windows based program code editors. The early version of the code editor was the Websphere Developer Studio (WDSc) and was re-branded Rational Developer for IBM i (RDi) a few years later.

The short answer to "why use RDi" can be summarized as:

  • Improve developer productivity
  • Common development tools platform
  • Improve developers skills

Rational Developer for i is intended for IBM i application programmers or analysts who want to start using modern, more productive development tools. It is the industry standard alternative to the text-based user interface PDM/SEU toolset, providing easier ways to perform everyday tasks. In addition to all PDM functionality, the RSE also includes a number of enhancements that are not available in PDM/SEU:

User Approval Lists in Softlanding's Turnover Change Management tool

  • Posted on: 11 May 2016
  • By: NickLitten
Approval lists in change management

Softlanding Turnover Change Management tool works great and has a nice windows front end (based on Eclipse) and most of the functoins are east to find. For those green screen stalwarts out there - you can also access Turnover from the green screen 5250 comand line. Most functions are pretty easy to find but some like the pesky approval lists are a little more complicated to hunt down:


Click SYSTEM | Administration | Approval Lists and see:


We can also do these same functions using the basic green screen interface.


The TURNOVER menu looks like this:


Now you can select the LEVEL that you want to define an approval list for. You can enter a 17 to go direct to the approval list or you can do it the long way like this:

Setup IBM i user profiles in Softlanding's Turnover Change Management tool

  • Posted on: 11 May 2016
  • By: NickLitten
as400 iseries user change management

So, we have IBM i User profiles defined and these users now want to use TURNOVER - so what next? Luckily, defining a user is very simple just launch Turnover (in this blog I use the Windows version running on Windows10) and click the machine you want to administer.



click SYSTEM | Administation | Users and selected the group you want to work with:

If you select and existing user or add a new one you will see :

NOTE: Remember to add users to appropriate Approval Lists if necessary.


We can also do these same functions using the basic green screen interface.


The TURNOVER menu looks like this:

How do I setup compile *LIBL in RDi (Rational Developer for IBM i)

  • Posted on: 5 May 2016
  • By: NickLitten
rational developer for as400 iseries and modern IBMi systems

RDi is a great IDE for IBM i Programmers writing source code in RPG, RPGLE or CL. 

acronym alert -- (1) RDi is IBM's Rational Developer for IBM i and (2) IDE is Integrated Development Environment - just a poncy way of saying code editor!

When you first get into using RDi, you might ask a common: How do I setup the jobs library list, so that RDi can verify the source code while I'm typing it? Luckily it's simple to setup. I use two different techniques - 



If you look at the links in your connection to your IBM i System, you can see a link for Library List. Expand this and edit the your library list. #Simples



We can also use the command function, to call a program. If you have a simple CL program to manipulate the library list on my connection that sets my library list. Just click on Connection | Properties | subsystems | Initial command:


Tango Litten the crazy Boykin Spaniel

  • Posted on: 3 May 2016
  • By: NickLitten
english springer and boykin spaniel from south carolina

April 2016 see's the latest addition to the Litten Clan


Our fun but pesky pup Bailey has rached the age of majority and its time he had a playmante. After some soul searching and lots of craigslist searching I found his perfect buddy. Tango is a year old Boykin (boykins are slightly smaller than springers but with all the same energy, trickiness and effervessence for life). The little bugger has already fit into our active lifestyle and is a constant source of laughter and joy.

First night with the new family was the only night that the bed survived without being humped, bitten, licked and just puppy-bashed to pieces.

He's a whirling brown dervish. You just dont appreciate how hard it was to capture this split second of him sitting still enough to take a photo.

Tango is 1year old... many years of joy and doggy mayhem ahead of us.





I cant see the IFS Network Share - is my profile disabled?

  • Posted on: 2 May 2016
  • By: NickLitten
access the as400 network like an ibm i server

So, I have a love/hate relationship with IBM i's integrated File System

  • Does you keep getting asked for username and password when accessing a windows IFS share?
  • Are you confused why the share to your IBM I Server cannot be viewed in Windows Explorer?
  • Can you view the IFS from one user profile but not with another?
  • Are you swearing at IBM i Access saying things like "Client Access is M&$%^#F*&^%K!"?

For me, the answer to all three questions is frequently "Yes" but luckily, the solution to all three problems is most likely the same thing : my IBM i User profile password has been entered incorrectly and it's been disabled. Now this is where the confusion can set in. Remember, the IFS Network shares are handled by the NETSERVER which is running on your IBM i System. Rather confusingly this network share will allow you access to the IFS but if you repeatedly enter your password wrong it will disable the network share portion of your profile while leaving the rest of the profile enabled -- So, you can signon and off and it looks good but all the while you will find that your netserver part of the profile has been disabled.

How can I check if I've been disabled?

IBM i v7.3 is here and its pretty cool

  • Posted on: 21 April 2016
  • By: NickLitten
ibm as400 is my grandfather

You think you know IBM i? You havent met 7.3

IBM i 7.3 Announcement & Material

  • IBM(r) DB2(tm) for i Temporal Support, enabling clients to conduct accurate analysis of data within a specific historical time period
  • More advanced analytics capability driven by enhanced OLAP functionality, allowing clients to better forecast, define gaps and build new strategies for business
  • Security authority collection, a new addition that better secures critical business data
  • Plus, many more enhancements that increase efficiency and functionality

IBM i 7.3

Here are some links which might be helpful as you start to learn more about IBM i 7.3 and the promotional material surrounding it:

Set off all indicators in RPG program

  • Posted on: 30 March 2016
  • By: NickLitten
not this type of indicator you donut!

RPG INDICATORS are switches

Just like car indicators (or 'blinkers' as my American cousins call them) they can be switched *ON or *OFF in a program to indicate the state of a certain piece of logic. Using numeric indicators has been frowned upon for years, since the introduction of alphanumeric 'indicators' in programming code. After all, what makes more sense checking a value of *IN66 or checking a value of a field called ItemCodeValid?

Now saying that, older programs some times use numeric indicators extensively and this is just a neat way of turning off blocks of indicators:

// *IN is a standard RPGLE array for *IN(01) thru *in(99) - and it says turn off all from 01 to 99
%SubArr(*IN : 01 : 99) = *Off;

In older column based RPG (or RPG400) you could use the MOVEA (move array command) turn them all off

C     MOVEA *ALL:'0' *in01

Or specify a smaller block of indicators:

C     MOVEA '0000' *in80

would move *zeros to *in80, *in81, *in82, *in83


Lots of other techniques but I like the %subarr solution.


Using special characters is naughty - Java and IBMi might get upset!

  • Posted on: 28 March 2016
  • By: NickLitten
special characters nuff said
This morning I was tryuing to figure out why I was having code page problems with a file that had been emailed to me from a British IBM i Server. 

Im try to run (from a CLLE) this command


but i receive this error :

Premere INVIO per chiudere la sessione del terminale.
/QSYS.LIB/NAS_TMP.LIB/675SAVE.FILE : impossible to find file or directory

My JOB CCSID is 280 , i have also tried to change to 37 but i receive always error .. can some one help me to solve this problem

I hate code pages.

I mean I dont hate them, they are good and useful but damn they annoy me when I get them wrong  ;)

In this case the solution was straight forward. I copied this asnswer from another forum and then promptly closed the tab so cant post a credit link  #oops

The $$ in Qshell means "insert current process id here". That's why when you specified /QSYS.LIB/NAS_TMP.LIB/$$SAVE.FILE', it gave an error message referring to /QSYS.LIB/NAS_TMP.LIB/675SAVE.FILE, because 675 must've been your process id (pid) at the time you ran this, so it replaced $$ with 675. To avoid this, you must escape the $$ so that it does not have a special meaning. An easy way to do that is to put the path names in single quotes, for example: