NickLitten's blog

Copy an IBM i File to a CSV comma separated file

Ever since the IBM i system was a young lad, its been able to happily talk to just about any other operating system out there - Windows, Linux, Apple, AIX and so many more. However, one of the things that has remained the same through the evolution of system (from AS400 years, thru iSeries years upto our current IBM i) is the layout of the file system on our machine. IBM i has its own database (previously known as DB2 or uDB) and it stores files in a simple format, breaking down each file into records (SQL:ROWS) and fields (SQL:COLUMNS).

Copying those files to other systems is super easy using CSV file conversion, courtesy of the IBM i command CPYTOIMPF (Copy to Import File)


CSV File conversion starts with a native IBM i file that might look like this:

Sending email from IBM i embedding data using SQL

Have you ever wanted to extract some data out of an IBMi/AS400 file using SQL and then email that data to someone as an Excel Spreadsheet?

Now you can… all from one IBMi command without having to write any CL code to do it.

Projex4i: DSTDTA command now handles SQL STRINGS for selecting data

send data from as400 to any pc using email as a spreadsheet for free

I added this new function to the PROJEX4i - Distribute Data command last night – so it can now take a bite of selected data using SQL and send it as a TXT, CSV, XML or PDF as EMAIL.

Huge time saver for me and has been on my wish-list for ages.


IBM i laughs at the bleeding heart

News of the moment is the deadly sounding HEARTBLEED SECURITY FLAWas400 iseries ibm i is safe from heart bleed virus

The flaw, dubbed "Heartbleed", could reveal anything which is currently being processed by a web server – including our sensitive secure information being used inside the site.  Heartbleed's technical name is 'the CVE-2014-0160 exploit' which exposes vulnerabilities in the popular OpenSSL server software potentially allowing the memory of SSL/TLS encrypted web servers to be compromised. The bug essentially gives the bad guys the ability to read encrypted information such as usernames, passwords, credit card numbers and any other sensitive data.  The bug exists in a piece of open source software called OpenSSL, which is meant to securely encrypt communications between a user's computer and a web server. But security researchers have no way to prove whether or not the flaw, which has existed since at least March 2012, has been exploited.

Yoga with Jodie

I spent this evening rejuvenating an old website I made for an even older friend and Yoga instructor extraordinaire - Jodie Fouweather.

yoga with jodie fouweather

I originally setup a basic website for her back in 2007 and discovered that its been quietly sitting there, doing it's job for all these years. The website was basic and functional but needed a little love, so it was time for me to burn an evening in the hotel and do a quick rebuild using Drupal 7, Fresh Theme, some cribbed images from around the web and quick bunch of SEO checks, UI improvements and overall a quick spit and polish. I hope your pleased with the result Jodie!  xoxo

Yoga Classes in Weston-Super-Mare and North Somerset


Green Screen to Web Application in 5 minutes (aka how the AS400 got on the World Wide Web with IBM i)

Twenty years ago...

I was typing on a dumb terminal, connected to a great big beige computer called IBM AS/400 with a thick grey Twinax cable. Screens were green on black, text only -- or sometimes orange on black if you were posh. The internet was this thing we used to send emails (if you knew anyone with an email account) and mainly used Bulletin Board Systems to have conversations at dial up speeds.

Ten years ago...

I was typing on a PC, connected to a big black computer called an IBM iSeries using ethernet. Laptops were hightech, big and heavy with 60 minute battery lives. The internet was this mysterious thing, with even more mysterious HTML websites, that most of us RPG programmers didn't really associate with our green screen world.

My voicemail greeting

So, I've recently been getting a lot of junk voicemails and in an effort to inconvenience these callers as much as it inconveniences me. It's time for a long winded and time consuming voice mail greeting. I extended the BEEEP at the end so that it keep on going for the full two minutes before they can leave a message.


Hello, you've reached my voicemail.

I tend not to use voicemail much anymore, who does? If you really want to get hold of me your best bet would be drop me a quick text message or email. But, if you are one of the many annoying telesales, marketing or spambots that like to leave me messages - perhaps this will help answer any questions:

No, I dont want any new credits cards.

No, I am not interested in getting paid for reviewing hotels.

No, I do not want to go on a cruise.

No, I don't care if I have won a free prize.

