If you are getting the error below trying to undeploy search definition, then you may have the similar issue that I recently had after the database refresh.
Service Exception: ns2:CreatableAdminObjectFault : EQA-11000: The object with key "[name=PTPORTALREGISTRY_HRPRD]" and type "schedule" was not found. (262,1018) PT_SEARCH.SESIMPL.MESSAGE.AdminResponse.OnExecute Name:AdminResponse PCPC:1452 Statement:20
Called from:PT_SEARCH.SESIMPL.AdminService.OnExecute Name:doService Statement:848
Called from:PT_SEARCH.SESIMPL.AdminService.OnExecute Name:delete Statement:802
Called from:PT_SEARCH.SESIMPL.AdminService.OnExecute Name:RemovePSFTSource Statement:248
Called from:PTSF_DP_SBO_WRK.PTSF_UNDEPLOY_BTN.FieldChange Statement:111
There is a useful tutorial on how to resolve this sync issue. If that solved your problem, great!
if not, continue reading, this may help you further.
After further checking, I found that the reason why I was getting an error while trying to undeploy the search definition is because the search definition deployed name in my PeopleSoft database did not exist in the SES database.
Why? Because after the database refresh, the deployed name in my PeopleSoft Test database is now replaced with the one from the Production database.
Pay attention to the error message again. Notice that the name has _HRPRD which is my Prod Database name.
When logged in to the SES Admin console, the name did not exist and the correct name should be PTPORTALREGISTRY_HRSTG.
Exception: ns2:CreatableAdminObjectFault : EQA-11000: The object with
key "[name=PTPORTALREGISTRY_HRPRD]" and type "schedule" was not found.
Okay, here is to fix it.
We need to change the deployed name inside the PTSF_DEPLOY_OBJ table.
First , I did a quick select all the search definition deployed names that end with _HRPRD
Note: HRPRD is the database name. Yours will be different.
Select * from PS_PTSF_DEPLOY_OBJ where ptsf_deployed_name like '%HRPRD'
I got one result:
Next, I updated all the deployed name and replace _HRPRD with _HRSTG
Update PS_PTSF_DEPLOY_OBJ set ptsf_deployed_name = substr(ptsf_deployed_name, 1, length(ptsf_deployed_name) - 5) || 'HRSTG' where ptsf_deployed_name like '%HRPRD'
After I committed and I ran the select for the new name, I got the following result
Lastly, I went back to Main Menu > PeopleTools > Search Framework > Administration > Deploy/Delete Object, selected PTPORTALREGISTRY search definition and clicked "Undeploy" button.
Result: HOORAY!! No more error message.
Action Plan: Talk to the DBA to restore PS_PTSF_DEPLOY_OBJ after the DB refresh so you won't have to do this again for every refresh.
Hope this helps.