Highlighted
Honored Contributor.
Honored Contributor.
1484 views

Undisplayed message:Value for Subcategory field is not valid.

Jump to solution

Hi,

I am working on integration OMi-SM, I already have opened related case 5314098965 where I was able to create an incident in SM, now I have made modification to mapping on SM side and incident does not open. Need to know why, because I set $defaultValueOfCreate("x") for category, subcategoy and product.type, but error in log keeps returning Undisplayed message:Value for Subcategory field is not valid.
Do I need to change script on OMi side or how to convince SM to open a incident? I have checked the PD workflow and I do not have any validation set, is this anywhere in background still present and it is causing me problems?

Please also review attached files

Regards

2936( 5500) 10/21/2016 16:14:19 RTE I User OMiSMIntegrUser has logged in and is using a Named license ( 2 out of a maximum 5 )
2936( 5500) 10/21/2016 16:14:19 RTE I Base login Response: 0.234 -- RAD: 0.000 JS: 0.140 Log:0.000 Database: 0.094(00524) LDAP: 0.000 (CPU 0.155) application:login,cleanup
2936( 5500) 10/21/2016 16:14:19 RTE I -Memory : S(4297800) O(1032244) MAX(5330044) - MALLOC's Total(318379)
2936( 5500) 10/21/2016 16:14:20 RTE A Mapping-3-SMISConfiguration,paramInfo,paramName, SQL Query incomplete because field (paramInfo,paramName) not mapped in file (SMISConfiguration) ; application(Unknown), panel(Unknown)
2936( 5500) 10/21/2016 16:14:20 RTE A Mapping-3-SMISConfiguration,paramInfo,paramValue, SQL Query incomplete because field (paramInfo,paramValue) not mapped in file (SMISConfiguration) ; application(Unknown), panel(Unknown)
2936( 5500) 10/21/2016 16:14:20 RTE A Performance-2-SMISConfiguration, Partial File Scan for query involving fields {intId, template, paramInfo,paramName, paramInfo,paramValue} ; application(Unknown), panel(Unknown)
2936( 5500) 10/21/2016 16:14:20 RTE E Script failed: Error in executing script BDM_SM.processRequestError in executing script 'BDM_SM.processRequest'Error in executing script BDM_SM.processRequest: ValidationFailedException: Validation failed for probsummary - failed to add record
2936( 4716) 10/21/2016 16:14:20 JRTE E Caught exception:
com.hp.ov.sm.common.core.DAOValidationFailedException: : Validation failed for probsummary - failed to add record
at com.hp.ov.sm.server.utility.DAOThread.handleRequest(Native Method)
at com.hp.ov.sm.server.utility.DAOThread.processRequest(DAOThread.java:308)
at com.hp.ov.sm.server.utility.DAOThread.processRequest(DAOThread.java:201)
at com.hp.ov.sm.server.utility.DAOThread.process(DAOThread.java:167)
at com.hp.ov.sm.server.utility.DAOThread.run(DAOThread.java:96)
2936( 4716) 10/21/2016 16:14:20 JRTE E RESTful service exception:
com.hp.ov.sm.common.core.DAOValidationFailedException: : Validation failed for probsummary - failed to add record
at com.hp.ov.sm.server.utility.DAOThread.handleRequest(Native Method)
at com.hp.ov.sm.server.utility.DAOThread.processRequest(DAOThread.java:308)
at com.hp.ov.sm.server.utility.DAOThread.processRequest(DAOThread.java:201)
at com.hp.ov.sm.server.utility.DAOThread.process(DAOThread.java:167)
at com.hp.ov.sm.server.utility.DAOThread.run(DAOThread.java:96)
2936( 5500) 10/21/2016 16:14:35 JRTE I DAOThread exits after idle for (sec): dao_sessiontimeout=15
2936( 5500) 10/21/2016 16:14:35 JRTE I Termination signal: 0
2936( 5500) 10/21/2016 16:14:35 RTE D Destroying DAOThread ed1c610
2936( 5500) 10/21/2016 16:14:35 RTE I -Memory : S(7221704) O(2353540) MAX(10070988) - MALLOC's Total(637962)
2936( 5500) 10/21/2016 16:14:35 RTE I Thread termination in progress
2936( 5500) 10/21/2016 16:14:35 RTE A SUMMARY-1 The following event has been reported 1 times in the last 0 minute(s)
2936( 5500) 10/21/2016 16:14:35 RTE A Mapping-3-SMISConfiguration,paramInfo,paramName, SQL Query incomplete because field (paramInfo,paramName) not mapped in file (SMISConfiguration)
2936( 5500) 10/21/2016 16:14:35 RTE A SUMMARY-1 The following event has been reported 1 times in the last 0 minute(s)
2936( 5500) 10/21/2016 16:14:35 RTE A Mapping-3-SMISConfiguration,paramInfo,paramValue, SQL Query incomplete because field (paramInfo,paramValue) not mapped in file (SMISConfiguration)
2936( 5500) 10/21/2016 16:14:35 RTE A SUMMARY-1 The following event has been reported 1 times in the last 0 minute(s)
2936( 5500) 10/21/2016 16:14:35 RTE A Performance-2-SMISConfiguration, Partial File Scan for query involving fields {intId, template, paramInfo,paramName, paramInfo,paramValue}
2936( 5500) 10/21/2016 16:14:35 RTE I User OMiSMIntegrUser has logged out and freed a Named license ( 1 out of a maximum 5 )
2936( 5500) 10/21/2016 16:14:35 RTE I Undisplayed message:Script line 0: ERROR uncaught exception: ValidationFailedException: Validation failed for probsummary - failed to add record at char 1
2936( 5500) 10/21/2016 16:14:35 RTE I Undisplayed message:Value for Subcategory field is not valid.
2936( 5500) 10/21/2016 16:14:35 RTE I Undisplayed message:[INFO][BDM_Mapping_Config]: load smFieldTypes, fileName = probsummary
2936( 5500) 10/21/2016 16:14:35 RTE I Undisplayed message:[INFO][BDM_Mapping_Config]: init __bdm_sm_field_types ...
2936( 5500) 10/21/2016 16:14:35 RTE I Undisplayed message:[INFO][BDM_Mapping_Config]: load mapping config: incident, version = 1.1
2936( 5500) 10/21/2016 16:14:35 RTE I Undisplayed message:[INFO][BDM_Mapping_Config]: -> __createSMBDMMappingConfig ...
2936( 5500) 10/21/2016 16:14:35 RTE I Thread termination cleanup complete. Thread was active for 0 days,00:00:16. Threads remaining: 2 of 50