No, I am not "Amy" the woman you are looking for who has some unpaid bills.

No, I don't want a new car (well actually I do, but not from you).

How to display multiple google maps in html

Working on the new website for Profound Logic today, its going live in the next two weeks so this is the final sprint to debug and tidy up some small issues. One of these issues was to display a Google Map widget for each of the companies three offices. This would have been super easy using a CMS like Drupal but this is to be added to a custom HTML5 website. Even so, "Sounds pretty straightforward" I thought and volunteered   ;)

tips for programmers*sigh* After an hour of reading radically different google maps tutorials, trying (and failing) to get the maps to display, I was starting to mutter swear words. But then YAY! after a strong coffee, and an afternoon doughnut I was able to figure out the gremlins and see the maps in all their glory.

It's easy to upgrade AS400 RPG/400 to modern, web-enabled IBM i RPG4... honest!

RPG Modernization made simple

or a tale of taking old crusty gray haired legacy RPG and making it modern rich and vibrant -- or is that over playing it too much? ;)

The more I play with Profound/UI the more I like it...

(virtually) unchanged RPG code, auto-generated DDS for HTML version of DSPF and a recompile and *boom* web enabled RPG applications... Especially cool, because going forward if we need to make a change to the RPG program then its as simple as making the change to the one version of the code and then (1) compiling it over the old DDS/DSPF into the 'green screen' library and then (2) compiling the same RPG source code over the new Profound RichDDS/DSPF into the web library and *KABOOM* -- two versions of the program, one running perfectly in green screen and one running perfectly in the web, but both including our new code changes.

Like it!

Telly: The Worst Week of My Life

Only one week to go before the marriage of Howard and Mel which quickly escalates into the week from Hell. The series follows the bumbling Howard as he lurches from one appallingly embarrassing disaster to the next in the week leading up to his wedding.

A fairly typical modern British sitcom - but based around a stuck up, middle class, fussy couple how love each other but just get themselves ina pickle. Funny, amusing and romantic. The missus loved it and it made me smile consistently. Soft Anglocomedy but, something anyone who likes British RomCom/Sitcom will enjoy. :)

When is an AS400 not an AS400

I was reading an interesting discussion on Linkedin last night. The core of the conversation goes like this

"I found one of my old customers from the 1990s and my software is still running on it - bloody good the iSeries"

"Excuse me, but that's not an iSeries it a new IBM Power System running the IBM i operating system"

"I call it an AS400"

​'Huh? But it's not an AS400 -- thats even older -- its IBM i on Power"

"you can call it whatever you like but I'm calling it an AS400"


Telly: PLEBS chuckling at Romans

I found this by accident and it's yet another Telly series which reminds by just how funny and irreverent English TV can be.

Plebs is based in Rome at the time of the Roman British invasion - an easy play on the Latin word 'plebeians' -- and if you don't know what that word means that you need to jog back to school and give your history teacher a swift kick up the arse. Plebs is filled with stupid British comedy, occasional naughty words and frequent innuendo and sexual comments it just about sums up British comedy at its best. It's The Inbetweeners meets Ancient Rome:

PLEBS follows three desperate young men from the suburbs as they try to get laid, hold down jobs and climb the social ladder in the big city - a city that happens to be Ancient Rome. The series stars Tom Rosenthal (Friday Night Dinner), Joel Fry (Trollied) and Ryan Sampson (After You've Gone) as the three young men - Marcus, Stylax and their lazy slave with an attitude problem, Grumio.

IBM i Modernization

Modernize old AS400 applications on IBM i and set them free!

If you have ever read one of my mumbling blogs about programming on the IBM i operating system, you will know that I have long been a fan of modernizing legacy RPG source code. The benefits of taking ten or twenty year old applications and rinsing them through a modernizer are more obvious than the simple (a) the code looks modern (b) the programs run faster and (c) its just good fun to resurrect old programs in a modern style.

Profound Logic Software offers a solution on modernization which does the lot - it modernizes your IBMi application software, upgrades RPG code to utilize the latest techniques IBM have to offer, as well as simplifying the whole web-enabling process. End result is an old green-screen application magically transformed into vibrant web 2.0 displays via any web browser. It's magic.

Jordan Antanoff, business development manager at Profound has written this excellent blog article that sums up the approach:

Telly: PSYCHOVILLE - double u tee eff?

Psychoville is very reminiscent of A League of Gentlemen - not the movie, but its dark and twisted telly cousin. I love it.

Psychoville is weird, humorous, silly, serious and still scary but funny and sometimes disturbing.... confused enough? I sure was. The Clown is pure genius. The Silent Dancer is somehow super scarey. The blind old man, serial killers, porno dwarves and crazy nurse make this satirical comedy series something very special indeed. Pour yourself a stiff glass of WTF and enjoy it.

Some profound changes to RPG

RPG is a vibrant modern programming language and its getting moderner.

is moderner a verb? it should be :)

