Submitting a record producer through server script
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-17-2023 05:06 AM
I'm using the below code, but not able to set the values for the multi row variable set.
var recordProducerId = '';
var obj = {};
var obj1 = {};
recordProducerId = "0071f3bf97a431105bfd7a200153aff0";// sys id of the recordProducer
obj1.test_one = 'abc';
obj1.test_two = 'cde';
// multirow variables
var mrvs={};
var mrvs_arr=[];
mrvs.variable_1= 'test';
mrvs.variable_2= 'check';
mrvs.variable_3 = 'testing mvrs';
mrvs_arr.push(mrvs);
obj1.multi_row =JSON.stringify(mrvs_arr);
obj.variables = obj1;
var request_body = obj;
var catalogUtil = new RestCatalogUtil();
var catalogItem = new sn_sc.CatItem(recordProducerId);
for (var key in request_body.variables)
if (request_body.variables.hasOwnProperty(key) && request_body.variables[key] != null && typeof(request_body.variables[key]) !== 'string')
request_body.variables[key] = catalogUtil.getFieldValueAsString(key, request_body.variables[key], recordProducerId);
var variables = request_body.variables || {};
var messages = catalogUtil.validateVariableRegex(recordProducerId, variables);
var mrvsErrorMessages = catalogUtil.validateMaxRowCountMultiRowVS('sc_cat_item', recordProducerId, recordProducerId, request_body.variables);
request_body.sysparm_id = recordProducerId;
request_body.sysparm_action = 'execute_producer';
if (!request_body.sysparm_item_guid)
request_body.sysparm_item_guid = gs.generateGUID('');
var response_body = {};
try {
response_body = catalogItem.submitProducer(request_body);
} catch (e) {
gs.debug(e);
}
var number = response_body.number;
var sys_id = response_body.sys_id;
gs.print("Inserted REQ number/ sys_id: " + sys_id);
gs.print("Inserted REQ string sys_id: " + number);