Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Cannot delete class: Property pxObjClass is not a DatabaseColumn

SA-40257

Summary



Cannot delete external class definitions. When User tries to delete using Designer Studio > System > Refactor > Classses > "Delete a class link".

It works fine but it doesn't delete class. When user goes to Application >Tool > All wizards, user cannot locate the related case that failed.


Error Messages



2017-06-09 [fault (self-tuning)'] [TABTHREAD0] [ ] [ MCCM:01-01-01] (l.access.ConnectionManagerImpl) ERROR | - Not returning connection 13 for database "pegarules" to the pool as it previously encountered the following error
User ID: ABC
Last SQL: SELECT pyRuleName as "pyRuleName" FROM PEGA_RULES_DEV.pr4_rule_property WHERE pxObjClass = 'Rule-Obj-Property' AND UPPER(pyRuleName) IN ('AVG_FAT_02','AVG_FAT_03','AVG_FAT_06','INVOICE_SUMMARY_AMOUNT_TL','INVOICE_SUMMARY_AMOUNT_TL_01','INVOICE_SUMMARY_AMOUNT_TL_02','INVOICE_SUMMARY_AMOUNT_TL_03','INVOICE_SUMMARY_AMOUNT_TL_04','SUBSCRIBER_SK',) AND pyClassName IN (SELECT pxClassName FROM PEGA_RULES_DEV.pr_sys_class_ancestors WHERE pxLeafClassName = 'MCCM-Data-CustomerUsage')
java.sql.SQLSyntaxErrorException: ORA-00936: missing expression


Steps to Reproduce



1. Create class by using external class mapping.
2. Try to delete using Designer Studio > System > Refactor > Classses.
3. Click "Delete a class link".


Root Cause



This issue was determined to be a product enhancement request. Pega does not support externally mapped class deletion from the wizard.

An enhancement request (FDBK-20015) has been created.

Resolution



Perform the following steps to delete the class:

1. Delete all the properties from designer studio and then deleting the class from designer studio.

If the number of properties are more than 200, this is not feasible.

2. Directly delete from the DB:

a) delete from prpc73_3473.pr4_rule_property where pyclassname = 'TestExtClass'
delete from prpc73_3473.pr4_base where pyclassname = 'TestExtClass'

b) Replace pyclassname with the correct classname. If there is a history class, add that as well.

Published September 20, 2017 - Updated October 8, 2020

Was this useful?

0% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us