» » RPG Tnt: 101 Dynamite Tips 'n' Techniques with RPG IV

RPG Tnt: 101 Dynamite Tips 'n' Techniques with RPG IV ebook

by Bob Cozzi

Goodreads helps you keep track of books you want to read.

Goodreads helps you keep track of books you want to read. Start by marking RPG Tnt: 101 Dynamite Tips 'n' Techniques with RPG IV as Want to Read: Want to Read savin. ant to Read.

RPG TnT: 101 Dynamite Tips 'n Techniques with RPG IV. Diane Riley.

Bob Cozzi has been an RPG programmer since 1978 and is the author of Introduction for RPG IV and The . 4. Tip 14. Not bad, but Cozzi should have mentioned that you can also use it to force your RPG to open a specific member of the declared file. See Tip 43. 5. Tip 16.

He lives in North Aurora, Illinois.

Читайте RPG TnT (автор: Bob Cozzi) бесплатно 30 дней в течении пробного периода. Читайте книги и аудиокниги без ограничений в веб-браузере или на устройствах iPad, iPhone и Android.

You're getting the VIP treatment! With the purchase of Kobo VIP Membership, you're getting 10% off and 2x Kobo Super Points on eligible items. Your Shopping Cart is empty. There are currently no items in your Shopping Cart.

by Bob Cozzi (Author).

Items related to RPG Tnt: 101 Dynamite Tips 'n' Techniques with. Bob Cozzi's resume is truly impressive: nearly 20 years of AS/400, iSeries, and System i5 experience; more than a decade of RPG IV development; and nearly 30 years of RPG programming. Bob Cozzi RPG Tnt: 101 Dynamite Tips 'n' Techniques with RPG IV. ISBN 13: 9781583041215. He has confronted, evaluated, and circumvented nearly every roadblock RPG programmers can experience.

dynamite techniques tips tnt with.

RPG TnT 101 Dynamite Tips 'n Techniques with RPG IV. dynamite techniques tips tnt with.

Bob Cozzi's resume is truly impressive: nearly 20 years of AS/400, iSeries, and System i5 experience; more than a decade of RPG IV development; and nearly 30 years of RPG programming. He has confronted, evaluated, and circumvented nearly every roadblock RPG programmers can experience. He not only blasts through RPG IV's shortcomings, but he also creates extensions that provide features that are simply not available in standard RPG. With 101 Dynamite Tips 'n' Techniques, Cozzi provides the solutions to dozens of techincal dilemmas, insights into resources formerly available only to a select few, and exposes RPG IV extensions that use his vast knowledge of System i5 MI instructions -- all with easy-to-use wrappers that even the most inexperienced RPG IV programmer can implement. Lift the code right out of the book and into your applications!
Unfortunately, once I got this book I already knew most of the stuff he was mentioning. It would be valuable for someone that is just starting out with RPGLE though.
As others have commented, the price of the book is slightly high. Nevertheless, the tips that are provided are great. I would recommend reading through the complete book as there is something for any RPG programmer/analyst.
This book really tells you how to do amazing things with RPG IV ! For me, that have been using the RPG language family since System/36, this book give me knowledge about the kind of things only available in other languages before RPG IV. Almost all of these tips are really new and incredibly useful to my day to day work.

Great book !
Excellent book !!!!!!!
This book is way too expensive for the tips that it has. I sort of skimmed through the book and I don't think it worth the cost.
This book is a mixture of good, bad and a combination of both. The good things are useful, usable routines or pieces of advice; the bad are solutions offered in the desperate hope that someday the problem they fix will appear; the combinations are good ideas explained badly, and good routines mis-applied. There are a few tips about which I just don't have anything to say.

