Posts Tagged: ‘IBM i’

IBM i V7R2 has been announced today.

28. April 2014 Posted by Ralf Petter

Today IBM has announced the newest Version V7R2 of the IBM i Operating system. The planned availabilty is May 2, 2014.

There are many improvements in this release like:
The announcement letter is available here to download, but the links to the knowledge center are still not working. I hope IBM can fix this soon. Update 16:41 Knowledge Center is now working.

First Informations about new features in IBM i V7R2

28. April 2014 Posted by Ralf Petter

IBM has updated the Technology Update Wiki with the first informations whats new and enhanced in IBM i V7R2. Some of the links in the wiki are still broken, but i am sure IBM will fix this in the next week.




So check out IBM Technology Wiki V7R2

Jon Paris explains how to use the new free format support in RPG TR7

22. April 2014 Posted by Ralf Petter

With Technology Refresh 7 IBM has enhanced the good old RPG with new free format syntax for file description and data structures. With this enhancements you can write a complete program without using column based statements. The documentation for this features is still a little bit weak, but fortunatly Jon Paris has posted two good tips on this topic.

Four Reasons RPG Geezers Should Care About The New Free-Form RPG

The Geezer's Guide to Free-Form RPG, Part 2: Data Structures and More

Limits of Db/2 in IBM i V7R1

16. April 2014 Posted by Ralf Petter

Yes our mighty IBM i Db2 can really handle big databases, but everything in our universe is limited. So if you need to know the exact limits of Db2 on the IBM i you can find them in the new IBM knowledge center.


IBM has announced Technology Refresh 8 for IBM i V7R1

8. April 2014 Posted by Ralf Petter

Today IBM has announced the TR8 for IBM i V7R1 to be available on June 6. 2014. You can find detailed descriptions about the new features on developerworks. 

I think we will see an announcement of the new Base Version V7R2 with many new functions at the end of April or in early may. So stay tuned for the latest news.


IBM i Application modernization

26. März 2014 Posted by Ralf Petter

Today the long awaited redbook for application modernization on the IBM i has been published as a Draft version. Whether you are a old school RPG Developer or you have already started to modernize your applications this is the redbook to get a high level overview what possibilities are available on the IBM i to reach your goal. All topics like new tooling, new languages and new Syntax of existing languages on the IBM i are discussed in this redbook. The redbook gives you only an overview. If you want to go in the depth there are many links in the redbook which will guide you to the details.


Improve SQL grouping performance with Db2 EVIs

19. März 2014 Posted by Ralf Petter

In many SQL queries the "GROUP BY" clause is used to aggregate some values. For example a manager wants to see sales for a specific year grouped by region. The SQL for this query looks like this:

SELECT REGION, SUM(AMOUNT) FROM INVOICES WHERE YEAR=2013 GROUP BY REGION

The Db2  optimizer implements the query with a table scan and a temporary hash table.
The runtime of the query is on our 4 Core box with SSDs and 64 GB main memory 620 ms, which is pretty slow for such a simple query. Fortunately to improve the performance we can create an EVI (Encoded Vector Index) with precalculated aggregate values in the symbol table. This is a new feature in V7R1. The Command to create this index is

CREATE ENCODED VECTOR INDEX INVOICESEVI ON INVOICES (YEAR  ASC, REGION ASC) INCLUDE(SUM(AMOUNT)) ;

After creation of the index the query optimizer decides to use the EVI and re implement the access plan with  an EVI Symbol Table Probe and a temporary hash table. This is much more efficient then the table scan before. For example while the table scans returns over 200.000 rows for which a Hash table has to be built the EVI Symbol Table Probe returns only 34 rows. The query with the EVI runs on our machine in under 10 ms. This is quite an improvement compared to the 620 ms without an EVI.
So if you use grouping in your query you should have a look at the new include aggregates functionality in EVI's in IBM i V7R1.

Reference:

Index grouping implementation in the IBM i Infocenter
Encoded vector indexes

Reorganize physical file member demystified

17. März 2014 Posted by Ralf Petter

The RGZPFM command of the "IBM i" operating system is a very powerful command to reorganize DB2 tables, but there are some myths and misunderstandings regarding the parameters of the command. So IBM has posted a new RedPaper from Tracy Schramm with a detailed explanation how Reorganize Physical File Member works.


New Whitepaper: DDS and SQL – The Winning Combination for DB2 for i

16. März 2014 Posted by Ralf Petter

