Provide versioning and rollback capabilities to your source code with the resolution of individual code modifications.
By Tom Snyder
Programmers in any language have supported multiple versions of source code during development, the simplest case being that you can keep a copy of the current production code while you work on a new version that contains your current development changes. But what if you wanted to document each change and have the ability to selectively reset any changes while supporting multiple developers working on the same source code? Git can help with this.
Learn how to use commitment control in your RPG programs to ensure a complete transaction and how to roll back the changes when unable to complete.
I'm usually talking about powerful IBM i resources that can do great things with minimal work. Commands such as those need to be treated with respect and tested well to ensure that you'll get the expected results. In this article, I'll be taking a step back to talk about some safety measures that you could take to protect the integrity of your data by using commitment control within your code.
Create useful date-centric service programs with embedded SQL.
Welcome to 2012! All of our year-end processes are complete, and it's the beginning of a new year with a clean slate. 2011 was a very clean year date-wise because it ended on a Saturday. Typically, there is always special handling with the last week of the year for one reason or the other, which makes working with data a prevalent topic. For this article, I wanted to share a few handy little SQL functions that I've put into service programs to extend the existing RPG date resources. And this is all done with very minimal code in a reliable way that is highly reusable.
Make compiling easier for service programs with the use of binding directories.
With the end of the year comes time to close out my series of articles on service programs. In previous articles, I discussed how to create a service program, followed by discussing the benefits and cautions of using the binding language with your service programs. In this article, I'll discuss how to create binding directories and why you would want to use them.
Find out how to support multiple signatures and what to be aware of when changing service programs.
I initially intended on just doing a three-part series that worked its way toward binding directories, but I feel as though I need to cover more on the binding language before I can move on. So this follow-up article will discuss support for multiple signatures and things that you should be cautious of when using the binding language.
Do you know how to recompile your service programs without having to recompile all programs using the service program?
I have to admit that the binding language was a late discovery for me, and I've struggled for quite awhile working around it. But I've found the binding language to solve the problem of having to recompile your service programs without having to recompile all the programs that are using it. Without the binding language, service programs are very similar to modules due to the need to recompile the programs every time they change. This article will show you how to overcome this problem with the use of the binding language.
Did you know you can create service programs from commonly used procedures?
I am a big advocate of encapsulation and modular programming to build solid code from reusable components. One of the capabilities that ILE gives us to promote these programming ideals is the service program. In this article, I'll walk through the steps of taking a commonly used procedure and putting it into a service program to be easily shared with other programs.
Produce better code and exchange knowledge with code reviews.
One of the most typical obstacles with the adoption of modern programming techniques in RPG shops is the fact that everyone is at a different level of knowledge in different areas. All programmers have their areas of work that they find important, and they may not always be in the same genre. With code reviews, you give all of the people with different flavors of programming styles the opportunity to share their knowledge with the others on the staff.