Notifications

49 views

Description

Symptoms

Dot walking was not working in reports for catalog task table when the language is changed from English to French. For example, on the sc_task.list when we dot-walked with filter conditon as below,

Request item.item.short description CONTAINS computer

System returns results when the session language is in English. But not returning results when the session language is set to French.

Release

Any supported release.

Cause

  • When you switch the language to French, then performing a search on the dot-walked catalog item field (as shown in below url https://<InstanceName>.service-now.com/sc_task_list.do?sysparm_query=request_item.cat_item.short_descriptionLIKEcomputer),┬ásystem is looking for translation entries in sys_translated_text table with the keyword searched, for example, on the sys_translated_text table, it looks for language=fr, table=sc_cat_item & document = <sys_id_of_catalog_item>.
  • If there are matching entries exists in sys_translated_text table, then we get the required results in French language session
  • Following is the query formed at the backend during French language session for the above dot-walking on the sc_task.list,
08:21:36.580: Time: 0:00:33.018 id: xxxxxxxx[glide.5] for: SELECT count(*) AS recordcount FROM 
(((task task0 LEFT JOIN task task1 ON task0.`a_ref_2` = task1.`sys_id` ) LEFT JOIN sc_cat_item sc_cat_item2 ON task1.`a_ref_1` = sc_cat_item2.`sys_id` )
LEFT JOIN sys_translated_text sys_translated_text3 ON sc_cat_item2.`sys_id` = sys_translated_text3.`documentkey` AND sys_translated_text3.`fieldname`='short_description'
AND sys_translated_text3.`language`='fr' ) WHERE task0.`sys_class_name` = 'sc_task' AND sys_translated_text3.`value` LIKE '%computer%'
SQL08:21:36.580: Time: 0:00:33.018 for: xxxxxxx[glide.5] SELECT ... FROM (((task task0 LEFT JOIN
task task1 ON task0.`a_ref_2` = task1.`sys_id` ) LEFT JOIN sc_cat_item sc_cat_item2 ON task1.`a_ref_1` = sc_cat_item2.`sys_id` )
LEFT JOIN sys_translated_text sys_translated_text3 ON sc_cat_item2.`sys_id` = sys_translated_text3.`documentkey` AND
sys_translated_text3.`fieldname`='short_description' AND sys_translated_text3.`language`='fr' ) WHERE task0.`sys_class_name` = 'sc_task'
AND sys_translated_text3.`value` LIKE '%computer%' /*...*/

Resolution

  • Create a sys_translated_text entries for the specific catalog items with French language and with the value contains "computer" so that it can return in the results OR
  • Switch the session language to French, then update the catalog items short description, this will create the required sys_translated_text entries automatically

Additional Information

Translated text

Article Information

Last Updated:2019-08-02 20:45:19
Published:2019-05-10