If you are still using DDS and record level access in your "IBM i" applications you are missing most of the enhancements IBM has provided for "IBM i" since V5R1. While DDS and record level access are still supported and there are statements of directions that they will be supported in the future every "IBM i" Developer should really plan to migrate their applications from DDS to SQL.

This migration is really very easy to do because it is more an evolution than a revolution. You can access DDS DB2 tables with SQL and you can access SQL DB2 tables with record level access. So you can write new programs with SQL while older programs are still using record level access. You can even mix SQL and record level access in one program without problems.

There are Wizards in IBM i Navigator to retrieve SQL DDL (Data Definition Language) sources from your DDS tables. When you convert tables and indexes from DDS to SQL you will get improved performance, because the SQL tables and indexes have an optimized page size.

Kent Milligan and Dave Hendrickson have provided a white paper which shows the advantages of SQL over DDS in detail. I really recommend this white paper to every "IBM i" application developer.


Transfer object owner to a new profile during deletion of a user

27. August 2013 Posted by Ralf Petter

On IBM i every object has an owner. Normally the owner of an object is the creator of the object. When you want to delete an user with DLTUSRPRF which is still the owner of objects you will get a CPF2215 error that the deletion of the user is not allowed. You can view all objects an user owns with  "WRKOBJOWN USERPRF(username)". One possible solution for the CPF2215 is to change the owner of all objects in the WRKOBJOWN overview to another user.

But there is a much easier way to solve this problem. Add the parameter "OWNOBJOPT(*CHGOWN newowner)" to the DLTUSRPRF command and all owned objects will be transfered to the newowner automatically.

An example - the admin want to delete "usera" and want to transfer all objects to "userb":

DLTUSRPRF USRPRF(usera) OWNOBJOPT(*CHGOWN userb)

Some interesting readings for RPG Developer

19. August 2013 Posted by Ralf Petter

In V6R1 and V7R1 RPG has gotten some long awaited improvements in the handling of sub procedures. Be sure to read the following posts in IBMSystem Magazine to fully understand the new possibilities.

Modules, Subprocedures and Files

Major Changes in RPG File Handling

Data Storage Options in Subprocedures

Dumping Subroutines: Breaking Up Is Hard To Do, Or Is It?




Migrate a Twinax Console to a Lan Console on IBM i.

6. Juli 2013 Posted by Ralf Petter

I do not know if i was the last on earth who was still using a Twinax Console to operate an i/5, but today i have migrated  succesfully our twinax console to a LAN Console. I had to do the following steps for the migration:

Locate the LAN Console Port on your system. For our Modell 520 it is the T5 port. If you are unsure check the Power Systems info center for informations how to locate the Lan Console port. Check with wrkhdwrsc *cmn  and wrkcfgsts *lin that there is no active line description configured for this ethernet port. The Lan Console port cannot be shared with other Ethernet lines on your system.

Then sign in to the System Service Tools with strsst



Choose Option 8 "work with service tools user IDs and Devices"


Choose option 4 "Configure service tools LAN adapter"


Change all values on the "select console" so that the match the screenshot and the press "Enter" to continue.

Press F11 to go to configure your new service LAN Adapter.


Fill in a static IP Address for the LAN Adapter and the default gateway and subnet mask matching your LAN configuration. As an Hostname for service tools you can use every symbolic name you want for example "SYSCONSOLE1". This IP address habe to be unused and must not match any IP Address of other servers in your network. Then press "F7" to store your configuration and go back with multiple "F3 presses to the start screen of the SST.

Normally you have to make an IPL to activate your new console configuration. But if you are not able to IPL your machine you can try the following steps to activate the LAN Console without an IPL.

Start SST with STRSST if you are not already in the SST Screen.


Select Option 1 "Start a service tool"


Select Option 4 "Display/Alter/Dump"


Select Option 1 "Display/Alter storage"


 Select Option 2 "Licensed Internal Code (LIC) data"


 Press Page Down to go to the second menu of "Select Lic Data".


Select Otion 14 "Advanced Analysis" and page down in the List of the Macros till you see the "OPCONSOLE" macro.


Select the "OPCONSOLE" macro with "1"


Fill in "RESTART" as the option and press enter to run the macro. After that you can leave the SST.

Now you can try your new LAN console on your local workstation. Start the "Operations Console" from the i Access start menu.
When everything is configured correctly the operations console will discover the console port automatically and you can connect to the console of your system.

After the connection has been established you have to sign in with a SST user. Be aware that the username and password is case sensitive.