Examples of good:
1. Tip 11. If there is anyone out there who actually still doesn't know about
*all, this tip is badly needed. I must confess to not knowing about *allx.
2. Tips 12 and 13. Everyone should already know and use these, but they don't.
I just recently had to repair a program written by someone who doesn't know
about 13.
3. Tip 17. Good point if you prefer free-form comments.
4. Tip 27. Although I loathe the new Date and Time field types, this one could
be very useful. Hint: positions 254 through 263 of the Program Status Data
Structure already contain User Profile. Also, call a CL that retrieves the
System Date (by returning concatenated System Values) and returns it in
whichever of yyyymmdd, mmddyyyy, etc., you want, based on a flag you pass.
5. Tip 30. Nice, if you want to use this stuff.
7. Tip 32. Very useful, and you can concatenate with it. See Tip 88.
8. Tip 43. I like this one. A lot. It's decades overdue. See Tip 14.
9. Tip 49. I haven't found a use for this one yet, but I like the idea.
10. Tip 61. Important for beginners. Everyone else should already know this.
11. Tip 62. See Tip 61. The real issue, of course, is to put pressure on IBM
to restore Addtrc.
12. Tip 63. See Tip 62.
13. Tip 64. See Tip 49.
14. Tip 65. See Tip 64.
15. Tip 78. I like this one, and I almost had a use for it once. So might
someone else.
16. Tip 79. Nice idea. I think revoking everyone's authority to the save file
(which is the default when issuing crtsavf anyway) would work just as well.
17. Tip 85. Cool, but I just can't imagine ever using this.
18. Tip 88. Useful and many years overdue, and you can concatenate with it.
See Tip 32.
19. Tip 92. I can't imagine ever needing this, but I like it.
20. Tip 94. Very important for beginners.
21. Tip 95. Needed, but unnecessarily cumbersome. Copy to a work area,
translate to uppercase, then scan and replace. See Tips 100, 29 and 53.
22. Tip 96. Useful. Be wary of Activation Groups anyway.
23. Tip 97. As an old-timer, I prefer carefully-applied goto's, but when free
format prevents their use, "leave" within a for loop seems to be a good second
24. Tip 100. This one makes Tips 29, 53 and 95 unnecessary.

Examples of combinations:
1. Tips 1 - 5. Call me crazy, but I just can't make myself care about this stuff.
2. Tip 6. OK, but who uses C functions?
3. Tip 7. The Program Status Data Structure provides lots of critically-
important information when things go wrong (as does the File Information
Data Structure), so why does Cozzi feel the need to re-define it using
Overlay? It almost seems as though he is just showing off his knowledge
of the Overlay keyword.
4. Tip 14. Not bad, but Cozzi should have mentioned that you can also use it
to force your RPG to open a specific member of the declared file. See Tip 43.
5. Tip 16. Just too clever. Use an array.
6. Tip 26. Nice idea, but what would anyone use it for in RPG?
7. Tip 29. Nice, but you can get the same result by using work fields
translated into upper or lower case. See Tips 100, 53 and 95.
6. Tip 31. The problem with this one is that it doesn't tell you what ABOUT
the date is invalid, so you can't tell whoever sent it to you. Write one
program that does this, and make everyone call it.
8. Tips 39 through 42. I'm sure someone, somewhere, someday will have some use
for this.
9. Tip 50. OK, but why use an indicator instead of a well-named flag, unless
you MUST connect it to something like a Display File?
10. Tip 52. OK, but wouldn't it be less trouble to build a work file in Qtemp?
11. Tip 53. Nice, but wasn't it Cozzi himself who first pointed out that Bit 1
is the only difference between upper-and lower-case? After you have verified
that what you are dealing with is a letter of the alphabet (they are NOT all
consecutive in EBCDIC), to change uppercase to lowercase, set Bit 1 off;
to do the reverse, set it on. Also, see Tips 29, 53 and 100.
12. Tip 54. Too clever for his own good.
13. Tip 55. Sounds good in theory, but does it do what really needs to be done?
14. Tips 58 and 59. Great if it works.
15. Tip 68. Or you could simply ignore the Date Data Type, since 8-digit dates
have been working just fine since 11:59 p.m. on December 31, 1999, when you
frantically converted to them from 6-digit dates.
16. Tip 69. Of course, you could call QCMDEXC with an indicator, and check the
Program Status Data Structure, the way you've been doing since the day the /38
was invented.
17. Tip 70. I think I like this one; I'm just not sure.
18. Tip 71. I think I like this one; I just can't imagine using it.
19. Tip 72. Fine, but there are Translation Tables that do this.
20. Tip 74. Good idea, but why would anyone use this in an RPG program?
21. Tip 75. See Tip 74.
22. Tip 77. Good idea, but far too clumsy. Write to a program-described file
instead, or a file consisting of only one huge character variable. Use
different members to distinguish jobs if necessary.
23. Tip 91. Nice, but that's what FORTRAN is for.
24. Tip 93. I should mention this one twice: first in the Good area, because,
even though Cozzi doesn't stress it anywhere NEAR enough, he does indicate
that the %trimr function is absolutely ineffectual, and therefore completely
worthless, unless you specify evalr when using it; and once in the Bad area,
because this routine is more complicated than necessary. Most RPG shops
already have centering routines that are easier to understand (especially
for beginners!) than this one.
25. Tip 99. OK, but simpler approaches are to pass parameters, and to use data
areas and files.
26. Tip 101. See Tip 6.

