With the 2009 versions we are now also supporting the possibility to run InterForm400 on iASPs (independent auxiliary storage pools). With the 2009M08 version (and higher) we have solved a minor issue regarding running InterForm400 on an iASP. So use 2009M08 or higher if you want to use InterForm400 on an iASP.
There are a few things different when you are running iASP compared to the normal SYSASP:
- Any programs called by InterForm400 must be placed in libraries within the same iASP or SYSASP.
- The subsystems used cannot be placed in the iASP (e.g. in library APF3812), but must be in the SYSASP. InterForm400 can help you to copy (and rename if you want) the used subsystems.
- If you are running V5R3 or V5R4 you will need to create this data area:
CRTDTAARA DTAARA(QSYS/QWTSBSIASP) TYPE(*CHAR) LEN(20)
VALUE('YourAFCSBSYourIASP')
TEXT('Allow sbs monitor job to use IASP') AUT(*USE)- to make it possible to run a job with an auxiliary storage pool (ASP) group in its library name space.
Substitute 'YourAFCSBS' with exactly 10 characters containing the name of the subsystem e.g. 'APF3812 ' (use trailing blanks), and 'YourIASP' with exactly 10 characters containing the iASP name (use trailing blanks).
The process of moving to iASP depends on if you are installing InterForm400 for the first time or during an upgrade of InterForm400:
a. First time install on iASP (InterForm400 is not installed in SYSASP or iASP)
In order to install InterForm400 on an iASP you can initially run a normal installation. You can e.g. use the RSTLIBPC.JAR program to upload and restore the APF3812NEW library to a specific iASP and run the normal APF3812NEW/APF3812NEW command. During the installation InterForm400 will restore the directories to the iASP and create symbolic links /apf3812Home and /apf3812Mail pointing to /IASP/APF3812Home and /IASP/APF3812Mail.
After that you will need the same setup as described below in: c. Changing the setup to iASP.
b. Moving an existing installation from SYSASP onto an iASP
Moving an InterForm400 installation from the SYSASP into an iASP can only be done if you are running a 2009 version of InterForm400 (a 2009M08 or higher version is recommended). If you want to upgrade InterForm400 as well as move from SYSASP to iASP, we recommend first to upgrade to version 2009M08 or higher and make sure it runs stable in the SYSASP before moving it onto the iASP: It is simple good practice not to change too much at a time if something should stop working.
Doing an upgrade and move to iASP at the same time could make it more difficuilt to find the cause of a problem if something should occour.
If you have an existing installation of InterForm400 in the SYSASP, which you want to move to an iASP, you should first start out by saving the apf3812 library and the directories /apf3812Home and /apf3812mail (including subdirectories). Then rename the apf3812 library (end the subsystems inside and end, save and delete journals and journal receivers inside via the journal menu in InterForm400). Then you can rename the library to e.g. APF3812SAV (not apf3812, apf3812old or apf3812new). Also rename the /apf3812home and /apf3812mail directories. Now restore the apf3812 library and the directories to the iASP:
RSTLIB SAVLIB(APF3812) DEV(*SAVF) SAVF(<mylib>/<mysavf>) RSTASPDEV(<myiasp>)
RST DEV('/qsys.lib/<mylib>.lib/<mysavf>.file')
OBJ(('/apf3812home' *INCLUDE '/<myiasp>/apf3812home'))
RST DEV('/qsys.lib/<mylib>.lib/<mysavf>.file')
OBJ(('/apf3812mail' *INCLUDE '/<myiasp>/apf3812mail')) If you now upgrade to a 2009M08 version or later, the symbolic links will now be added automatically. If you are not upgrading, you will need to add symbolic links yourself:
ADDLNK OBJ('/<iasp>/APF3812Home') NEWLNK('/APF3812Home')
ADDLNK OBJ('/<iasp>/APF3812Mail') NEWLNK('/APF3812Mail') where <iasp> should be exchanged with the name of the iASP you are using (do not include the <>).
c. Changing the setup to iASP after restore
After you have restored (and perhaps upgraded) InterForm400 onto the iASP, you will need to do a few changes:
a) All user exit programs called by InterForm400 must be placed in the same iASP as InterForm400 or in the system ASP.
You can generate a list of all user programs called by first changing your job to use an output queue, that is not connected to a physical printer and then creating a spooled file, that lists all cross references in InterForm400:
- Change the default outq: CHGJOB OUTQ(APF3812/AFC_INPUT1) (or use another outq not connected to a printer)
- Create the list by running this command: APF3812/PRTXREF (You can also create the report via option '8. Print Resource X-reference' on the InterForm400 service menu).
Now you can search the generated spooled file for '*USREXIT' to find all user programs that can be called and from where they are called.
b) All subsystems used by InterForm400 are normally placed in library APF3812, but they must be placed in the SYSASP, so now you need to refer to new subsystem descriptions. To copy the susbsystem descriptions and to refer to the new ones you can select this in InterForm400:
80. Administering InterForm 400
2. Configure InterForm 400
Now press Enter several times until you get to the screen (9/12) where you can define the Auto Form s Control subsystem. Now state the new name and library to use (the library must exist and must be in SYSASP). When you press Enter you are asked to press F10 to create the new subsystem and other needed objects. Press Enter and you can do the same for the other used subsystems.
c) Remember to change the IPL startup program (QSTRUPPGM) to start the new subsystems.
d) In order to be able to run e.g. the graphical designer you will also need to do these changes:
- Copy the normally used job description for the users
- Insert the iASP into INLASPGRP of the new job description
- Change the users to use the new job description
This could e.g. be done in this manner:
- CRTDUPOBJ OBJ(QDFTJOBD) FROMLIB(QGPL) OBJTYPE(*JOBD) NEWOBJ(IASP1JOBD)
- CHGJOBD JOBD(IASP1JOBD) INLASPGRP(IASP1)
- CHGUSRPRF USRPRF(<user>) JOBD(QGPL/IASP1JOBD)
d. Moving an InterForm400 installation from an iASP onto SYSASP
If you want to move an InterForm400 installation back from iASP to SYSASP you should revert the changes described above:
- Save the APF3812 library and the directories: /apf3812home and /apf3812mail.
- Rename the existing apf3812 library and the directories above.
- Restore the library and directories to SYSASP.
- Change the used job description.
- Remove the symbolic links for /apf3812home and /apf3812mail. You should very cautious when doing that, so you are sure you only delete the symbolic links and not the complete directories.. You can do it via WRKLNK: If you use option 8=Display attributes you should be able to see that the type is 'SYMLNK' on the very top of the screen.
Re: Installing and updating InterForm400 on iASPs
Thanks for the contribution Kim.