Not to be silly, isn't there a good old fashioned API that can modify the
program attribute? 

Say, perhaps, QLICOBJD, specifically key 9? We used this API to change the
source library as we moved program objects through promotion.

(http://publib.boulder.ibm.com/iseries/v5r2/ic2924/info/apis/qlicobjd.htm)


-Walden 


------------
Walden H Leverich III
President & CEO
Tech Software
(516) 627-3800 x11
(208) 692-3308 eFax
WaldenL@xxxxxxxxxxxxxxx
http://www.TechSoftInc.com 

Quiquid latine dictum sit altum viditur.
(Whatever is said in Latin seems profound.)
 
-----Original Message-----
From: Paul Jackson [mailto:pjackson@xxxxxxxxxx] 
Sent: Tuesday, February 17, 2004 5:14 PM
To: 'MI400@xxxxxxxxxxxx'
Subject: RE: [MI400] MI Program attribute?

Hello,

I compiled the code below and am now attempting to change it to system state
so that it can run.

>From the archive postings I understand that offset X'15C1' should be
changed
to X'80' instead of X'01'.   When I go into SST though I get the following
data at that location. It seems that offset contains X'33'.

                                                                            
1500    00000000 00000000      00000000 00000000       * ................ * 
1510    00000000 00000000      00000000 00000000       * ................ * 
1520    00000000 00000000      00000000 00000000       * ................ * 
1530    00000000 00000000      00000000 00000000       * ................ * 
1540    00000000 00000000      164D8AB4 CF0014C0       * .........(...... * 
1550    00000000 F4000000      00000000 F4000000       * ....4.......4... * 
1560    00000000 F4000000      164D8AB4 CF0017A0       * ....4....(...... * 
1570    00000000 00000000      00000000 00000000       * ................ * 
1580    FB41FF30 FB61FF38      FB81FF40 FBA1FF48       * ...../...a. .... * 
1590    FBC1FF50 FBE1FF58      7C0802A6 F8010028       * .A.&....@..w8... * 
15A0    F821FE21 39800001      F9810060 605D0000       * 8.......9a.--).. * 
15B0    F8410020 3C005415      F8010008 F8210218       * 8.......8...8... * 
15C0    33FF01C0 7C2001C8      41DA8053 41DD8183       * ....@..H......ac * 
15D0    3B600082 7F5AD078      3BC30000 9B6100BA       * .-.b.....C.../.. * 
15E0    B35FFEC0 39200401      B13FFEA0 E8BE0008       * ............Y... * 
15F0    E3450002 7C0004C8      637A0000 A39A0012       * T...@..H.:..t... * 
F3=Exit         F4=Alter labels       F5=Refresh              F6=Display sta

Any clues as to what I am doing wrong?

Thanks!

-----Original Message-----
From: Dave McKenzie [mailto:davemck@xxxxxxxxxxxxx]

Here's a little MI pgm that changes a pgm's attribute by calling
QSYS/QLIMROIR 
"Modify/retrieve OIR", which is the pgm used by other QSYS pgms to get or 
modify the OIR.

Since QLIMROIR is system domain (not an API), this pgm must be system state.

Notice that you could change the pgm to modify OIR info other than
attributes 
by using the other OIRPTR, OIRFROM and OIRTO fields.

--Dave

         ENTRY .ENTRY(*ENTRY) EXT;
         DCL SPCPTR P1P PARM;
         DCL SPCPTR P2P PARM;
         DCL OL *ENTRY (P1P, P2P) EXT PARM MIN(2);

         DCL DD  $PGM     CHAR( 20) BAS(P1P);
         DCL DD  $PGMNAM  CHAR( 10) DEF($PGM) POS(  1);
         DCL DD  $PGMLIB  CHAR( 10) DEF($PGM) POS( 11);

         DCL DD  $ATTR    CHAR( 10) BAS(P2P);

         DCL SPCPTR QINSEPTP BASPCO POS(1);
         DCL SPCPTR QINSEPT(9999) BAS(QINSEPTP);

         DCL DD OBJDESC CHAR(34) AUTO;
         DCL DD TYPESUB CHAR(2)  DEF(OBJDESC) POS(1);
         DCL DD OBJNAM  CHAR(30) DEF(OBJDESC) POS(3);
         DCL DD *       CHAR(2)  DEF(OBJDESC) POS(33) INIT(X'0000');

         DCL SYSPTR LIBRSYP AUTO;

         DCL DD MORR     CHAR(  1) AUTO;
         DCL DD OIOBJ    CHAR( 30) AUTO;
         DCL DD OITYSUB  CHAR(  2) AUTO;
         DCL DD OIRPARMS CHAR(224) AUTO BDRY(16);

         DCL SPCPTR OIRPTR1  DEF(OIRPARMS) POS(  1)  /* TEXT       */;
         DCL SPCPTR OIRPTR2  DEF(OIRPARMS) POS( 17)  /* SAV/RST    */;
         DCL SPCPTR OIRPTR3  DEF(OIRPARMS) POS( 33)  /* SERVICE    */;
         DCL SPCPTR OIRPTR4  DEF(OIRPARMS) POS( 49)  /* WHERE USED */;
         DCL SPCPTR OIRPTR5  DEF(OIRPARMS) POS( 65)  /* ATTR       */;
         DCL SPCPTR OIRPTR6  DEF(OIRPARMS) POS( 81)  /*            */;
         DCL SPCPTR OIRPTR7  DEF(OIRPARMS) POS( 97)  /* USAGE      */;
         DCL SPCPTR OIRPTR8  DEF(OIRPARMS) POS(113)  /* EXTENDED   */;
         DCL DD OIRFROM(8) BIN(4) DEF(OIRPARMS) POS(129);
         DCL DD OIRTO  (8) BIN(4) DEF(OIRPARMS) POS(161);
         DCL DD OIRRETL(8) BIN(4) DEF(OIRPARMS) POS(193);
         DCL DD NORY      CHAR(  1) AUTO;
         DCL OL MROIROL (MORR, OIOBJ, OITYSUB, LIBRSYP, OIRPARMS,
                         NORY);

         CPYBLA     TYPESUB, X'0401';
         CPYBLAP    OBJNAM, $PGMLIB,' ';
         RSLVSP     LIBRSYP, OBJDESC, *, *;

         CPYBLA     MORR, 'M'                       /* Modify  */;
         CPYBLAP    OIOBJ, $PGM, ' ';
         CPYBLA     OITYSUB, X'0201';
         CPYBLAP    OIRPARMS, X'00',X'00';
         SETSPP     OIRPTR5, $ATTR;
         CPYNV      OIRFROM(5), 1;
         CPYNV      OIRTO(5), 10;
         CPYBLA     NORY, 'N';

         CALLX      QINSEPT(374), MROIROL,*         /* QLIMROIR  */;

         PEND;
_______________________________________________
This is the MI Programming on the AS400 / iSeries (MI400) mailing list
To post a message email: MI400@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/mi400
or email: MI400-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/mi400.

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.