|
Laura, I hope I don't beat the proverbial dead horse by jumping in late, but here's some of what I know and do.
The OVRDBF or any command to be called via QCMDEXC method:
- Define Prototype for ILE call to QCMDEXC. Of course if you don't want to get into ILE programming, you can just define the CMD fields and use the OPM CALL 'QCMDEXC' with PARM opcodes.
e.g.
d Qcmdexc pr Extpgm('QCMDEXC')
d Cmd Like(Qcmd) Options(*Varsize) Const
d CmdLen 15p 5 Const
d CmdOpt 3 Options(*NoPass) Const
d Qcmd s 3000
- Define the command or portions thereof as constants as needed.
e.g.
*------------------------------------------------------------------------*
* Named Constants
*------------------------------------------------------------------------*
d CrtDupP1 c 'CRTDUPOBJ OBJ('
d CrtDupP2 c ') FROMLIB('
d CrtDupP3 c ') OBJTYPE(*FILE) TOLIB(QTEMP)'
d OvrPrtf c 'OVRPRTF FILE(QSYSPRT) PAGESIZE(*N 1-
d 98) CPI(15) MAXRCDS(*NOMAX) OVRSCOPE-
d (*JOB) SHARE(*YES)'
- Assign command to variable
e.g. ILE
c Eval Qcmd = CrtDupP1 + 'RPSRVCWK1'
c + CrtDupP2 + %Trimr(DtaLib)
c + CrtDupP3
c CallP(e) Qcmdexc(Qcmd : %Len(%Trim(Qcmd)))
c If %Error
:
c EndIf
e.g. RPGLE (OPM)
c Eval QcmdLen = %Len(%Trim(Qcmd))
c Call(e) 'QCMDEXC'
c Parm Qcmd
c Parm QcmdLen
I hope this helps you dig in.....
As for the conversion of the source to RPGIV, I've encountered a minor problem when an external DS is defined and an array by the same name redefines a sub-field of the DS. I've had to rename the array field throughout the program and define it within the DS using the OVERLAY Keyword.
e.g.
RPG
E DXF 9 2
IPIQ000 E DSIQ000DS
DXF is defined in the external DS as;
FMT J .....I....................................PFromTo++DField
66956712 DXF
RPGLE
d Piq000 E Ds Extname(Iq000Ds)
d DxfA 2 Dim(9) Overlay(Piq000:6695)
Again, I hope this helps, and good luck!
Regards,
Jon A. Erickson
Sr. Programmer Analyst
800.COM Inc.
1516 NW Thurman St
Portland, OR 97209-2517
Direct: 503.944.3613
Fax: 503.944.3690
Web: http://800.com
-----Original Message-----
From: Cobb, Laura [mailto:LCobb@PapaGinos.com]
Sent: Friday, June 09, 2000 9:50 AM
To: 'RPG400-L@midrange.com'
Subject: RE: F Specs on an OVRDBF
Thanks Jim,
I will try it and get back to you on it.
Regards,
LAC
-----Original Message-----
From: Jim Langston [mailto:jlangston@conexfreight.com]
Sent: Friday, June 09, 2000 12:15 PM
To: RPG400-L@midrange.com
Subject: Re: F Specs on an OVRDBF
I would suggest you go to RPG IV as soon as humanly
possible. RPG IV is
so much easier and faster to code than RPG III. RPG IV is
actually legible too!
It does not take much at all to go from RPG III to RPG IV,
basically, you can
take an existing RPG III program and run CVTRPGSRC on it.
This will convert
the source from RPG III to RPG IV by spacing out everything
correctly and
changing the few things that need to be changed to get it to
compile. You then
should be able to, in most cases, compile the program and
run it without problems.
There are a few problems that may crop up, but they are far
and few between.
The first thing you will notice is that your program has
been expanded out a bit
width wise. Everything should look almost the same besides
that.
So, you can still code like you were used to in RPG III
without problems. But,
now you will be able to use all the neat stuff in RPG IV.
Like the Eval statement.
That is the biggest change in RPG IV that makes it so great,
IMO. Instead of
saying:
C MOVE SOMEVAR SOMEVAR2
C ADD SOMEVAR3 SOMEVAR2
You can say
C Eval Somevar2 = Somevar + Somevar3
Woah, that line is actually readable! Notice, you can also
use lower case letters
now. And, you are no longer limited to 8 characters for
variable names either!
You are still limited to 8 for your DDS though, bummer. But
program variables
can be as long as you want them.
Try it on a program or two. See what you think.
Regards,
Jim Langston
"Cobb, Laura" wrote:
> Jim,
> Thanks for putting my mind at ease (LOL). My forgiving
side will be okay if
> it happens, but my perfectionist side is bound and
determined not to let it.
> Thanks for the insight on netshare400. I didn't realize I
could peruse code
> as well as write at the sight. Hopefully some RPGIV. I
have only seen a
> few statements in IV but I like what I see. It seems a
bit more intuitive.
> Thanks for everything and be sure that I will be seeking
council in the
> future from you(all) on appropriate coding techniques.
>
> Well its back to work for me now,
>
> Regards,
>
> LAC
+---
| 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
+---
As an Amazon Associate we earn from qualifying purchases.
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.