Fabian10
Tera Guru

Here's my solution.

Create a Client Script (not Catalog Client Script) which runs on the Service Portal for the table sc_req_item:

function onLoad() {

	var $ = parent.$;

	function makeVariablesReadOnly() {
		var inputs = $('sp-variable-layout sp-variable-layout').find('input, textarea, select');
		for (var i=0; i<inputs.length; i++) {
			$(inputs[i]).attr('disabled', 'disabled');
		}
		setTimeout(makeVariablesReadOnly, 1000);
	}
	
	makeVariablesReadOnly();

}

 

Advantage: Customization of Widgets not needed

Disadvantage:

- Uses undocumented parent-variable and jQuery

- Runs every second