0 Likes
22 Replies
Highlighted
Super Contributor.
Super Contributor.

Hello Wboy,

Could you open a case under product "Service Manager" for further investigation?

We need to do debug on the integration port, instead of integration manager in SM itself.

Trigger an event to create a ticket in SM, the debug parameters against integration port will tell us what SM had done in backend.

Estelle

0 Likes
Highlighted
Super Contributor.
Super Contributor.

That function is to assign default value to "subcategory" in SM. It should have been working if everything else goes fine.

0 Likes
Highlighted
Honored Contributor.
Honored Contributor.

How should SM default value be defined? There is no example. Will it take SM default value and ignore all other configuration for field? How does this mapping even work?

0 Likes
Highlighted
Micro Focus Expert
Micro Focus Expert

Hi,

from the BSM/OMI groovy script the value of incident_type is of value incident (the groovy is OOB)

So please check the groovy script.

Also in SM script incidentDAO , we have mentioned the category should be incident

The script have line

 if( obj.category != "incident" )
throw new lib.BasicDAO.ValidationFailedException(this.tableName, "The BDM incident_type (Category field of probsummary) has to be \"incident\" while creating a new incident in SM.");

so if category is not incident, you will get the error

Error
"the BDM incident_type (Category field of probsummary) has to be "incident" while creating

Categogry and sub category if it is not passed from OMI, it will take the value from BDM mapping.

