|
Jon, So what happens here? https://www-01.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rzase/passing.htm If you want to pass a literal value to a called program, specify: CALL…BY CONTENT literal Charles On Wed, May 13, 2015 at 1:03 AM, Jon Paris <jon.paris@xxxxxxxxxxxxxx> wrote: > In RPG IV if the Proto says 10a Const (or Value for that matter) and you > pass ‘A’ then the compiler creates a 10a area, copies the data to it (i.e. > ‘A ‘) and then passes the temp. > > In COBOL I would have to define an X(10) field, move ‘A’ into it and then > pass that. > > > Jon Paris > > www.partner400.com > www.SystemiDeveloper.com > > On May 12, 2015, at 7:36 PM, Charles Wilt <charles.wilt@xxxxxxxxx> wrote: > > > Brad said something (that I interpreted) to that effect. > > > > How can you have a field the same length if you can pass a literal? > > > > If the parm is 10A, and you want to pass 'HI' to you have to pass 'HI > > '? > > > > I've never used COBOL on the i, but my first paid language was > COBOL...so I > > was curious enough to glance through than ILE COBOL manuals :) > > > > Charles > > > > > > > > > > On Tue, May 12, 2015 at 9:55 PM, Jon Paris <jon.paris@xxxxxxxxxxxxxx> > wrote: > > > >> Nobody said it did Charles. > >> > >> I just said it was harder in COBOL because the compiler doesn’t do any > >> work for you. Even BY CONTENT is not the same because the field passed > >> still has to have the correct length and data type. > >> > >> > >> Jon Paris > >> > >> www.partner400.com > >> www.SystemiDeveloper.com > >> > >> On May 12, 2015, at 5:07 PM, Charles Wilt <charles.wilt@xxxxxxxxx> > wrote: > >> > >>> Just for the archive...the link Brad provided to a post by Bruce has: > >>> > >>> "If your RPG procedure prototypes a parameter as VALUE you’ll use BY > >> VALUE > >>> in COBOL. If the prototype has CONST you’ll use BY CONTENT. And if > >> neither > >>> VALUE or CONST, use BY REFERENCE. GIVING identifies the procedures > RETURN > >>> value." > >>> > >>> The programmers guide shows: > >>> CALL…BY CONTENT identifier > >>> CALL…BY CONTENT literal > >>> > >>> I'm a little confused by this statement in the language reference > >> regarding > >>> BY CONTENT Phrase - "The number of characters in each parameter must be > >>> equal; however, the data descriptions need not be the same." > >>> > >>> Also seems that COBOL supports omittable parms also. > >>> > >>> So I don't see any indication that CONST on an RPG param prevents > calling > >>> by COBOL. > >>> > >>> Charles > >>> > >>> > >>> On Mon, May 11, 2015 at 11:58 PM, Bradley Stone <bvstone@xxxxxxxxx> > >> wrote: > >>> > >>>> I wondered the same thing, Henrick. > >>>> > >>>> I haven't done COBOL since the 90s but a search shows this answer from > >>>> Bruce Vinning: > >>>> > >>>> > >>>> > >> > http://itknowledgeexchange.techtarget.com/itanswers/calling-rpg-proc-from-cobol-ile/ > >>>> > >>>> I guess I just assumed that with ILE things worked as ILE... If CONST > >> ruins > >>>> that relationship maybe it should be more "publicized". :) I plan > too > >>>> look further into this issue that's for sure as it's the first I've > >> heard > >>>> of it. > >>>> > >>>> Brad > >>>> www.bvstools.com > >>>> > >>>> On Mon, May 11, 2015 at 2:03 AM, Henrik Rützou <hr@xxxxxxxxxxxx> > wrote: > >>>> > >>>>> I know nothing about COBOL interface to RPG service programs, what is > >>>>> the difference (besides the /copybook) ? > >>>>> > >>>>> On Mon, May 11, 2015 at 5:04 AM, Kelly Cookson < > KCookson@xxxxxxxxxxxx> > >>>>> wrote: > >>>>> > >>>>>> Thanks Jon. There are a number of tools for mobile development on > the > >>>> IBM > >>>>>> i. > >>>>>> > >>>>>> However, our shop has decided to develop mobile client interfaces > >> using > >>>>>> responsive web sites and hybrid apps (Cordorva/PhoneGap). This is > >>>> because > >>>>>> all of our current mobile developers are coming from a background of > >>>>>> Microsoft .NET web development. Our shop has spent years developing > >>>>>> websites that connect to the IBM i using web services written in > .NET > >>>> and > >>>>>> using the .NET Data Provider. > >>>>>> > >>>>>> For our IBM i COBOL developers (including myself) to become web and > >>>>> mobile > >>>>>> developers, we will have to use HTML5, CSS3, JavaScript, AJAX, JSON > >> and > >>>>>> Cordova/PhoneGap to develop client interfaces. I was hoping to use > >>>>> Node.JS > >>>>>> on the IBM i to give our COBOL developers a path to web services > >>>> without > >>>>>> having to learn .NET. Node.JS isn't going to work for us at this > time. > >>>>> But > >>>>>> we can: (a) use our shop's standard technologies to develop web and > >>>>> mobile > >>>>>> client interfaces, and (b) hook up the client interfaces to web > >>>> services > >>>>>> developed with COBOL CGI programs. This gets our IBM i COBOL > >> developers > >>>>>> into web and mobile development without having to learn .NET, and it > >>>>>> leverages our existing expertise in COBOL. > >>>>>> > >>>>>> I have designed an architecture for CGI programming on the IBM i > that > >>>>>> conforms to REST architectural constraints as described in > Fielding's > >>>>>> dissertation. I am now gathering information on tools available to > >> help > >>>>> us > >>>>>> with the COBOL CGI programming. Next step, proof of concepts... > >>>>>> > >>>>>> Thanks, > >>>>>> Kelly > >>>>>> > >>>>>> > >>>>>> -----Original Message----- > >>>>>> From: WEB400 [mailto:web400-bounces@xxxxxxxxxxxx] On Behalf Of Jon > >>>> Paris > >>>>>> Sent: Sunday, May 10, 2015 9:36 PM > >>>>>> To: Web400@Midrange. Web400 > >>>>>> Subject: Re: [WEB400] Does the eRPG SDK template system support > JSON? > >>>>>> > >>>>>> For Mobile development with COBOL you should really take a look at > >>>>> Lansa's > >>>>>> LongRange http://www.longrangemobile.com > >>>>>> > >>>>>> I know that works pretty well with COBOL because I helped translate > a > >>>> few > >>>>>> of the RPG examples into COBOL. > >>>>>> > >>>>>> > >>>>>> Jon Paris > >>>>>> > >>>>>> www.partner400.com > >>>>>> www.SystemiDeveloper.com > >>>>>> > >>>>>> On May 10, 2015, at 8:00 PM, Kelly Cookson <KCookson@xxxxxxxxxxxx> > >>>>> wrote: > >>>>>> > >>>>>>> I will look for the template system in CGICBLDEV2 when I get it > >>>>>> installed and start playing around with it. > >>>>>>> > >>>>>>> I literally just started looking at CGI tools. I recently learned > >>>> that > >>>>>>> our shop will not be adopting Node.JS on the IBM i at any time in > the > >>>>>>> foreseeable future. Kind of a bummer. But the same reasons for not > >>>>>>> adopting Node.JS make CGI using COBOL programs an attractive > >>>>>>> alternative. (Every shop is different, and I'm sure Node.JS will > work > >>>>>>> wonderfully for a lot of shops. It's just not a good fit for us at > >>>>>>> this time.) > >>>>>>> > >>>>>>> I'm still committed to helping our IBM i COBOL developers become > web > >>>>>>> and mobile developers as well. ;-) > >>>>>>> > >>>>>>> Thanks, > >>>>>>> Kelly > >>>>>>> > >>>>>>> -----Original Message----- > >>>>>>> From: WEB400 [mailto:web400-bounces@xxxxxxxxxxxx] On Behalf Of Jon > >>>>>>> Paris > >>>>>>> Sent: Sunday, May 10, 2015 7:30 PM > >>>>>>> To: Web400@Midrange. Web400 > >>>>>>> Subject: Re: [WEB400] Does the eRPG SDK template system support > JSON? > >>>>>>> > >>>>>>> CGICBLDEV2 uses a template system too Kelly. > >>>>>>> > >>>>>>> > >>>>>>> Jon Paris > >>>>>>> > >>>>>>> www.partner400.com > >>>>>>> www.SystemiDeveloper.com > >>>>>>> > >>>>>>> On May 10, 2015, at 12:55 PM, Kelly Cookson <KCookson@xxxxxxxxxxxx > > > >>>>>> wrote: > >>>>>>> > >>>>>>>> Thanks Jon. I am looking at CGICBLDEV2 as well. And I'm looking at > >>>>>> other solutions such as the CGI interface to XMLSERVICE and iWebSrv. > >>>>>>>> > >>>>>>>> The thing I like about eRPG SDK is the use of a template system to > >>>>>> format data for return to the client. This seems to me a potentially > >>>>>> intuitive way for developers who only do COBOL and DDS to deal with > >>>>>> returning JSON data. Still, I am also looking at other options for > >> JSON > >>>>>> with COBOL (YAJL, PowerEXT, Redvers COBOL JSPN Interface). > >>>>>>>> > >>>>>>>> The client interfaces we develop will using jQuery AJAX to make > GET > >>>>> and > >>>>>> POST requests, and they will be expecting data formatted in JSON as > >> the > >>>>>> response. By keep the contract between the client and the web > service > >>>>>> uniform (AJAX GET and POST requests, JSON responses) we can develop > >>>>> client > >>>>>> interfaces that can easily switch between IBM i back ends and > Windows > >>>>> back > >>>>>> ends. We just need to point the client to a new URL to switch back > >>>> ends. > >>>>>> This is one of the benefits of the uniform interface constraint of > >>>>> RESTful > >>>>>> architecture. > >>>>>>>> > >>>>>>>> Thanks, > >>>>>>>> Kelly > >>>>>>>> > >>>>>>>> -----Original Message----- > >>>>>>>> From: WEB400 [mailto:web400-bounces@xxxxxxxxxxxx] On Behalf Of > Jon > >>>>>>>> Paris > >>>>>>>> Sent: Sunday, May 10, 2015 10:23 AM > >>>>>>>> To: Web400@Midrange. Web400 > >>>>>>>> Subject: Re: [WEB400] Does the eRPG SDK template system support > >>>> JSON? > >>>>>>>> > >>>>>>>> Kelly, > >>>>>>>> > >>>>>>>> You might want to also look at the COBOL interfaces for CGIDEV2 ( > >>>>>> http://www.easy400.net/cgicbldev2p/start.pgm). > >>>>>>>> > >>>>>>>> No disrespect to Brad's eRPG but some RPG-oriented interfaces can > be > >>>>>> very difficult to use in COBOL. Reason, in part, is that such > routines > >>>>> tend > >>>>>> to take advantage of the facilities offered by prototypes - for > >> example > >>>>> the > >>>>>> keyword CONST allows you to specify a literal instead of a variable. > >>>>> COBOL > >>>>>> has no such option and therefore the fields usually need to be > passed > >>>>>> exactly as specified in the called routine. That usually requires > >>>> quite a > >>>>>> bit more work and makes the examples hard to follow. > >>>>>>>> > >>>>>>>> Giovanni has already done the grunt work and provided documented > >>>>> native > >>>>>> COBOL interfaces to CGIDEV2 routines that make it much easier. > >>>>>>>> > >>>>>>>> Just a thought. Unless Brad has added a lot of new stuff to eRPG > >>>> that > >>>>>> I am unaware of, I think that the capabilities of CGIDEV2 are a > close > >>>>> match. > >>>>>>>> > >>>>>>>> > >>>>>>>> Jon Paris > >>>>>>>> > >>>>>>>> www.partner400.com > >>>>>>>> www.SystemiDeveloper.com > >>>>>>>> > >>>>>>>> On May 10, 2015, at 10:46 AM, Kelly Cookson <KCookson@xxxxxxxxxxxx > > > >>>>>> wrote: > >>>>>>>> > >>>>>>>>> Thanks Brad. > >>>>>>>>> > >>>>>>>>> I assume I wouldn't have any problems implementing this in ILE > >>>> COBOL. > >>>>>> I've seen several tutorial examples of creating JSON in RPG, which > is > >>>>> made > >>>>>> easier by built-in functions (like trim) and by the new += > assignment > >>>>>> operator. Unfortunately, RPG is not a standard language in our shop. > >> So > >>>>> I'd > >>>>>> need to use eRPG SDK in ILE COBOL. > >>>>>>>>> > >>>>>>>>> Thanks, > >>>>>>>>> Kelly > >>>>>>>>> > >>>>>>>>> -----Original Message----- > >>>>>>>>> From: WEB400 [mailto:web400-bounces@xxxxxxxxxxxx] On Behalf Of > >>>>>>>>> Bradley Stone > >>>>>>>>> Sent: Sunday, May 10, 2015 8:10 AM > >>>>>>>>> To: Web Enabling the IBM i (AS/400 and iSeries) > >>>>>>>>> Subject: Re: [WEB400] Does the eRPG SDK template system support > >>>> JSON? > >>>>>>>>> > >>>>>>>>> Hi, Kelly. > >>>>>>>>> > >>>>>>>>> The eRPG SDK is a template designed system, so if you create JSON > >>>>>> templates the eRPG SDK would work the same as if it was using XML, > >>>> HTML, > >>>>> or > >>>>>> pretty much anything else. > >>>>>>>>> > >>>>>>>>> It doesn't know what type of data you're creating using the > >>>>>>>>> templates and replacement variables. :) > >>>>>>>>> > >>>>>>>>> Brad > >>>>>>>>> www.bvstools.com > >>>>>>>>> > >>>>>>>>> On Sun, May 10, 2015 at 2:15 AM, Kelly Cookson > >>>>>>>>> <KCookson@xxxxxxxxxxxx> > >>>>>>>>> wrote: > >>>>>>>>> > >>>>>>>>>> Suppose I want to develop a CGI program in ILE COBOL using eRPG > >>>> SDK. > >>>>>>>>>> > >>>>>>>>>> Can the ILE COBOL program read a DB2 table and use the eRPG SDK > >>>>>>>>>> template system to return a JSON string? > >>>>>>>>>> > >>>>>>>>>> Thanks, > >>>>>>>>>> > >>>>>>>>>> Kelly Cookson > >>>>>>>>>> IT Project Leader > >>>>>>>>>> Dot Foods, Inc. > >>>>>>>>>> 1.217.773.4486 ext. 12676 > >>>>>>>>>> kcookson@xxxxxxxxxxxx<mailto:kcookson@xxxxxxxxxxxx> > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> -- > >>>>>>>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >>>>>>>>>> mailing list To post a message email: WEB400@xxxxxxxxxxxx To > >>>>>>>>>> subscribe, unsubscribe, or change list options, > >>>>>>>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>>>>>>> or email: WEB400-request@xxxxxxxxxxxx Before posting, please > >>>> take a > >>>>>>>>>> moment to review the archives at > >>>> http://archive.midrange.com/web400 > >>>>> . > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>> -- > >>>>>>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >>>>>>>>> mailing list To post a message email: WEB400@xxxxxxxxxxxx To > >>>>>>>>> subscribe, unsubscribe, or change list options, > >>>>>>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>>>>>> or email: WEB400-request@xxxxxxxxxxxx Before posting, please > take > >>>> a > >>>>>>>>> moment to review the archives at > >>>> http://archive.midrange.com/web400. > >>>>>>>>> > >>>>>>>>> -- > >>>>>>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >>>>>>>>> mailing list To post a message email: WEB400@xxxxxxxxxxxx To > >>>>>>>>> subscribe, unsubscribe, or change list options, > >>>>>>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>>>>>> or email: WEB400-request@xxxxxxxxxxxx Before posting, please > take > >>>> a > >>>>>>>>> moment to review the archives at > >>>> http://archive.midrange.com/web400. > >>>>>>>>> > >>>>>>>> > >>>>>>>> -- > >>>>>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >>>>>>>> mailing list To post a message email: WEB400@xxxxxxxxxxxx To > >>>>>>>> subscribe, unsubscribe, or change list options, > >>>>>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>>>>> or email: WEB400-request@xxxxxxxxxxxx Before posting, please > take a > >>>>>>>> moment to review the archives at > http://archive.midrange.com/web400 > >>>> . > >>>>>>>> > >>>>>>>> -- > >>>>>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >>>>>>>> mailing list To post a message email: WEB400@xxxxxxxxxxxx To > >>>>>>>> subscribe, unsubscribe, or change list options, > >>>>>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>>>>> or email: WEB400-request@xxxxxxxxxxxx Before posting, please > take a > >>>>>>>> moment to review the archives at > http://archive.midrange.com/web400 > >>>> . > >>>>>>>> > >>>>>>> > >>>>>>> -- > >>>>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >>>>>>> mailing list To post a message email: WEB400@xxxxxxxxxxxx To > >>>>>>> subscribe, unsubscribe, or change list options, > >>>>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>>>> or email: WEB400-request@xxxxxxxxxxxx > >>>>>>> Before posting, please take a moment to review the archives at > >>>>>>> http://archive.midrange.com/web400. > >>>>>>> > >>>>>>> -- > >>>>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >>>>>>> mailing list To post a message email: WEB400@xxxxxxxxxxxx To > >>>>>>> subscribe, unsubscribe, or change list options, > >>>>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>>>> or email: WEB400-request@xxxxxxxxxxxx > >>>>>>> Before posting, please take a moment to review the archives at > >>>>>>> http://archive.midrange.com/web400. > >>>>>>> > >>>>>> > >>>>>> -- > >>>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >>>> mailing > >>>>>> list To post a message email: WEB400@xxxxxxxxxxxx To subscribe, > >>>>>> unsubscribe, or change list options, > >>>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>>> or email: WEB400-request@xxxxxxxxxxxx > >>>>>> Before posting, please take a moment to review the archives at > >>>>>> http://archive.midrange.com/web400. > >>>>>> > >>>>>> -- > >>>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >>>> mailing > >>>>>> list > >>>>>> To post a message email: WEB400@xxxxxxxxxxxx > >>>>>> To subscribe, unsubscribe, or change list options, > >>>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>>> or email: WEB400-request@xxxxxxxxxxxx > >>>>>> Before posting, please take a moment to review the archives > >>>>>> at http://archive.midrange.com/web400. > >>>>>> > >>>>>> > >>>>> > >>>>> > >>>>> -- > >>>>> Regards, > >>>>> Henrik Rützou > >>>>> > >>>>> http://powerEXT.com <http://powerext.com/> > >>>>> -- > >>>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > >> mailing > >>>>> list > >>>>> To post a message email: WEB400@xxxxxxxxxxxx > >>>>> To subscribe, unsubscribe, or change list options, > >>>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>>> or email: WEB400-request@xxxxxxxxxxxx > >>>>> Before posting, please take a moment to review the archives > >>>>> at http://archive.midrange.com/web400. > >>>>> > >>>>> > >>>> -- > >>>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > mailing > >>>> list > >>>> To post a message email: WEB400@xxxxxxxxxxxx > >>>> To subscribe, unsubscribe, or change list options, > >>>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>>> or email: WEB400-request@xxxxxxxxxxxx > >>>> Before posting, please take a moment to review the archives > >>>> at http://archive.midrange.com/web400. > >>>> > >>>> > >>> -- > >>> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) > mailing > >> list > >>> To post a message email: WEB400@xxxxxxxxxxxx > >>> To subscribe, unsubscribe, or change list options, > >>> visit: http://lists.midrange.com/mailman/listinfo/web400 > >>> or email: WEB400-request@xxxxxxxxxxxx > >>> Before posting, please take a moment to review the archives > >>> at http://archive.midrange.com/web400. > >>> > >> > >> -- > >> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) mailing > >> list > >> To post a message email: WEB400@xxxxxxxxxxxx > >> To subscribe, unsubscribe, or change list options, > >> visit: http://lists.midrange.com/mailman/listinfo/web400 > >> or email: WEB400-request@xxxxxxxxxxxx > >> Before posting, please take a moment to review the archives > >> at http://archive.midrange.com/web400. > >> > >> > > -- > > This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) mailing > list > > To post a message email: WEB400@xxxxxxxxxxxx > > To subscribe, unsubscribe, or change list options, > > visit: http://lists.midrange.com/mailman/listinfo/web400 > > or email: WEB400-request@xxxxxxxxxxxx > > Before posting, please take a moment to review the archives > > at http://archive.midrange.com/web400. > > > > -- > This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) mailing > list > To post a message email: WEB400@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/web400 > or email: WEB400-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/web400. > >
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.