× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: Re: Because it's there... (Was: Printer Overflow and BIF's)
  • From: Jim Langston <jimlangston@xxxxxxxxxxxxxxxx>
  • Date: Wed, 02 May 2001 12:05:22 -0700
  • Organization: Pacer International

It was in production.  I write a program, it's in my test library. I test it,
get it to work.  Call the user.  Here, this is how you run this program, run 
it for me and test it please.  It works?  Thanks, it goes into production,
source code moved from my test library into production library, it's recompiled
and tested again.

Obviously, that is not what happened here, and those were some of the questions
I asked the manager of the programmer who changed the program.
Didn't she test it first?
Why was she changing it anyway?
Why didn't she call me before she changed it?
Perhaps I can talk to her and explain how to use D specs and RPG IV.

It turns out she was just supposed to call this program from the A/R system to
view and invoice (which were never part of the original design specs).  The 
program
wasn't expecting an input parameter so she stuck one in.  Without telling 
anyone.
I found out about it when her manager called me and asked why my program was 
broken.

Her manager is my peer, but I asked him to have his programmers call me before 
they
make any changes to my programs, thank you.

Then I went and did the change in 5 minutes and did all the testing.

I know that before I make a change to a program I call the programmer who 
worked on
it last or who is responsible for it and tell them what I am planning on doing, 
and
is this source code the production version, and is it okay if I do this?

I'm just glad that I'm not the only one this would of irritated.

As far as security, I'm always the one bringing it up in discussions.

But, hey, everyone has *ALLOBJ but they have LMTCPB(*YES) so that's fine right? 
LOL.
I'm still trying to get them away from *ALLOBJ.

Regards,

Jim Langston

Me transmitte sursum, Caledoni!

alan shore wrote:
> 
> You ask "Would this bug anyone else, or was this just a bee in my bonnet?"
> MOST DEFINITELY!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1
> Too many questions/statements come to mind.
> These changes were obviously made AFTER you had placed this for 
>USER/ACCEPTANCE testing (or even worse - it was in PRODUCTION). Again 
>obviously where was the security that would forbid these changes to be made 
>within those regions. (Auditors would have a field day with this)
> Even if this was not the case, obviously these changes WERE NOT tested.
> Where was this change request made?
> By whom?
> Why?
> Do you see where I'm going with this?
> A change was made to a program, but when a problem occurs, the person making 
>the last change is NOT the one contatced.
> Can anyone say AUDIT TRAIL, change management etc.
> 
> >>> Jim Langston <jimlangston@conexfreight.com> 05/02/01 12:11PM >>>
> I know what you mean, Jim.
> 
> I use new techniques in all my programs because I can, then I have to
> decide if they make for better programming or not.  I guess, to paraphrase
> an explorer who climbed Everest and I forget his name, because they're there.
> 
> I wrote a program lately that this list helped me on, dealing with subfiles,
> all in RPG IV (was no need to do any linking in this one) with subprocedures
> instead of subroutines, all variables declared in the D specs, the only MOVE
> statements having to do with validating dates, etc...
> 
> Then I got a call that my program was "broken".  Giving a pointer error when
> it started.  No way.  I run the program, pointer error.  Run it in debug, it's
> now expecting entry parms which I didn't code.  I find out that some other
> program in another site wanted to call this program with the invoice number to
> display.  So I looked at the changes she had made.
> 
> D              DS
> D inv#                1     8
> D inv2                2     8
> 
> C     *entry   plist
> C              parm          #inv#      8
> 
> C              move  #inv#   inv#
> C              movel inv2#   DFInv
> 
> Blech!  You take my nice RPG IV program and stick this RPG II/PRG III junk 
>into
> it?  So I changed it.
> 
> D ParmInv#                 8A
> 
> C     *Entry  PList
> C             Parm        ParmInv#
> 
> C             Eval        DFInv# = %SubSt(ParmInv#: 2: 7)
> 
> then I fix it and the calling CL and, surprise surprise, I test it!
> 
> Everything worked and everyone was happy, especially me knowing my code was
> "clean" again.
> 
> Would this bug anyone else, or was this just a bee in my bonnet?
> 
> Regards,
> 
> Jim Langston
> 
> Me transmitte sursum, Caledoni!
> 
> > "Sneddon, Jim" wrote:
> >
> > Peter,
> >
> > I'm sorry - I forgot that little detail.
> >
> > It is an externally described printer file.
> >
> > It works (of course) by using an OFLIND(*IN55) and then watching for *in55. 
> I was not able to get it to work by using the %error method and it won't let 
>you specify something like OFIND(%ERROR)...  I did not think of setting an 
>OFLIND and then watching for %error but I doubt it will work - I'll give it a 
>try just for grins.
> >
> > So it works with the old method and everyone is happy (as happy as 
>end-users will ever be)  but I was just curious if I could take advantage of 
>some new method using the BIF's instead.
> >
> > Thanks
> >
> > >Printer Overflow and BIF's
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.