Math argument type mismatch when resetting scoreboard

book

Article ID: 242075

calendar_today

Updated On:

Products

CA Service Management - Service Desk Manager

Issue/Introduction

User is unable to reset their scoreboard.  

stdlog shows this message when user is trying to do a reset of their scoreboard

 5444 ERROR        pcexec.c              6510 Spell interp failed at usq::copy_tree (...) cr.spl:5796: Math argument type mismatch

Cause

There is a data corruption in the User_Query table that needs to be resolved.

Environment

Release : 17.3

Component : SDM - Classic UI

Resolution

- In a command prompt, run:

pdm_extract -f "Select id from ca_contact where userid = 'XXXX'"

(replace 'XXXX' with the affected user's userid)

This will generate an output that reads like this:

TABLE ca_contact
id
{ "818E24BF602FC342B55622AEA7E6479F" }
ca_contact
rows:1

The long alphanumeric string is the UUID for the given user. Keep this value handy.

- Run the following command to obtain just the affected user's scoreboard entries. In this case, you will need the UUID value to complete the query. The complete command (with the UUID present) is:

pdm_extract -f "Select * from User_Query where obj_persid = 'cnt:818E24BF602FC342B55622AEA7E6479F'" > user-usq1.dat

One will need to review the content of the user_usq1.dat file (readable in Notepad) to pinpoint the specific corruption.  Once the corruption is located, the table can be loaded back in using a modified user-usq1.dat file with the necessary changes:

pdm_load -f user-usq1.dat

Additional Information

Ideally, one should try to restore the User_Query table from a backup that lacks the problem, but if that is not possible, one can try the above to narrow the problem down for a specific user.  One should also back up the User_Query table prior to making any changes.

In one such case, the parent column of the given table was found to have a NULL value and it has to be "0".