So you need to check groovy script and BDM mapping and SM script incidentDAO

I hope this helps.

Thanks & Regards
Animesh

Highlighted
Honored Contributor.
Honored Contributor.

Hi,

in groovy script there are many "incident" values, do not have a clue what to correct - there is no description regarding the modification. I have separate workflow and category for only reason so separate incidents coming from OMi and incidents from service desk.

Not sure what I need to update on script incidentDAO, I hope this is not hardcoded that only with category incident can be opened.

If I set same area and subarea on incident, will validation go trough?

Regards

0 Likes
Highlighted
Honored Contributor.
Honored Contributor.

Incident is locked, can not add new subcategories, do not have option delete, it looks like I can only change workflow.

0 Likes
Highlighted
Honored Contributor.
Honored Contributor.

I have changed groovy script and replaced incident with CNO incident and everything stopped working - this is not ok, but I would like to use completely different category and workflow so I can divide incidents on OMi and from service desk.

 

I have returned groovy script back to original, changed workflow for category Incident, updated mapping:

category = $defaultValueOfCreate("incident")

subcategory = $defaultValueOfCreate("failure")

product.type = $defaultValueOfCreate("error message")

Incident has opened, but it did not set subcategoy properly, it has written category from event and overwritten mapping. So next step was to modify direction for subcategry from <-> to <- and now incident is opened with set value.

 

With this configuration I can continue to develop PD workflow, but now I have 2 new questions:

- What needs to be changed for new CNO incident category to work?

- Why is not possible to edit incident category with new subcategories? Button "Link New Subcategories" is read only.

 

Regards

Highlighted
Micro Focus Expert
Micro Focus Expert

Hi,

Thanks for the reply.

As you mentioned

Button "Link New Subcategories" is readonly

you can always to form designer and remove the readonly from there and add the sub categories.

I have done this before.

Regarding your other query

What needs to be changed for new CNO incident category to work?

you need to put this query to OMI forum as the category incident is sent by OMI to SM. So modification need to be done at OMI end.The link for OMI forum is

/t5/Operations-Manager-i-Support/bd-p/operations-manager-i-support-customer#.WBFwJC196M9

Thanks & Regards

Animesh

0 Likes
Highlighted
Micro Focus Expert
Micro Focus Expert

Hi,

We check further and found that

Category value shown in SM ticket is different from the Category in OMi event

So Catergory value incdient is coming from SM and not from OMI.

then in BDM Mapping as you know

the Category value is "$defaultValueOfCreate("incident")

So this mean category value is decided by SM BDM mapping and not OMi.

Also in SM, the Category has to be "incident", otherwise iy will throw exception as defined in the Script IncidentDAO as mentioned previously by me.

So i think we need to change the BDM mapping for category value , then we need to change the script and also make sure category exist in imCategory table and see if it is picking up the new category.

Thanks & Regards

Animesh

0 Likes
Highlighted
Honored Contributor.
Honored Contributor.

Hi,

I have been busy and did not had time for testing. What ever is set in BDM mapping for category it is always set to incident and this must be somewhere hardcoded. Script IncidentDAO only has throw new if category is different than incident

if( obj.category != "incident" )
throw new lib.BasicDAO.ValidationFailedException(this.tableName, "The BDM incident_type (Category field of probsummary) has to be \"incident\" while creating a new incident in SM.");

What exactly is executed when incident comes from OMi and how does the mapping affect? Do you know where is this incident category hardcoded?

Regards

Highlighted
Honored Contributor.
Honored Contributor.

Hi,

just to update you, issue was resolved. What I needed to do is:

- change parameter in groovy script INCIDENT_TYPE = 'incident'

- change BDM mapping for category and direction

- comment the IncidentDAO the part:
if( obj.category != "incident" )
throw new lib.BasicDAO.ValidationFailedException(this.tableName, "The BDM incident_type (Category field of probsummary) has to be \"incident\" while creating a new incident in SM.");

Regards

View solution in original post

The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.