How to copy Impacted CI from Problem to Affected CI of Problem Task

Elena7
Tera Expert

Hello,

 

Wa recentely started to use a Problem module. I have a question: how to copy the Impacted CI's field from the Problem form to an Affected CI's field of the Problem Task' form. I also want to have a condition, if Impacted CI's field changes in the Problem, so the value in the Affected CI's field in Problem Task changes too.

 

The fields 'Impacted CI' and 'Affected CI' have different types. So I wanted to know what is the best way to do it?

 

 The Impacted CI's field on the Problem form:

Elena7_0-1693992494791.png

 

The affected CI's field on the Problem Task's form:

Elena7_1-1693992582985.png

 

Thank you in advance for your answers,

 

Elena

1 ACCEPTED SOLUTION

Hi @Elena7 Sorry for the confusion,  Can you Please revert back to the initial version of my Business Rule on "Problem task "table and on top of it Create a new Business rule on the "Problem" table as below:

 

EswarChappa_0-1694021575592.png

EswarChappa_1-1694021622326.png

 

(function executeRule(current, previous /*null when async*/ ) {
    var PT = new GlideRecord('problem_task');
    PT.addQuery('problem', current.sys_id);
    PT.query();
    while (PT.next()) {
        PT.cmdb_ci = current.cmdb_ci;
        PT.update();
    }
})(current, previous);

 

Thanks & Regards,

Eswar Chappa

Mark my answer correct and Helpful if this helps you 😀

View solution in original post

11 REPLIES 11

AndersBGS
Tera Patron
Tera Patron

Hi @Elena7 ,

 

This should be possible through a business rule and a script to do an automatic update.

 

If my answer has helped with your question, please mark my answer as accepted solution and give a thumb up.

 

Best regards

Anders

If my answer has helped with your question, please mark my answer as the accepted solution and give a thumbs up.

Best regards
Anders

Rising star 2024
MVP 2025
linkedIn: https://www.linkedin.com/in/andersskovbjerg/

Hello @AndersBGS ,

 

Thank you for your answer. Do you have an example of a Business rule. As the fields 'Impacted CI' and 'Affected CI' have different types, I don't know how to do it.

 

Thank you in advance,

Elena 

Hi @Elena7 ,

 

I can see that many scripts has been provided, did you make it work or do you need any additional information?

 

f my answer has helped with your question, please mark my answer as accepted solution and give a thumb up.

 

Best regards

Anders

If my answer has helped with your question, please mark my answer as the accepted solution and give a thumbs up.

Best regards
Anders

Rising star 2024
MVP 2025
linkedIn: https://www.linkedin.com/in/andersskovbjerg/

p_n
Tera Guru

Hello @Elena7 
The affected CIs table is task_ci. You have to create a business rule on the problem record with the after-update condition Impacted CI changes. GlideRecord problem task table with problem and then problem task table with task_ci tables. Update the task CI configuration item field with the problems impacted CI field. Refer to below script.

 

 

 

var problemTask = new GlideRecord('problem_task');
	problemTask.addQuery('problem', current.sys_id);
	problemTask.query();
	while(problemTask.next()){
		var taskCI = new GlideRecord('task_ci');
        taskCI.addQuery('task', problemTask.sys_id );
		taskCI.query();
		while(taskCI.next()){
			taskCI.ci_item = current.u_impacted_cis; // impacted ci field
			taskCI.update();
		}	
	}

 

 

 

Mark my answer correct and Helpful if this helps you
Thank you!!