Joined: 02 Dec 2002 Posts: 9 Topics: 3 Location: India
Posted: Mon Oct 18, 2004 6:17 am Post subject: Uninstall software from CSI
Dear Experts,
One of my colleague raised a doubt about uninstalling products from mainframe once its been ACCEPTED in CSI (similar to windows uninstall). As we work for an R&D team, it needs lot of product installation and applying PTF patches in CSI dataset. Our question is, is there any other feature like uninstallation instead of re-applying PTFs using REDO option. There are ways like deleting CSI datasets or scraping product volumes but we are talking about proper uninstallation feature.
Pasted his mail below.
-------------------------------------------------------------------------------------------------------------------------------
I got this peculiar doubt... How do you go about uninstall of a product?
For e.g. I have list of products on VE - OMII MVS, SMS, MFN, etc. If I want
to uninstall OMII MVS from SMP/E how will I ever do that? I was unable to
figure this out.
-------------------------------------------------------------------------------------------------------------------------------
Note: Searched forums and manuals before posting this query but no luck. fyki
Joined: 02 Dec 2002 Posts: 310 Topics: 8 Location: Texas
Posted: Mon Oct 18, 2004 7:36 am Post subject:
You can delete the functions easily enough. Create a dummy function that has a sole purpose of deleting the fmids that you want to get rid of and then delete the dummy function. I haven't needed to use this in a while but I think this sample will work...
Code:
//DELETE EXEC SMPE
//SMPHOLD DD DUMMY
//SMPPTFIN DD *
++FUNCTION(DELFUNC) .
++VER(Z038) DELETE(DELFMID1,DELFMID2,DELFMID3) .
//SMPCNTL DD *
SET BDY(GLOBAL) .
RECEIVE SELECT (DELFUNC) .
SET BDY(TZONE) .
APPLY SELECT (DELFUNC) .
SET BDY(DZONE) .
ACCEPT SELECT (DELFUNC) .
/*
//DEL EXEC SMPE
//SMPHOLD DD DUMMY
//SMPCNTL DD *
SET BDY(TZONE) .
UCLIN .
DEL SYSMOD(DELFUNC) .
DEL SYSMOD(DELFMID1) .
DEL SYSMOD(DELFMID2) .
DEL SYSMOD(DELFMID3) .
ENDUCL .
SET BDY(DZONE) .
UCLIN .
DEL SYSMOD(DELFUNC) .
DEL SYSMOD(DELFMID1) .
DEL SYSMOD(DELFMID2) .
DEL SYSMOD(DELFMID3) .
ENDUCL .
/*
//*----------------------------------------------------**
//* THIS JOB STEP WILL GENERATE A NONZERO RETURN CODE **
//* IF DELFMID HAS ALREADY BEEN REJECTED, OR IF THE **
//* SMPTLIB'S HAVE BEEN SCRATCHED FOR DELFMID. **
//*----------------------------------------------------**
//REJ EXEC SMPE
//SMPHOLD DD DUMMY
//SMPCNTL DD *
SET BDY(GLOBAL).
REJECT SELECT(DELFUNC,DELFMID1,DELFMID2,DELFMID3)
BYPASS(APPLYCHECK,ACCEPTCHECK).
/*
This will empty the datasets but they will still exist so you will need to get a list of the datasets and run a job to delete them. You can get the dataset names from the smp run or from the dddefs before you run the delete.
That will take care of smpe and its related datasets. Now you will need to delete any that were created outside of smpe. That will depend on either documentation and/or naming standards. Again not too tough. The tough part comes in when modules are copied into shared libraries and removing them. Ususally vendors have a module naming standard that makes this doable although there are vendors that don't.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum