SAM Professional Create a Reserve Entitlement
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-27-2024 08:59 AM
When creating a reserver entitlement from the workspace. The actual record producer form appear and not the record producer.
But when not in the workspace it works fine.
This is an out of the box configuration not sure what needs to be changed in the following UI ACTION to make it work in the workspace:
function onClick(g_form) {
var ga = new GlideAjax('SAMPReserveEntitlementAjaxUtil');
ga.addParam('sysparm_name', 'getDerivedReserveEntitlementDetail');
ga.addParam('sysparm_sourceEntitlementSysId', g_form.getUniqueValue());
ga.getXML(createReserveEntitlement);
}
function createReserveEntitlement (response) {
var RESERVE_ENTITLEMENT_RECORD_PRODUCER = '547c0b0e77263300edfc0ff9ba1061c6';
var result = response.responseXML.getElementsByTagName('result');
var resultObj = result[0].getAttribute('sysparm_resp');
resultObj = JSON.parse(resultObj);
var softwareModel = g_form.getValue('software_model');
var endDate = g_form.getValue('end_date');
var sysId = g_form.getUniqueValue();
var currencyCode = g_form.getValue('unit_cost.currency');
var licenseMetric = g_form.getValue('license_metric');
var metricGroup = g_form.getValue('metric_group');
var userDateFormat = g_date_time_format;
userDateFormat = userDateFormat.substring(0,10);
//clear stale values from storage
localStorage.removeItem("softwareModel");
localStorage.removeItem("endDate");
localStorage.removeItem("sysId");
localStorage.removeItem("currencyCode");
localStorage.removeItem("licenseMetric");
localStorage.removeItem("metricGroup");
localStorage.removeItem("unitCost");
localStorage.removeItem("minDate");
localStorage.removeItem("maxDate");
localStorage.removeItem("userDateFormat");
//set new values
localStorage.setItem("softwareModel", softwareModel);
localStorage.setItem("endDate", endDate);
localStorage.setItem("sysId", sysId);
localStorage.setItem("currencyCode", currencyCode);
localStorage.setItem("licenseMetric", licenseMetric);
localStorage.setItem("metricGroup", metricGroup);
localStorage.setItem("userDateFormat",userDateFormat);
var url = 'com.glideapp.servicecatalog_cat_item_view.do?sysparm_id=' + RESERVE_ENTITLEMENT_RECORD_PRODUCER + '&sysparm_softwareModel=' + softwareModel + '&sysparm_sourceEntitlement=' + sysId + '&sysparm_currencyCode=' + currencyCode + '&sysparm_licenseMetric=' + licenseMetric + '&sysparm_metricGroup=' + metricGroup;
if (resultObj.monthlyUnitCost) {
localStorage.setItem("unitCost", resultObj.monthlyUnitCost);
}
if (resultObj.endDate) {
localStorage.setItem("endDate", resultObj.endDate);
}
if (resultObj.minDate) {
localStorage.setItem("minDate", resultObj.minDate);
}
if (resultObj.maxDate) {
localStorage.setItem("maxDate", resultObj.maxDate);
}
//make fields readonly
g_form.setReadOnly('publisher_part_number', true);
g_form.setReadOnly('software_model', true);
g_form.setReadOnly('product_type', true);
g_form.setReadOnly('metric_group', true);
g_form.setReadOnly('license_metric', true);
g_form.setReadOnly('number_of_packs', true);
g_form.setReadOnly('rights', true);
g_form.addInfoMessage(getMessage("Some fields are made readonly as reserve entitlement exists/creation in progress "));
//open catalog item
var params = {};
params.sysparm_parent_table = "alm_license";
params.sysparm_parent_sys_id = g_form.getUniqueValue();
g_service_catalog.openCatalogItem('sc_cat_item', RESERVE_ENTITLEMENT_RECORD_PRODUCER, params);
}
This is from the Workspace section:
0 REPLIES 0