Deleting AS/400 licenced programs

5 pts.
Tags:
AS/400
LICPGM
I tried to us the licpgm menus to delete a program that was installed but broken. It failed. A reinstall is not possible until I get rid of the licpgm, so how can I force a deletion of that program please?

Answer Wiki

Thanks. We'll let you know when a new response is added.

Try IPLing the system in manual state and remove it using console. It would work.

=====================================================

If DLTLICPGM fails (or failed) in a way that cannot be recovered, then it’s possible that it ran far enough to delete the parts that feed the DLTLICPGM process. Manual deletion is your only choice.

Use DSPSFWRSC to determine the library associated with product. Review objects in the library to determine any user profiles or authorization lists that might be part of the LPP but created in QSYS. E.g., an owner profile or product admin or other profile might have been created at install time.

Then DLTLIB to delete the library.

That should get rid of nearly all objects. Use DSPUSRPRF to see if other objects might have been created in other libraries during product use that are owned by the product user. Then DLTUSRPRF specifying that owned objects should be deleted or changed to another profile if you need to save them. (E.g., files might contain your data.)

Then delete any authorization lists.

Errors that occur during deletion (such that some objects might resist being deleted) will require manual review to determine what relationships need to be severed. Track down and fix these one at a time. When all appears clear, attempt the DLTUSRPRF or DLTAUTL again.

Note that a directory structure might also be associated. You should be able to determine which subdirectories can be deleted. Use the ‘recursive delete’ function of EDTF over a directory to delete complete subdirectory paths.

The *PRDDFN and *PRDLOD objects in the product library can sometimes be tricky. Software Product APIs are available to delete these if necessary. The two APIs are almost trivial to call even from a command line. (Use x’0000000000000000′ for the error-code parameter.)

Tom

Discuss This Question:  

 
There was an error processing your information. Please try again later.
Thanks. We'll let you know when a new response is added.
Send me notifications when members answer or reply to this question.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Forgot Password

No problem! Submit your e-mail address below. We'll send you an e-mail containing your password.

Your password has been sent to:

To follow this tag...

There was an error processing your information. Please try again later.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Thanks! We'll email you when relevant content is added and updated.

Following