Examples of bad:
2. Tip 20. Has Cozzi really never heard of the Dlyjob command?
3. Tip 23. These functions do NOT work unless whatever the argument is is
ALREADY perfectly valid, so when would you ever use such a thing? Write --
and frequently call -- a program that right-justifies "numeric" character
data, compresses out punctuation and then flags or removes Decimal Data Error.
3. Tip 24. Now that the plus sign can FINALLY be used to concatenate strings,
when would anyone ever use this?
4. Tip 28. See Tip 6.
5. Tips 33 - 37. Who would ever have a need for such a thing?
6. Tip 38. I'm sure this is nice, but I know Cozzi has heard of QCMDEXC.
7. Tip 45. When you need to pass another program a flag that tells it how to
process the data you're sending it, that is a use for this one, but why would
you ever not just carefully code the subprocedure so it can never do anything
it shouldn't?
8. Tip 46. Isn't a varying constant an oxymoron?
9. Tips 47 and 48. Why create parameters you aren't going to pass?
10. Tip 51. See Tips 33 - 37.
11. Tips 56 and 57. One word: cvtdat. Also, use substringing and
concatenation. And if all else fails, revert to multiplying by 10,000.01,
100.0001 and, for eight-digit dates, 10,000.0001.
12. Tip 60. Anyone who doesn't know that numeric data types are converted to
packed to make arithmetic faster deserves whatever they get.
13. Tip 66. ENTIRELY too complicated, and see Tip 23.
14. Tip 67. Cumbersome and complicated. When would anyone ever need such a
15. Tip 73. Did someone not tell Cozzi that Qtemp vanishes all by itself as soon
as the job ends?
16. Tip 76. See Tip 67.
17. Tip 80. Duplicate variable names are NEVER good programming practice. Ever.
18. Tips 81 - 84. Confusing. Why add complexity?
19. Tip 86. Does Option 11 of Wrkjob (wrkjob option(*pgmstk)) suddenly no
longer work?
20. Tip 87. Convenient, but multiple points of exit are just not good
programming practice.
21. Tip 89. See Tips 47 and 48.
22. Tip 90. Far too cumbersome. Use the following instead:
cpytostmf ('/qsys.lib/libname.lib/filename.file/mbrname.mbr') +
('/directory01/directory02/mbrname') +
stmfopt(*replace) stmfccsid(00819)
If you're worried, you can delete it first:
del ('/directory01/directory02/mbrname')
23. Tip 98. For goodness sake, get acquainted with Addtrc! You will forever
curse IBM for having taken it away!
A couple of the other reviews mention using this book as a reference or skimming through it -- I would recommend reading from cover to cover, even if the tip is covering a topic that may not necessarily apply to you or your shop. Buried in these tips are other tips and techniques that can truly change how you approach some coding practices.

I personally was a steadfast fixed-formatter before reading this book. By the end my attitudes had changed completely and I was eager to take advantage of all the more modern advances in the language, many of which I was introduced to through this book.

It will not teach you to program, and may not even make you a better programmer, but it will definitely open your eyes to many aspects of RPG you had not explored before.

One way to judge the quality of a technical book: how many times it has been "lost". I have purchased this book 3 or 4 times now :)
I started out on the Sys38 and then went to the AS400 in 1989. Cozzi's book have always been on either my reference shelf or my wishlist. Cozzi has always provided leading edge information on RPGxxx in a digestible format. It's not for pure beginners but it is an invaluable resource for those of us that are still trying to pry out that last bit of functionality of this wonderful box we call the AS400.
RPG Tnt: 101 Dynamite Tips 'n' Techniques with RPG IV ebook
Bob Cozzi
Programming Languages
EPUB size:
1315 kb
FB2 size:
1649 kb
DJVU size:
1784 kb
29th Street Press; 1st edition (May 1, 2007)
304 pages
Other formats:
mbr azw doc lrf
© 2018-2020 Copyrights
All rights reserved. | Privacy Policy | DMCA | Contacts