Question
pvudutha
US
Last activity: 29 Apr 2016 10:07 EDT
Unable ot associate NPS survey class as direct parent to my application class.
Error say "Class CPM-PegaNPS-Survey does not exist. Please define an existing parent class." WHen manually verified class is available. Anybody saw similar issue?
My application is on Pega 7.1.6 and cpm 7.12.
Message was edited by: Lochan to add Category
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Accepted Solution
Updated: 29 Apr 2016 10:07 EDT
Pegasystems
US
The needed prerequisite ruleset version is the highest version of the ruleset associated with the desired directed parent class. Specify this prerequisite as the last one in the list of prerequisites for the highest version of the ruleset associated with the child class.
/Eric
Pegasystems
US
In what context is the error appearing ? If you attach a trace (zip it up first to make the xml nice and small!), it might make it more clear. /Eric
pvudutha
US
Pegasystems
US
You may want to compare the rulesets and ruleset prerequisites for the class getting the error, and for class CPM-PegaNPS-Survey to make sure that when the error says class-does-not-exist that it doesn't perhaps mean class-not-available-to-your-prereqs.
Tracing to see exactly which internal result is leading to the error could be quite revealing.
Also, if you change the ruleset from prereq-validation to the other kind of validation, I think maybe it's called app-validation, it may make the error go away. /Eric
Updated: 8 Mar 2016 9:14 EST
pvudutha
US
Sorry for not mentioning this in my original post. I have verified Application stack , rule sets(CPM-PegaNPS) and rule set prerequisites to made sure configuration is correct from my application. CPM-PegaNPS-Survey class is available and accessible from my class group.
Also tried including CPM-PegaNPS rule set into my application and verified without success(is this called app-validation?).
No errors occurred on trace log when I traced. Found below message from the beginning of the trace.
message_1: pyDerivesFrom: Class.Validate-UnknownParent CPM-PegaNPS-Survey
Pegasystems
US
app-validation is a particular setting that is available on the ruleset ruleform. There's two choices now, the older prereq-validation and the newer app-validation.
If your tracer is showing the error right at the beginning, that can be a bit confusing as it probably means there's a page left over from previous attempt. Perhaps easiest is to log out and in, start tracer, then attempt to put in the inheritance so you can find where in tracer the error first occurs. /Eric
Updated: 8 Mar 2016 9:13 EST
pvudutha
US
My application is based on Pega 7.1.6 verison. I don't see option related to app-validation in rule set rule form. Could you please guide how to set this option.
Tried logged in back and saw this error is occurring at rule set context. At 13th step of ule-Obj-Class • Validate( Pega-RulesEngine:07-10-11 ) a condition checks for parent class available if not through the message.
Here is the snippet of java code where error message initiated.
ClipboardPage cpParent = null;
RulesetContext rulesetContext = tools.getDatabase().getRulesetContext(tools.getPrimaryPage());
cpParent = rulesetContext.open(hsmKeys);
if (cpParent != null) {
.....
.......
..........
}
} else {
cpPrimary.addMessage("Class.Validate-UnknownParent\t" + parent, ".pyDerivesFrom");
Pegasystems Inc.
US
In Pega 7.1.6 you will not see the option for Application Validation.
PEG
US
I saw a customer back in the early 5.5 days who was experiencing the same issue. For this customer, he cleared the extract marker and the temporary files, restarted, and the problem went away.
Today such an exercise will not help, as it becomes necessary to truncate cache tables to do effective cleanup. I hate to recommend using such a big hammer, but perhaps this will suggest a particular cache entry that might benefit by deletion?
Cognizant Technology Solutions
IN
Try Clearing all the Temp files and restart the servers.
/tmp/PegaRULES_Extract_Marker.txt
/tmp/PRGenJava
/tmp/PRGenClasses
/tmp/PRGenBackup
pvudutha
US
Cleared cache be deleting all temp files and restarted. Still see the issue
pvudutha
US
Pegasystems Inc.
US
Hello Prashanth,
I checked in a Pega 7.1.9/CPM 7.14 system and the CPM-PegaNPS-Survey class is setup the same way (created in version is 06-02-62) so I don't think that is the issue. We have reached out to other community members to see if they can assist.
Pegasystems Inc.
US
I think Eric is correct, this issue is related to the per-requisites for xxxxxFWCommon. Please provide a screen image of the ruleset versions and the per-requisites for the version used and also the highest version available.
pvudutha
US
Pegasystems
US
I'll look at this some more, but here's something you can investigate. You said:
>>> CPM-PegaNPS-Survey class is available and accessible from my class group.
What's crucial is that this intended superclass's ruleset be a prerequisite of the ruleset of the subclass you're trying to refer to the superclass.
For checking your prerequisites, keep in mind that since class rules don't actually use ruleset versions for their resolution, there is a "defined in" version listed for the class. I forget whether THAT version is the one whose prereqs are looked at, or whether the highest version of that ruleset is looked at. I will review that.
Knowing the reason for the restriction will help with the understanding:
Suppose you were using a rule-admin-product to export a zip on which you were storing your entire application, including all of its needed classes, expecting to then import the zip on another system.
Typically, a rule-admin-product specifies which rule-application should be used for getting the list of rulesets whose classes and rules should be stored on the zip. To make sure that your subclass's superclass will get stored on such a zip, it is important that the prerequisite relationship be followed.
/Eric
Pegasystems
US
Try setting the prereq of the ruleset of your subclass to be the highest version of the ruleset in which the desired directed superclass resides. /Eric
pvudutha
US
I have updated rule set of my subclass to highest version of the rule set(02-05-06) and still see the error.
Pegasystems
US
I want to try your same example. Which frameworks are you using ? cpm ? what version ? Also pega-survey ? What version ? How did you build your app ? with application-express ? Some other way ? Thanks. /Eric
pvudutha
US
We are using Warranty, Cpm and NPS survey frame works. Application was built manually.
Warranty: PegaWarrantyCPM 7-11
CPM: CPM 7-12
NPS survey: CPM-PegaNPS:07-12
Updated: 21 Mar 2016 12:41 EDT
Pegasystems
US
Since this issue is proving challenging to resolve, I would like to continue investigating it within the SR that I have been told already exists and is tagged in the related-items field. I will go look at that field and re-open that SR if it is appropriate. Thanks. /Eric
Pegasystems
US
Apparently, sr's aren't re-openable if they were marked as "general question", so I made a new sr for you and I'll be happy to work with you to solve it. The number is SR-A21500 . /Eric
pvudutha
US
Thank you.
Accepted Solution
Updated: 29 Apr 2016 10:07 EDT
Pegasystems
US
The needed prerequisite ruleset version is the highest version of the ruleset associated with the desired directed parent class. Specify this prerequisite as the last one in the list of prerequisites for the highest version of the ruleset associated with the child class.
/Eric