HTML Script

I’ve been reusing a HTML script for different relationship tabs with good success. In this html script there’s a varable “ids” that is assigned the “id” value, but in this case I need to read a property name “item_number” instead of “id”. How do I make “ids” equal to “item_number” instead of “id”. I embedded my AML code below in //*******// so its easier to find. <!DOCTYPE html> <!– (c) Copyright by Aras Corporation, 2004-2013. –> <html> <head> <style type=”text/css”> @import “../../javascript/dojo/resources/dojo.css”; @import “../../javascript/dijit/themes/claro/claro.css”; @import “../../javascript/dojox/grid/resources/claroGrid.css”; @import “../../javascript/dojox/form/resources/CheckedMultiSelect.css”; @import “../../javascript/include.aspx?classes=common.css”; html, body { overflow: hidden; width: 100%; height: 100%; margin: 0px; padding: 0px; } #toolbar_slot { vertical-align: top; width: 100%; height: 30px; margin: 0px; padding: 0px; } #gridTD { vertical-align: top; width: 100%; height: 100%; margin: 0px; padding: 0px; } </style> <script type=”text/javascript” src=”../../javascript/include.aspx?classes=ScriptSet2″></script> <script type=”text/javascript” src=”../../javascript/include.aspx?classes=XmlDocument”></script> <script type=”text/javascript” src=”../PLM/javascript/gridTools.js”></script> <script type=”text/javascript” src=”../PLM/javascript/toolbarTools.js”></script> <script type=”text/javascript” src=”../../javascript/include.aspx?classes=/dojo.js” data-dojo-config=”isDebug: false, parseOnLoad: false, baseUrl:’../../javascript/dojo'”></script> </head> <body class=”claro”> <script type=”text/javascript”> var toolbarReady = false, gridReady = false, isEditMode = false, GridXmlLoadedFirstTime = true, innovator = new top.Innovator (), changesHelper = new ChangesHelper (), grid, toolbar; window.onresize = fixGridHeight; window.addEventListener(“DOMContentLoaded”, function () { clientControlsFactory.createControl(“Aras.Client.Controls.Public.Toolbar”, {id: “toolbar”, connectId: “toolbar_slot”}, function(control) { toolbarApplet = toolbar = control; clientControlsFactory.on(toolbar, { “onClick”: onToolbarButtonClick }); loadToolbar(); }); clientControlsFactory.createControl(“Aras.Client.Controls.Public.GridContainer”, {connectId: “gridTD”}, function(control) { gridApplet = grid = control; clientControlsFactory.on(grid, { “gridXmlLoaded”: function(isSuccess) { if (GridXmlLoadedFirstTime) { GridXmlLoadedFirstTime = false; onXmlLoaded(); } }, “gridLinkClick”: function(linkVal) { if (linkVal.length) { showItemForm(linkVal); } }, “gridRowSelect”: onRowSelect, “gridDoubleClick”: doDoubleClick }); initGrid(); onGridLoad(); fixGridHeight(); }); }); function showItemForm(linkVal) { linkVal = linkVal.replace(/’/g, “”); var typeName = linkVal.split(“,”)[0]; var id = linkVal.split(“,”)[1]; top.aras.uiShowItem(typeName, id, “tab view”); } function fixGridHeight() { var el = document.getElementById(“gridTD”); top.aras.fixLiquidContainerHeight(document, el); el.style.height = window.innerHeight – toolbar_slot.offsetHeight + “px”; } function ChangesHelper() { this.CreateQuery = function ChangesHelper_CreateQuery(aml) { var query = innovator.newItem(); query.loadAML(aml); return query; } this.GetResult = function ChangesHelper_GetResult(query) { var changes = query.apply(); var changesCount = changes.getItemCount(); if (changesCount === -1) { top.aras.AlertError(changes.getErrorDetail()) } return changes.getItemsByXPath(“//Item[@type=’MIN_RMA’]”); } this.GetItemTypeLabel = function ChangesHelper_GetItemTypeLabel(typeName) { var it = top.aras.getItemByName(“ItemType”, typeName, 0); return top.aras.getItemProperty(it, “label”); } } function Change(relationshipName, itemIds) { var ids = “‘” + itemIds.toString().replace(/,/g, “‘,'”) + “‘”; //************************************************************************************************************** var aml = “<Item type='” + relationshipName + “‘ action=’get’>” + “<Relationships><Item type=’MIN_RMA_PARTS’ action=’get’ select=’related_id’><item_number>” + ids + “</item_number></Item></Relationships></Item>” //*************************************************************************************************************** var query = changesHelper.CreateQuery(aml); this.GetResult = function Change_GetResult() { return changesHelper.GetResult(query); } this.GetType = function Change_GetType() { return “MIN_RMA”; } this.GetLabel = function Change_GetLabel() { return changesHelper.GetItemTypeLabel(this.GetType()); } } function GetAllGenerationsIds(objConfigId, objType) { var itemQey = innovator.newItem(objType, “get”); itemQey.setAttribute(“select”, “id”); itemQey.setProperty(“config_id”, objConfigId); itemQey.setProperty(“id”, “”); var id = itemQey.node.selectSingleNode(“id”); id.setAttribute(“condition”, “is not null”); items = itemQey.apply(); var itemsCount = items.getItemCount(); var itemsGenIds = []; for (var i = 0; i < itemsCount; i++) { itemsGenIds[i] = items.getItemByIndex(i).getProperty(“id”); } return itemsGenIds; } function initGrid() { // Get the part Object var thisItem = top.document.getElementById(“instance”).contentDocument.thisItem; // thisItem could be a part or document var objId = thisItem.getProperty(“id”); var objType = thisItem.getType(); var objConfigId = thisItem.getProperty(“config_id”); var itemsGenIds = GetAllGenerationsIds(objConfigId, objType); var SCOTracker = new Change(“MIN_RMA”, itemsGenIds); // Convert the Grid Data to DOM var gridDom = top.aras.createXMLDocument(); gridDom.load(top.aras.getI18NXMLResource(“dcrma.xml”, top.aras.getScriptsURL() + “../Solutions/ZenetexMRO/”)); var tmpDom = top.aras.createXMLDocument(); var trackers = [SCOTracker]; var valsArr, valsArr0, linkParam, d, nds; for (var i = 0; i < trackers.length; i++) { var tracker = trackers[i]; var itms = tracker.GetResult(); for (var j = 0; j < itms.getItemCount(); j++) { var itm = itms.getItemByIndex(j); var id = itm.getAttribute(“id”); valsArr = [itm.getProperty(“rma_no”, “”), itm.getProperty(“problem_description”, “”), itm.getProperty(“vendor”, “”), itm.getProperty(“modified_on”, “”)]; for (var k = 0; k < valsArr.length; k++) { if (!valsArr[k]) valsArr[k] = “”; } tmpDom.loadXML(“ <td/><td/><td/><td/>“); d = tmpDom.documentElement; d.setAttribute(“id”, id); d.setAttribute(“action”, id); nds = d.selectNodes(“td”); for (var k = 0; k < nds.length; k++) { nds[k].text = valsArr[k]; if (k == 0) { nds[k].setAttribute(“id”, id); nds[k].setAttribute(“link”, “‘” + tracker.GetType() + “‘,'” + id + “‘”); } } gridDom.selectSingleNode(“/table”).appendChild(tmpDom.selectSingleNode(“/tr”)); } } grid.InitXML(gridDom.xml); updateToolbar(); } function doDoubleClick(rowId) { if (!rowId) { rowId = grid.getSelectedId(); } if (rowId != “”) { var linkValue = grid.cells(grid.getSelectedId(), 1).cell_Experimental.Numberlink; if (linkValue) showItemForm(linkValue.toString()); } } function loadToolbar() { toolbarReady = true; toolbar.loadXml(top.aras.getI18NXMLResource(“changes_toolbar.xml”, top.aras.getScriptsURL() + “../Solutions/PLM/”)); toolbar.ShowToolbar(“tb1”); initToolbar(); } function onToolbarButtonClick(item) { grid.turnEditOff(); if (item.getId() == “refresh”) { initGrid(); } if (item.getId() == “show_item”) { doDoubleClick(); } } function onXmlLoaded() { updateToolbar(); } function onRowSelect(rowId) { setControlEnabled(“show_item”, rowId ? true : false); } </script> </body> </html>