If you are an established RPG programmer, its just too easy to use the same old tried and tested techniques when coding. Doing things the good old fashioned way (or perhaps you call it the tried and tested way) generally means no SURPRISE delivering program code to your customers, or Bosses... but... are you taking advantage of all the terrific new opcodes and programming techniques that have been flooding into our IBM i RPG arena in recently?

How do we know whats out there?

There's always the "good ole" RPG Redbook -- Who Knew You Could Do That with RPG IV? A Sorcerer's Guide to System Access and More -- which is probably still the best place to start learning about the more advanced part of RPG programing. This redbook  has a bit of everything. Written for OS400 V4R2 (before the IBM i rebranding?) I think so a fair bit has changed. But it was partly written to show previous generation RPG developers how and why they should make the switch to RPG IV. Even years later, it has some neat programming techniques that still strike me as modern and just plain cool.

Telly: English TV still smacks American tellys bum

I emigrated over here to the New World (as my redcoat forebears used to call it) five years ago. During this time I've been lucky enough to travel all over America, driven coast to coast twice, lived in various States and met many wonderful people. The weather is fantastic and life is good... I wouldn't consider moving back to Blighty. Nope. Life over here is better but, I do miss British Telly. :(

American TV just doesn't have the... oh I don't know what to call it... the 'je ne sais quoi'

I enjoy watching Sci-fi, sit-coms and any other gripping drama that makes me say "just one more episode before bedtime"

So, in a mission to record what's good out there I've decided to blog about series as I watch them, and as I find them. For other ex-colonials, I will include magnet links to the Torrents.

Nuff said.

For an ever growing list of decent/funny/gripping/weird TV series (or seasons as my colonial friends call them) just click here


ibm i technology releases are like vintage sports cars?

I always wanted a TR6 or even its pointy cheese wedge cousin the TR7... but this blog isnt about that. It's about the much more geekish IBM Technology Releases for IBM i operating system..

Steve Will, IBM i Chief Architect, talks about some of the highlights of #IBMi TR6 and TR7 that were delivered in 2013:

If you dont see the embedded youtube video then watch it here

The technology refreshes are key components for the IBM i operating system that are released in between major operating system changes. TR6 came out in mid-2013 and TR7 arrived for Christmas... these enhancements included lots of goodies ranging from

RPG4 is finally set free

Since the introduction of the latest Service Pack for IBM i V7 -- cunningly entitled 'Technology Release 7.1 -- RPG programmers can now finally eschew the old fixed column coding and roam around a modern free format language. Lovely jubbly.

Long overdue and in the words of Jon Paris (RPG Guru and all round Nice Geezer):

1) I hate F-specs.

I can never remember which letter goes in which column, and of course the more I use embedded SQL, the less frequently I have to code them. I almost always end up either cloning or using the prompter in RDI (about the only time I ever use it) and even then I'll get at least one thing wrong.

I also find it frustrating to have to specify every little detail. For example, if I say it is a printer file, then of course the thing is output. How many input-capable printers have you ever encountered?

How to change Remitplus Server in Client Config

I've spent this week implementing a Cheque (yes -- that is the correct and very English way of spelling 'check') scanning solution for a client.

The basic idea is -- company receives lots of money payments by cheque, these are scanned, sorted and deposited direct into the companies bank account and the deposit information is then automatically uploaded to their back office accounting system (in this case an in house RPG IBM i application). It's been a fun project with some neat automated features which are now working nicely in production. *phew*

The clever scanning and talking to the bank bit is handled by a cheque scanner and some rather nifty software to control it, called RemitPlus by Profitstars:

RemitPlus® Remittance/LockboxTM

Electronic check, remittance, and lockbox processing solution.