× 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: rpg400-l-digest V2 #86
  • From: Bob Clark <bclark@xxxxxxxxxxxx>
  • Date: Fri, 31 Mar 2000 13:20:08 -0600
  • Organization: US Safety

ultiple I/Ps are possible.  Just do a CFGTCP and select option 1, or, you can 
use the ADDTCPIFC
command.  We are currently using multiple I/Ps on both of our boxes.

rpg400-l-digest wrote:

> rpg400-l-digest         Friday, March 31 2000         Volume 02 : Number 086
>
> Topics in this issue . . .
> :
> Re: Restrict jobs CPU usage
> Multiple IP's on an AS/400
> Re: Multiple IP's on an AS/400
> Re: graphical display question
> RE: Restrict jobs CPU usage
> COMMIT(pick one) in the SQL precompiler
> RE: Multiple IP's on an AS/400
> CALLB vs.CALLP
> Embedded SQL
> LDA Question
> RE: CALLB vs.CALLP
> Re: CALLB vs.CALLP
> Re: LDA Question
> Re: CALLB vs.CALLP
> RE: CALLB vs.CALLP
> Re: Embedded SQL
> RE: LDA Question
> Re: LDA Question
> RE: CALLB vs.CALLP
> Binder language: RTVBNDSRC alphabetically
> :
>
> ----------------------------------------------------------------------
>
> Date: Thu, 30 Mar 2000 17:27:43 -0500
> From: Rob Berendt <rob@dekko.com>
> Subject: Re: Restrict jobs CPU usage
>
> Uh gee, our main production box rarely even PEAKS at 40%.  However
> we will be doubling the processors from 4 to 8 next weekend.  Currently:
> % CPU used . . . . . . . :        2.3
> It's a management commitment issue.
>
> songbird@sumter.net on 03/30/2000 05:09:20 PM
> Please respond to RPG400-L@midrange.com@Internet
> To:     RPG400-L@midrange.com@Internet
> cc:
> Fax to:
> Subject:        Re: Restrict jobs CPU usage
>
> We usually try and keep CPU usage at 70-80%. We have a lot of interactive
> jobs running at the same time (taking phone orders from customers).
> Of course if you have a heavy conversion program or batch job that wants to
> hog CPU, you can create a separate pool for jobs that have to run
> immediately. Change priority on any low priority batch job that seems to be
> piggy. Use WRKACTJOB to see who the offending members are.
> Do a WRKSYSSTS and check out % of ASP (Aux Storage Pool) that is being used.
> Our CPU may look maxed out, but if the % of ASP is acceptable, then you
> don't have to worry.
> Look at the Wait-Inel (wait to ineligible) column on the WRKSYSSTS screen
> again. If the pools are below 10%, all is well. Otherwise, adjust the MAX
> Act column for the pool in question until it comes down to under 2%.
> Check out the red book "AS/400 Performance Management " for exact numbers
> for these settings and a better explanation.
> ..
> C.A.
>
> - ----- Original Message -----
> From: John Hall <jhall@hillmgt.com>
> To: <RPG400-L@midrange.com>
> Sent: Thursday, March 30, 2000 2:31 PM
> Subject: Re: Restrict jobs CPU usage
>
> > This seems to be a common misconception among the midrange community.  I
> > have run into programmers who describe programs as "dogs" solely because
> > they use 100% of the CPU time.  This has nothing to do with whether the
> > program is good or not.  It merely reflects that the system is well
> > tuned to performing this task and that the Job does not have to wait for
> > resources to become available.  The amount of resources that a program
> > uses to accomplish a task (CPU, Disk IO etc.) is an entirely different
> > matter.
> > In the Vax/VMS environment that I used to program in the goal was to get
> > as close to 100% CPU Utilization as possible.  Of course at the same
> > time you wanted the minimum amount of CPU time to be used.
> >
> > John Hall
> > Home Sales Co.
> >
> > simon.thompson@distserv.boc.com wrote:
> > >
> > > Anton,
> > >
> > > Your analogy might be useful. Performance figures are sent weekly to one
> > > of our clients (who actually pay for the boxes and our time). The powers
> > > that be, for some reason, think that showing near 100% is embarassing
> for
> > > us. Personally I would have thought that it showed that we are using
> > > their machines quite well.
> > >
> > > Simon
> > +---
> > | 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
> > +---
>
> +---
> | 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
> +---
>
> ------------------------------
>
> Date: Thu, 30 Mar 2000 15:00:51 -0800 (PST)
> From: a b <eagle_291@yahoo.com>
> Subject: Multiple IP's on an AS/400
>
> Is it possible to have multiple IP's on a single
> AS/400 that has only one ethernet card?  Or would I be
> required to have multiple cards for multiple
> addresses?
>
> Any help would greatly be appreciated
>
> __________________________________________________
> Do You Yahoo!?
> Talk to your friends online with Yahoo! Messenger.
> http://im.yahoo.com
>
> ------------------------------
>
> Date: Thu, 30 Mar 2000 16:30:31 -0800
> From: Jim Langston <jlangston@conexfreight.com>
> Subject: Re: Multiple IP's on an AS/400
>
> Yes, it is very possible.  Remember, even in a "standard" setting, where
> you only have one IP, you set up 2. One for your IP address, and one for
> 127.0.0.1 which is localhost.
>
> I have 4 set up on mine right now.  One for local host, one for our private
> IP address (192.168.1.x), one for the private ip address for the company
> we merged with (172.22.28.x), and one for the public internet.
>
> You just have to be aware of what this does to your routes.
>
> If you have 2 usable IP addresses (not counting 127.0.0.1) and you have
> a default route (*DFTROUTE) set up in your TCP/IP routes, both will
> try to find the IPs on the same route.  If you are not concerned with routes,
> then there is no need to worry about it.
>
> You can have more than one route, though.  I have 5 routes, 4 of them are
> for specific IP addresses for the internet allowed to communicate with my
> AS/400, the other is the #DFTROUTE set up for the merged companies
> router.  For our local IP address (192.168.1.x) we don't need to route it
> since it is on the same wire.
>
> Everythign works fine.  All on one card.
>
> Regards,
>
> JIm Langston
>
> a b wrote:
>
> > Is it possible to have multiple IP's on a single
> > AS/400 that has only one ethernet card?  Or would I be
> > required to have multiple cards for multiple
> > addresses?
> >
> > Any help would greatly be appreciated
> >
> > __________________________________________________
> > Do You Yahoo!?
> > Talk to your friends online with Yahoo! Messenger.
> > http://im.yahoo.com
> > +---
> > | 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
> > +---
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 01:52:26 GMT
> From: boothm@earth.Goddard.edu
> Subject: Re: graphical display question
>
> Visual Age RPG could display those for you quite easily, in a variety of
> fonts, sizes, and colors.
>
> It'll make a client/server for you in Java, or for Windows 95/98/2000.  I
> hear people look askance at the product, but it's here right now and it
> works.  RPG programmers can make it work, if they can get it installed.
>
> _______________________
> Booth Martin
> boothm@earth.goddard.edu
> http://www.spy.net/~booth
> _______________________
>
> "Mark A. Manske" <mmanske@minter-weisman.com>
> Sent by: owner-rpg400-l@midrange.com
> 03/28/2000 05:25 PM
> Please respond to RPG400-L
>
>
>         To:     "RPG400-L (E-mail)" <RPG400-L@midrange.com>
>         cc:
>         Subject:        graphical display question
>
> We have client access, telnet, rhumba, and mochasoft, I want to use GDDM
> to
> display on the RPG/ILE screen a large font letter, maybe some other stuff,
> GDDM keeps telling me that the display device must be a 5292 mod 2.
> Is there a way around this, or is there a better solution..  we are on
> V4R4
>
> Here is what we will be attempting..
>
> PC with a scanner pass-thru to keyboard, hooked on to the as/400, screen
> would
> input the upc bar code, display in a large font to the user the "bin" to
> put
> the
> product in. blah, blah blah..../ pc hooked up through ethernet.
>
> hardware wise is the way we are going, "could" just out put character to
> "look"
> like the bin, but that is pretty cheesy..
>
> My other software keeps re-configuring my virtual devices to 3179-2 or
> 3477-FC;
> the as/400 will not keep my dev at a 5292-2 as I created it.
>
> Any other ideas;  that would not scare my boss (java, vrpg, c++, VB, xml,
> html, or net.data)
>
> TIA
>
> Mark A. Manske
> [mailto:mmanske@minter-weisman.com]
> Sr. Project Lead
> Minter-Weisman
>
> +---
> | 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
> +---
>
>
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 9:10:25 +0100
> From: simon.thompson@distserv.boc.com
> Subject: RE: Restrict jobs CPU usage
>
> By using OPNQRYF to 'prepare' the required data and losing a lot of file
> I/O the job now takes approx 40-50 secs instead of 1800-2000. I passed
> these figures on to my bosses and Anton's gardening analogy, and
> everybody seems happy.
>
> Regards
> Simon
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 8:39:53 -0500
> From: Rob Berendt <rob@dekko.com>
> Subject: COMMIT(pick one) in the SQL precompiler
>
> Is there a way to control this command parameter via an HSPEC?
> Forgive me but I'm just too flipping lazy today to RTFM.  As a
> general rule most people change this from *CHG to *NONE.  Well,
> I actually used commitment control and someone used *NONE.  Will
> the precompiler flag this as an error?  Ohhh noooo.  However the
> COMMIT statement will then eat all of your CPU even though it has
> an error.  What is really cool is that mine is an FTP exit point so
> therefore you get three copies of this Pac-man on your system.
> Let me guess, having an hspec wouldn't make any sense because it's
> not an RPG issue, it's the SQL precompiler.  And we all know what
> a superb piece of code that is.
>
> (Hey, my Notes spell checker corrected Pacman to Pac-man!)
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 09:03:50 -0600
> From: "Mark A. Manske" <mmanske@minter-weisman.com>
> Subject: RE: Multiple IP's on an AS/400
>
> It depends on what you are looking to accomplish;
> here I have one Ethernet card (192.168.20.20),
> but I pointed another IP address(192.168.20.2) to the
> same line description so I could serve the web
> from the AS/400 and have a different IP address
> to point the http server to.
>
> Now I can get to a home page on the AS/400
> by that IP address or the server name.
> This has "really" blown the mind of our
> NT people, along with being able to
> move spooled reports around "after"
> they have been run....
>
> No better business machine solution
> in the world....
>
> Other than that, I am not sure,
> the other "real" bare metal techies
> on this list could answer the "under-the-covers" issues
> that you "could" face.
>
> - -----Original Message-----
> From: owner-rpg400-l@midrange.com [mailto:owner-rpg400-l@midrange.com]On
> Behalf Of a b
> Sent: Thursday, March 30, 2000 5:01 PM
> To: RPG400-L@midrange.com
> Subject: Multiple IP's on an AS/400
>
> Is it possible to have multiple IP's on a single
> AS/400 that has only one ethernet card?  Or would I be
> required to have multiple cards for multiple
> addresses?
>
> Any help would greatly be appreciated
>
> __________________________________________________
> Do You Yahoo!?
> Talk to your friends online with Yahoo! Messenger.
> http://im.yahoo.com
> +---
> | 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
> +---
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 10:10:54 -0500
> From: Mark Walter <mwalter@netrax.net>
> Subject: CALLB vs.CALLP
>
> Is there an advantage of CALLP over CALLB when not returning a value?
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 09:53:59 -0500
> From: "Tom Tufankjian" <Tom_Tufankjian@hbltd.com>
> Subject: Embedded SQL
>
> I am using embedded SQL with a serial cursor using the declare, open,
> fetch, close commands.  Is there a way to change the WHERE statement
> <dynamically> in the rpg program?
>
> For example, we have a report where the user can select a season or all
> seasons.  If they choose a season then the WHERE clause includes the test
> for a matching season.  If they choose all seasons there is no need for the
> season test at all.
> Here's an example:
>
> Select one season:
>    Declare c1 cursor for
>      Select * from mstfil Where season = :season_in     and company =
> :company_in
>           Order by style
>
> - --or--  all seasons
>    Declare c2 cursor for
>      Select * from mstfil Where   company = :company_in
>
> I tried using an IF statement but you have to repeat the entire select
> statement and the cursor name must be different.  I'd like to keep the
> cursor name the same and just change the WHERE clause on the fly.
>
> Hope this is clearer than our company coffee.
>
> Thanks!
> Tom T
>           Order by style
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 09:38:29 -0600
> From: "Joel Harvell" <joelh@twitchellcorp.com>
> Subject: LDA Question
>
> Is there a there a web page or a good book that describes what is in the LDA
> and what positions they are in?
>
> Joel Harvell
> Programmer Analyst
> Twitchell Corporation
> 4031 Ross Clark Circle NW
> Dothan, Alabama 36303
> (334) 792-0002 x 1304
> (334) 673-4121 Fax
> joelh@twitchellcorp.com
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 08:29:57 -0700
> From: Scott Mildenberger <Smildenber@Washcorp.com>
> Subject: RE: CALLB vs.CALLP
>
> One big advantage it that the type of the parameters is validated at
> compile-time instead of run-time!
>
> > -----Original Message-----
> > From: Mark Walter [SMTP:mwalter@netrax.net]
> > Sent: Friday, March 31, 2000 8:11 AM
> > To:   List RPG400 (E-mail)
> > Subject:      CALLB vs.CALLP
> >
> > Is there an advantage of CALLP over CALLB when not returning a value?
> >
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 11:00:13 -0500
> From: Rob Berendt <rob@dekko.com>
> Subject: Re: CALLB vs.CALLP
>
> Prototyped calls take a little more setup.  However, they do give
> you some advantages.  One is consistancy.  Two is the ability to do
> calcs and stuff.
>
> For example
> << source member STDCOPY in QRPGLESRC in library MYCOPY >>
> D qcmdexc         PR                  EXTPGM('QCMDEXC')
> D  cmd                       32702A   CONST OPTIONS(*VARSIZE)
> D  cmdlen                       15P 5 CONST
> << end of above source >>
>
> The CONST will allow you to work with mismatched parameters by automatically 
>remapping them.
> For example
> << source member PGM in QRPGLESRC in library MYLIB >>
>  /COPY MYCOPY/QRPGLESRC,STDCOPY
> D mycmd           C                   'OVRDBF INPUT TOFILE(MYLIB/FTPSCRPT)'
> D CmdLen          S              3P 0 inz(35)
> C                   callp     qcmdexc(mycmd:CmdLen)
>  * Notice that CmdLen is defined as 3,0 but it still works.
>  * We could skip the garbage of determining the size for CmdLen and
>  * simply do the following:
> C                   callp     qcmdexc(mycmd:%len(%trim(mycmd)))
>  * Or even:
> C                   callp     qcmdexc('OVRDBF INPUT TOFILE(MYLIB/FTPSCRPT)':
> C                                     %len(%trim('OVRDBF INPUT 
>TOFILE(MYLIB/FTPSCRPT)'
> C                                     )))
>  * We could also nest functions.  On this example I am leaving out
>  * the prototypes.
>  * DayOfW determines a numeric day of the week
>  * DayName takes this number and returns a name for this number.
> C                   eval      Text=DayName(DayOfW(datefield))
>
> mwalter@netrax.net on 03/31/2000 10:40:42 AM
> Please respond to RPG400-L@midrange.com@Internet
> To:     rpg400-l@midrange.com@Internet
> cc:
> Fax to:
> Subject:        CALLB vs.CALLP
>
> Is there an advantage of CALLP over CALLB when not returning a value?
>
> +---
> | 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
> +---
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 11:01:47 -0500
> From: Rob Berendt <rob@dekko.com>
> Subject: Re: LDA Question
>
> Normally the LDA is under your control.  However if your are
> using some package, such as MAPICS, then they may reserve certain
> areas.  In that case check the documentation that comes with that
> package.
>
> joelh@twitchellcorp.com on 03/31/2000 10:53:47 AM
> Please respond to RPG400-L@midrange.com@Internet
> To:     RPG400-L@midrange.com@Internet
> cc:
> Fax to:
> Subject:        LDA Question
>
> Is there a there a web page or a good book that describes what is in the LDA
> and what positions they are in?
>
> Joel Harvell
> Programmer Analyst
> Twitchell Corporation
> 4031 Ross Clark Circle NW
> Dothan, Alabama 36303
> (334) 792-0002 x 1304
> (334) 673-4121 Fax
> joelh@twitchellcorp.com
>
> +---
> | 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
> +---
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 18:15:31 +0200
> From: =?iso-8859-1?Q?Anton_Gombk=F6t=F6?= <Gombkoetoe@ASsoft.com>
> Subject: Re: CALLB vs.CALLP
>
> >Is there an advantage of CALLP over CALLB when not returning a value?
>
> Mark,
>
> please do not misunderstand the following, it's nothing against you! Just a
> (hopefully) good advice!
>
> It seems to me as if you still haven't read the RPG manual or the new RPG
> Redbook SG24-5402. Couldn't find it? Follow this link:
> http://www.redbooks.ibm.com/abstracts/sg245402.html
>
> Go on! Load the redbook and read it! It's really worth it! And you'll know
> afterwards not only what the CALLx-opcodes do.
>
> I do not think that this topic is answer- and learnable by questions like
> this. I'm sure there will be some sort of a discussion, but you'll profit
> from it only when you understand what this is all about.
>
> 0.02 Euro
> Anton Gombkötö
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 10:41:17 -0600
> From: "Stone, Brad V (TC)" <bvstone@taylorcorp.com>
> Subject: RE: CALLB vs.CALLP
>
> I never understood this example, and I've seen it from a lot of people.  If
> you're making a subprocedure, prototype it so you only send the command.
> Not the length.  You can define the length as %size(Command) in the
> Subprocedure.
>
> Then, you only need to do..
>
> CALLP   #QcmdExc('CLRPFM FILE1')
>
> Much easier.  And only 2 more seconds of setup.
>
> Other times you will definatly want to do this when making wrappers for
> APIs.  Sometimes they have a lot of parms you don't need to pass.  The
> command length on QCMDEXC is one of them.
>
> Brad
>
> > -----Original Message-----
> > From: Rob Berendt [mailto:rob@dekko.com]
> > Sent: Friday, March 31, 2000 10:00 AM
> > To: RPG400-L@midrange.com
> > Subject: Re: CALLB vs.CALLP
> >
> >
> > Prototyped calls take a little more setup.  However, they do give
> > you some advantages.  One is consistancy.  Two is the ability to do
> > calcs and stuff.
> >
> > For example
> > << source member STDCOPY in QRPGLESRC in library MYCOPY >>
> > D qcmdexc         PR                  EXTPGM('QCMDEXC')
> > D  cmd                       32702A   CONST OPTIONS(*VARSIZE)
> > D  cmdlen                       15P 5 CONST
> > << end of above source >>
> >
> > The CONST will allow you to work with mismatched parameters
> > by automatically remapping them.
> > For example
> > << source member PGM in QRPGLESRC in library MYLIB >>
> >  /COPY MYCOPY/QRPGLESRC,STDCOPY
> >
> > D mycmd           C                   'OVRDBF INPUT
> > TOFILE(MYLIB/FTPSCRPT)'
> > D CmdLen          S              3P 0 inz(35)
> >
> > C                   callp     qcmdexc(mycmd:CmdLen)
> >
> >  * Notice that CmdLen is defined as 3,0 but it still works.
> >  * We could skip the garbage of determining the size for CmdLen and
> >  * simply do the following:
> > C                   callp     qcmdexc(mycmd:%len(%trim(mycmd)))
> >  * Or even:
> > C                   callp     qcmdexc('OVRDBF INPUT
> > TOFILE(MYLIB/FTPSCRPT)':
> > C                                     %len(%trim('OVRDBF
> > INPUT TOFILE(MYLIB/FTPSCRPT)'
> > C                                     )))
> >  * We could also nest functions.  On this example I am leaving out
> >  * the prototypes.
> >  * DayOfW determines a numeric day of the week
> >  * DayName takes this number and returns a name for this number.
> > C                   eval      Text=DayName(DayOfW(datefield))
> >
> >
> >
> >
> >
> > mwalter@netrax.net on 03/31/2000 10:40:42 AM
> > Please respond to RPG400-L@midrange.com@Internet
> > To:   rpg400-l@midrange.com@Internet
> > cc:
> > Fax to:
> > Subject:      CALLB vs.CALLP
> >
> > Is there an advantage of CALLP over CALLB when not returning a value?
> > +---
> > | 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
> > +---
> >
> >
> > +---
> > | 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
> > +---
> >
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 09:40:40 -0700
> From: "John Taylor" <john.taylor@telusplanet.net>
> Subject: Re: Embedded SQL
>
> Tom,
>
> How about using the BETWEEN clause? For example
>
> Select one season:
>     Declare c1 cursor for
>       Select * from mstfil Where season  Between :season_low and :season_hi
>         and company = :company_in
>            Order by style
>
> When the user is selecting a season, set both host variables to the same
> season. When they want all seasons, set season_low to *LOVAL, and season_hi
> to *HIVAL.
>
> Regards,
>
> John Taylor
> Canada
>
> - ----- Original Message -----
> From: "Tom Tufankjian" <Tom_Tufankjian@hbltd.com>
> To: <RPG400-L@midrange.com>
> Sent: Friday, March 31, 2000 07:53
> Subject: Embedded SQL
>
> > I am using embedded SQL with a serial cursor using the declare, open,
> > fetch, close commands.  Is there a way to change the WHERE statement
> > <dynamically> in the rpg program?
> >
> > For example, we have a report where the user can select a season or all
> > seasons.  If they choose a season then the WHERE clause includes the test
> > for a matching season.  If they choose all seasons there is no need for
> the
> > season test at all.
> > Here's an example:
> >
> > Select one season:
> >    Declare c1 cursor for
> >      Select * from mstfil Where season = :season_in     and company =
> > :company_in
> >           Order by style
> >
> > --or--  all seasons
> >    Declare c2 cursor for
> >      Select * from mstfil Where   company = :company_in
> >
> >
> >
> > I tried using an IF statement but you have to repeat the entire select
> > statement and the cursor name must be different.  I'd like to keep the
> > cursor name the same and just change the WHERE clause on the fly.
> >
> > Hope this is clearer than our company coffee.
> >
> > Thanks!
> > Tom T
> >           Order by style
> >
> >
> > +---
> > | 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
> > +---
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 10:54:28 -0600
> From: "Leisk, Andrew" <aleisk@frpaper.com>
> Subject: RE: LDA Question
>
> This message is in MIME format. Since your mail reader does not understand
> this format, some or all of this message may not be legible.
>
> - ------_=_NextPart_001_01BF9B31.C745C860
> Content-Type: text/plain
>
> The LDA contains anything that YOU want to put into it.  It is your
> playground to put stuff into and take stuff out of as you see fit.
>
> > ----------
> > From:         Joel Harvell[SMTP:joelh@twitchellcorp.com]
> > Reply To:     RPG400-L@midrange.com
> > Sent:         Friday, March 31, 2000 9:38 AM
> > To:   'RPG400-L
> > Subject:      LDA Question
> >
> > Is there a there a web page or a good book that describes what is in the
> > LDA
> > and what positions they are in?
> >
> > Joel Harvell
> > Programmer Analyst
> > Twitchell Corporation
> > 4031 Ross Clark Circle NW
> > Dothan, Alabama 36303
> > (334) 792-0002 x 1304
> > (334) 673-4121 Fax
> > joelh@twitchellcorp.com
> >
> > +---
> > | 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
> > +---
> >
>
> - ------_=_NextPart_001_01BF9B31.C745C860
> Content-Type: text/html
> Content-Transfer-Encoding: quoted-printable
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
> <HTML>
> <HEAD>
> <META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
> charset=3Dus-ascii">
> <META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
> 5.5.2650.12">
> <TITLE>RE: LDA Question</TITLE>
> </HEAD>
> <BODY>
>
> <P><FONT COLOR=3D"#0000FF" SIZE=3D2 FACE=3D"Arial">The LDA contains =
> anything that YOU want to put into it.&nbsp; It is your playground to =
> put stuff into and take stuff out of as you see fit.&nbsp;&nbsp; =
> </FONT></P>
> <UL>
> <P><FONT SIZE=3D1 FACE=3D"MS Sans Serif">----------</FONT>
> <BR><B><FONT SIZE=3D1 FACE=3D"MS Sans Serif">From:</FONT></B> &nbsp; =
> <FONT SIZE=3D1 FACE=3D"MS Sans Serif">Joel =
> Harvell[SMTP:joelh@twitchellcorp.com]</FONT>
> <BR><B><FONT SIZE=3D1 FACE=3D"MS Sans Serif">Reply To:</FONT></B> =
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=3D1 FACE=3D"MS Sans =
> Serif">RPG400-L@midrange.com</FONT>
> <BR><B><FONT SIZE=3D1 FACE=3D"MS Sans Serif">Sent:</FONT></B> &nbsp; =
> <FONT SIZE=3D1 FACE=3D"MS Sans Serif">Friday, March 31, 2000 9:38 =
> AM</FONT>
> <BR><B><FONT SIZE=3D1 FACE=3D"MS Sans Serif">To:</FONT></B> =
> &nbsp;&nbsp;&nbsp; <FONT SIZE=3D1 FACE=3D"MS Sans =
> Serif">'RPG400-L</FONT>
> <BR><B><FONT SIZE=3D1 FACE=3D"MS Sans Serif">Subject:</FONT></B> =
> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=3D1 FACE=3D"MS Sans =
> Serif">LDA Question</FONT>
> </P>
>
> <P><FONT SIZE=3D2 FACE=3D"Arial">Is there a there a web page or a good =
> book that describes what is in the LDA</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">and what positions they are =
> in?</FONT>
> </P>
>
> <P><FONT SIZE=3D2 FACE=3D"Arial">Joel Harvell</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">Programmer Analyst</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">Twitchell Corporation</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">4031 Ross Clark Circle NW</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">Dothan, Alabama 36303</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">(334) 792-0002 x 1304</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">(334) 673-4121 Fax</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">joelh@twitchellcorp.com</FONT>
> </P>
>
> <P><FONT SIZE=3D2 FACE=3D"Arial">+---</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">| This is the RPG/400 Mailing =
> List!</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">| To submit a new message, send your =
> mail to RPG400-L@midrange.com.</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">| To subscribe to this list send =
> email to RPG400-L-SUB@midrange.com.</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">| To unsubscribe from this list send =
> email to RPG400-L-UNSUB@midrange.com.</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">| Questions should be directed to the =
> list owner/operator: david@midrange.com</FONT>
> <BR><FONT SIZE=3D2 FACE=3D"Arial">+---</FONT>
> </P>
> </UL>
> </BODY>
> </HTML>
> - ------_=_NextPart_001_01BF9B31.C745C860--
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 11:05:55 -0600 (CST)
> From: David Gibbs <david@midrange.com>
> Subject: Re: LDA Question
>
> > Is there a there a web page or a good book that describes what is in the LDA
> > and what positions they are in?
>
> The contents of the LDA is whatever you (or your application) puts
> there.
>
> david
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 12:45:44 -0500
> From: Rob Berendt <rob@dekko.com>
> Subject: RE: CALLB vs.CALLP
>
> Good counterpoint.  I wanted to get the guy walking before he ran.
>
> bvstone@taylorcorp.com on 03/31/2000 12:22:46 PM
> Please respond to RPG400-L@midrange.com@Internet
> To:     RPG400-L@midrange.com@Internet
> cc:
> Fax to:
> Subject:        RE: CALLB vs.CALLP
>
> I never understood this example, and I've seen it from a lot of people.  If
> you're making a subprocedure, prototype it so you only send the command.
> Not the length.  You can define the length as %size(Command) in the
> Subprocedure.
>
> Then, you only need to do..
>
> CALLP   #QcmdExc('CLRPFM FILE1')
>
> Much easier.  And only 2 more seconds of setup.
>
> Other times you will definatly want to do this when making wrappers for
> APIs.  Sometimes they have a lot of parms you don't need to pass.  The
> command length on QCMDEXC is one of them.
>
> Brad
>
> > -----Original Message-----
> > From: Rob Berendt [mailto:rob@dekko.com]
> > Sent: Friday, March 31, 2000 10:00 AM
> > To: RPG400-L@midrange.com
> > Subject: Re: CALLB vs.CALLP
> >
> >
> > Prototyped calls take a little more setup.  However, they do give
> > you some advantages.  One is consistancy.  Two is the ability to do
> > calcs and stuff.
> >
> > For example
> > << source member STDCOPY in QRPGLESRC in library MYCOPY >>
> > D qcmdexc         PR                  EXTPGM('QCMDEXC')
> > D  cmd                       32702A   CONST OPTIONS(*VARSIZE)
> > D  cmdlen                       15P 5 CONST
> > << end of above source >>
> >
> > The CONST will allow you to work with mismatched parameters
> > by automatically remapping them.
> > For example
> > << source member PGM in QRPGLESRC in library MYLIB >>
> >  /COPY MYCOPY/QRPGLESRC,STDCOPY
> >
> > D mycmd           C                   'OVRDBF INPUT
> > TOFILE(MYLIB/FTPSCRPT)'
> > D CmdLen          S              3P 0 inz(35)
> >
> > C                   callp     qcmdexc(mycmd:CmdLen)
> >
> >  * Notice that CmdLen is defined as 3,0 but it still works.
> >  * We could skip the garbage of determining the size for CmdLen and
> >  * simply do the following:
> > C                   callp     qcmdexc(mycmd:%len(%trim(mycmd)))
> >  * Or even:
> > C                   callp     qcmdexc('OVRDBF INPUT
> > TOFILE(MYLIB/FTPSCRPT)':
> > C                                     %len(%trim('OVRDBF
> > INPUT TOFILE(MYLIB/FTPSCRPT)'
> > C                                     )))
> >  * We could also nest functions.  On this example I am leaving out
> >  * the prototypes.
> >  * DayOfW determines a numeric day of the week
> >  * DayName takes this number and returns a name for this number.
> > C                   eval      Text=DayName(DayOfW(datefield))
> >
> >
> >
> >
> >
> > mwalter@netrax.net on 03/31/2000 10:40:42 AM
> > Please respond to RPG400-L@midrange.com@Internet
> > To:   rpg400-l@midrange.com@Internet
> > cc:
> > Fax to:
> > Subject:      CALLB vs.CALLP
> >
> > Is there an advantage of CALLP over CALLB when not returning a value?
> > +---
> > | 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
> > +---
> >
> >
> > +---
> > | 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
> > +---
> >
>
> +---
> | 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
> +---
>
> ------------------------------
>
> Date: Fri, 31 Mar 2000 12:58:52 -0500
> From: Rob Berendt <rob@dekko.com>
> Subject: Binder language: RTVBNDSRC alphabetically
>
> I need to build binder language for my service program.  Reading
> the redbook I thought I'd try RTVBNDSRC.  However when I run that
> it retrieves them alphabetically.  I was under the impression that
> you want these in the order they appear in the service program.
> What gives?
> I will be adding some new subprocedures very shortly.
>
> ------------------------------
>
> End of rpg400-l-digest V2 #86
> *****************************
>
> +---
> | This is the RPG/400 Digest 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-DIGEST-SUB@midrange.com.
> | To unsubscribe from this list send email to 
>RPG400-L-DIGEST-UNSUB@midrange.com.
> | Questions should be directed to the list owner/operator: david@midrange.com
> +---

--
Bob Clark
Programmer/Analyst
U.S. Safety
8101 Lenexa Dr.
Lenexa Ks  66214
Phone: (800) 821-5218 ext. 274
Fax: (603) 761-6978


+---
| 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 ...


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.