/**************************************************************** ** Licensed Materials - Property of IBM ** ** BI and PM: qs ** ** (C) Copyright IBM Corp. 2001, 2015 ** ** US Government Users Restricted Rights - Use, duplication or ** disclosure restricted by GSA ADP Schedule Contract with IBM Corp. *****************************************************************/ // Copyright (C) 2008 Cognos ULC, an IBM Company. All Rights Reserved. // Cognos and the Cognos logo are trademarks of Cognos ULC (formerly Cognos Incorporated) in the United States and/or other countries. IBM and the IBM logo are trademarks of International Business Machines Corporation in the United States, or other countries, or both. Other company, product, or service names may be trademarks or service marks of others. var newMetadataObjects = null; var allMetadataObjects = new Array(); var metadataTree = null; var activeNodeFetches = new Array(); var metadataErrors = new Array(); var processMetadataRecursion = true; var metadataTreeTracking = ""; var greMETADATA_APOS = /'/g; var greMETADATA_APOS_ESCAPE = /\\'/g; var greMETADATA_COMMA = /&comma/g; var greMETADATA_GREATERTHAN = /\\>/g; var greMETADATA_LESSTHAN = /\\ -1){e.cancelBubble = true;return false;}}, true); if (window.ie) { metadataTreeNode.addEventListener("dragover", function(e) {e.preventBubble();}, true); metadataTreeNode.addEventListener("dragdrop", function(e) {e.preventBubble();}, true); } } metadataTree = new CTree (metadataTreeNode, gsMETADATA_EMPTY, false, true, "metadataTree"); metadataTree.setLoadOnTheFlyFunction(loadFunc); metadataTree.setSelectionMode(CONTIGUOUS_TREE_SELECTION); metadataTree.setSelectTreeUI(NORMAL_TREE); metadataTree.setAllowDragDrop(true); metadataTree.setOnDragStart(onDragStartF); metadataTree.setOnDrag(onDragF); metadataTree.setOnDragEnd(onDragEndF); metadataTree.setContextMenu(treeContextMenuFunc); metadataTree.setTrackSelectionOrder(true); metadataTree.setSingleClickFunc(singleClickMetadata); metadataTree.setDoubleClickFunc(addSelectedDblClick); metadataTree.setHideOuterTable(true); } }; function doMetadataTree() { var cmLastModel = cfgGet("cmLastModel"); if (cmLastModel != null && typeof goApplicationManager.getMiniQueryManager().getCRQReportNode() == "object") { setupMetadataTree(); if (metadataTree.getHasBeenDrawn() == false) { metadataTree.removeLoading(metadataTree.getRootNode()); metadataTree.drawAll(); metadataTree.checkData(); } autoSetMetadataContainerHeight(); } else { setTimeout(doMetadataTree, 100); } }; function getMetadataRequestString(model, startAtPath, depth, contextNodeRef) { var cl=""; var pl=""; var el = goApplicationManager.getMiniQueryManager().getCRQReportNode().getAttribute("expressionLocale"); var cookieValues = document.cookie.split(gsMETADATA_SEMICOLON); for (var i = 0; i < cookieValues.length; i++) { if (cookieValues[i].match(/^\s*CRN=/i)) { var aLocales = decodeURIComponent(decodeURIComponent(cookieValues[i].split("=")[1])).split("&"); for (var j = 0; j < aLocales.length; j++) { if (aLocales[j].match(/^contentLocale=/i)) { cl = aLocales[j].split("=")[1]; } if (aLocales[j].match(/^productLocale=/i)) { pl = aLocales[j].split("=")[1]; } } } } if (cl == "") { cl = goApplicationManager.get("contentLocale"); } if (pl == "") { pl = goApplicationManager.get("productLocale"); } var sUrl = ""; if (model) { sUrl += "&model=" + model; } if (cl) { sUrl += "&cl=" + cl; } if (pl) { sUrl += "&pl=" + pl; } if (el) { sUrl += "&el=" + el; } if (depth) { sUrl += "&depth=" + depth; } if (startAtPath) { sUrl += "&startAtPath=" + startAtPath; } if (contextNodeRef) { sUrl += "&contextNodeRef=" + encodeURIComponent(contextNodeRef); } if (processMetadataRecursion) { sUrl += "&processRecursion=1"; } if (goApplicationManager.getFeatureRegistry().isRegistered("MetaExtensions") == true) { sUrl += "&showMetaExtensions=1"; } if (goApplicationManager.getReportManager().getParameterManager().getExecutionParameters() !== null) { sUrl += "&executionParameters=" + encodeURIComponent(goApplicationManager.getReportManager().getParameterManager().getExecutionParameters()); } if (goApplicationManager.getReportManager().getParameterManager().getMetadataParameters() !== null) { sUrl += "&metadataParameters=" + encodeURIComponent(goApplicationManager.getReportManager().getParameterManager().getMetadataParameters()); } else if (cfgIsValid("parameterValues") && cfgGet("parameterValues").indexOf("item") > -1) { sUrl += "¶meterValues=" + encodeURIComponent(cfgGet("parameterValues")); } for (var i = 0; i < cfgSize("filter_promptValuesXML"); i++) { sUrl += "&promptValues=" + encodeURIComponent(cfgGetAt("filter_promptValuesXML", i)); } return sUrl; }; function doMetadataRequest(request) { var url = "b_action=xts.run&m=/" + qs_dir + "/metadata.xts" + request; if (cafContextId != "") { url += "&ui.cafcontextid=" + cafContextId; } if (metadataTreeTracking != "") { url += "&m_tracking=" + metadataTreeTracking; } if (typeof routingServerGroup != "undefined") { url += "&ui.routingServerGroup=" + encodeURIComponent(routingServerGroup); } if (cfgGet("markup_track") != "undefined") { url += "&markup_track=" + cfgGet("markup_track"); } cfgSet("CURRENT_REQUEST",request); setDispatcherErrorHandler(errorHandler); sendDispatcherRequestWithXMLResponse(url, getMetadataResponse); }; function releaseMetadataRequest() { if (metadataTreeTracking != "") { doMetadataRequest("&qs_releaseConversation=true"); } cfgSet("markup_track",""); }; function promptResponse(parameters, response, conversation, clientContext, tracking) { if (response == "Cancel" || response == "Error") { closeLink(); } else { metadataTreeTracking = tracking; var XMLNodes = null; var x = cfgGet("parameterValues"); if (x) { XMLNodes = new XMLParser(cfgGet("parameterValues")); } if (parameters && parameters.length> 0) { if (XMLNodes == null) { XMLNodes = parameters.join(" "); } else { for (var i = 0; i < parameters.length; i++) { XMLNodes.appendChild(parameters[i]); } } goApplicationManager.getReportManager().getParameterManager().setMetadataParameters(XMLNodes.toString()); goApplicationManager.getReportManager().getParameterManager().setMetadataParametersPassed(false); var request = getMetadataRequestString() + "&contextNodeRef=" + clientContext; if (clientContext && clientContext.indexOf("metadataFunctionListResponse:") >= 0) { request += "&functionList=" + encodeURIComponent(response); setTimeout("sendFunctionListRequest('" + request + "');", 100); } else { request += "&metadataTree=" + encodeURIComponent(response); setTimeout("doMetadataRequest('" + request + "');", 100); } if (typeof goApplicationManager.getMiniQueryManager().getCRQReportNode().getAttribute("limitData") == "string") { goApplicationManager.getFeatureManager().launchFeature('Run', new Array(goApplicationManager.getMiniQueryManager().getCRQReportNode().getAttribute("limitData"))); } else { goApplicationManager.getFeatureManager().launchFeature('Run', new Array('full')); } } var request = cfgGet("CURRENT_REQUEST"); if (clientContext && clientContext.indexOf("metadataFunctionListResponse:") >= 0) { request += "&functionList=" + encodeURIComponent(response); setTimeout("sendFunctionListRequest('" + request + "');", 100); } else { request += "&metadataTree=" + encodeURIComponent(response); setTimeout("doMetadataRequest('" + request + "');", 100); } } }; function getMetadataResponse(responseXML) { var response = ""; try { if (typeof responseXML == "object" && responseXML != null) { var oElement = responseXML.getElementsByTagName("xmlResponse")[0]; if (typeof oElement == "object" && oElement != null) { var oNodeCollection = oElement.childNodes; for (var idxColl = 0; idxColl < oNodeCollection.length; idxColl++) { response += oNodeCollection[idxColl].nodeValue; } } } } catch (e) { return; } if (response === "") { return; } var metadataObjects = response.split(gsMETADATA_SEMICOLON); var nodeDepth = 0; var lastNodeDepth = 0; if (metadataObjects[0] == "working") { var request = "&doWait=1&contextNodeRef=" + jsdecode(metadataObjects[1]) + "&m_tracking=" + jsdecode(metadataObjects[2]) + fetchAllParametersAsURLSnippet(); if (metadataObjects[3] != "") { request = request + "&depth=" + jsdecode(metadataObjects[3]); } if (processMetadataRecursion) { request += "&processRecursion=1"; } request += "&model=" + cfgGet("cmLastModel"); if (typeof routingServerGroup != "undefined") { request += "&routingServerGroup=" + encodeURIComponent(routingServerGroup); } setTimeout("doMetadataRequest('" + request + "');", 100); } else if (metadataObjects[0] == "prompting") { var reportFrame = getReportFrame(); var frmWarpRequest = reportFrame.document.createElement("form"); reportFrame.document.body.appendChild(frmWarpRequest); frmWarpRequest.setAttribute("name", "formWarpRequest"); frmWarpRequest.setAttribute("id", "formWarpRequest"); frmWarpRequest.setAttribute("method", "post"); frmWarpRequest.setAttribute("action", jsdecode(metadataObjects[1])); frmWarpRequest.appendChild(createInput("b_action", "xts.run")); frmWarpRequest.appendChild(createInput("m", "prompting/promptDataSource.xts")); frmWarpRequest.appendChild(createInput("ccs_invoke", "parent")); frmWarpRequest.appendChild(createInput("clientContext", jsdecode(metadataObjects[2]))); frmWarpRequest.appendChild(createInput("isEncoded", "1")); frmWarpRequest.appendChild(createInput("ui.conversation", jsdecode(metadataObjects[3]))); frmWarpRequest.appendChild(createInput("tracking", jsdecode(metadataObjects[4]))); frmWarpRequest.appendChild(createInput("releaseConversation", "1")); if (typeof routingServerGroup != "undefined") { frmWarpRequest.appendChild(createInput("routingServerGroup", routingServerGroup)); } if (processMetadataRecursion) { frmWarpRequest.appendChild(createInput("processRecursion", "1")); } var value = ""; var moLength = metadataObjects.length; for (var i = 5; i < moLength; i++) { if (i < moLength - 1) { value += jsdecode(metadataObjects[i]) + gsMETADATA_SEMICOLON; } else { value += jsdecode(metadataObjects[i]); } } frmWarpRequest.appendChild(createInput("htmlFragment", value)); frmWarpRequest.submit(); } else { if (metadataObjects[0] != gsMETADATA_FAULT) { metadataTreeTracking = metadataObjects.shift(); } newMetadataObjects = new Array(); var activeNodeName; var iMOlength = metadataObjects.length; if (iMOlength > 0) { if (metadataObjects[0] == gsMETADATA_FAULT) { if (cfgGet(gsMETADATA_META_TreeLoadedFirstTime) == gsMETADATA_loading) { cfgSet(gsMETADATA_META_TreeLoadedFirstTime, gsMETADATA_failed); } cfgSet("LAST_ACTION", "metadataTree"); var bDisplayMetadataIfAvailable = metadataFault(jsdecode(metadataObjects)); if (bDisplayMetadataIfAvailable) { metadataTree.childrenReadyForNode(metadataTree.getRootNode()); } return false; } else if ((response.indexOf(gsMETADATA_HTML) > -1) && (response.indexOf(gsMETADATA_ERROR_COMPONENT) > -1) && (response.indexOf(gsMETADATA_ERROR_CODE) > -1)) { cfgSet("LAST_ACTION", "metadataTree"); metadataFault(response); return false; } activeNodeName = jsdecode(convertBack(metadataObjects[0])); } if (iMOlength > 1) { if (cfgGet(gsMETADATA_META_TreeLoadedFirstTime) == gsMETADATA_loading) { var metadataModelName = jsdecode(convertBack(metadataObjects[1])); var metadataModelScreentip = jsdecode(convertBack(metadataObjects[2])); if (metadataModelScreentip.indexOf(gsMETADATA_resubmitSingleHierarchy)) { metadataModelScreentip = metadataModelScreentip.substring(0,metadataModelScreentip.indexOf(gsMETADATA___resubmitSingleHierarchy)); } metadataTree.getRootNode().setName(metadataModelName); metadataTree.setRootNodeShowing(true); if (metadataModelScreentip != "") { metadataTree.getRootNode().setTooltip(metadataModelScreentip); } metadataTree.drawAll(); } } if (iMOlength > 2) { if (metadataObjects[2].indexOf(gsMETADATA_resubmitSingleHierarchy) >= 0) { var thisNode = activeNodeFetches[activeNodeName][0]; thisNode.hierarchyPath = jsdecode(convertBack(metadataObjects[5])); thisNode.hierarchyName = jsdecode(convertBack(metadataObjects[4])); var request = getMetadataRequestString(cfgGet(gsMETADATA_cmLastModel), encodeURIComponent(jsdecode(convertBack(metadataObjects[3]))), 2, activeNodeName); request = request.replace(greMETADATA_APOS, gsMETADATA_APOS_ESCAPE); setTimeout("doMetadataRequest('" + request + "');", 100); return true; } } for (i = 3; i < iMOlength; i++) { if (metadataObjects[i].length > 0) { var metaObj = metadataObjects[i].split(gsMETADATA_COMMA); var nodeType = jsdecode(metaObj[0]); var metaArray = []; for (var j = 1; j < metaObj.length; j++) { metaArray.push( jsdecode(metaObj[j]) ); } if (nodeType.indexOf(gsMETADATA_firstChild) > -1) { nodeDepth += 1; } var metaNode = createNewMetaObject(metaArray, activeNodeName, nodeDepth); activeNodeFetches[activeNodeName][nodeDepth] = metaNode; if (nodeType.indexOf(gsMETADATA_lastChild) > -1) { var theNextChild = null; if (iMOlength > (i + 1)) { theNextChild = metadataObjects[i + 1].split(gsMETADATA_COMMA); if (theNextChild[0].indexOf(gsMETADATA_firstChild) > -1) { lastNodeDepth += 1; continue; } } if (lastNodeDepth > 0) { if (theNextChild != null && theNextChild.length > 0) { var hild = gsMETADATA_hild; var currentDepthThisChild = nodeType.substr(nodeType.lastIndexOf(hild) + hild.length); var currentDepthNextChild = theNextChild[0].substr(theNextChild[0].lastIndexOf(hild) + hild.length); var depthDiff = (currentDepthThisChild - currentDepthNextChild); if (depthDiff > 0) { nodeDepth -= depthDiff; if (nodeDepth < 0) { nodeDepth = 0; } lastNodeDepth -= depthDiff; if (lastNodeDepth < 0) { lastNodeDepth = 0; } continue; } } nodeDepth -= lastNodeDepth + 1; lastNodeDepth = 0; } else { nodeDepth -= 1; } } } } var thisNode = activeNodeFetches[activeNodeName][0]; if ((checkCalcFunctionAgainstDB(gsMETADATA_MEMBER_SEARCH_IN_HIERARCHY) || checkRestrictedCalcFunctionAgainstDB(gsMETADATA_MEMBER_SEARCH_IN_HIERARCHY)) && thisNode.m_isDimension == true && typeof thisNode.getChildren()[0].m_HierarchyPath != "undefined") { thisNode.hierarchyPath = thisNode.getChildren()[0].m_HierarchyPath; thisNode.hierarchyName = thisNode.getChildren()[0].getName(); } thisNode.getTree().childrenReadyForNode(thisNode); delete activeNodeFetches[activeNodeName]; cfgSet("META_TreeLoadedFirstTime", true); for (var idxMO in newMetadataObjects) { allMetadataObjects[idxMO] = newMetadataObjects[idxMO]; } setTimeout(metadataTreeLoaded, 10); } return true; }; function createInput(inputName, inputValue) { var reportFrame = getReportFrame(); var input = reportFrame.document.createElement("input"); input.setAttribute("name", inputName); input.setAttribute("type", "hidden"); input.setAttribute("value", inputValue); return(input); }; function convertBack(str) { if (typeof str != "string") { if (typeof str != "undefined") { str = "" + str; } else { str = ""; } } str = str.replace(greMETADATA_SEMICOLON, gsMETADATA_SEMICOLON); str = str.replace(greMETADATA_GREATERTHAN, gsMETADATA_GREATERTHAN); str = str.replace(greMETADATA_LESSTHAN, gsMETADATA_LESSTHAN); str = str.replace(greMETADATA_APOS_ESCAPE, gsMETADATA_APOS); return str.replace(greMETADATA_COMMA, gsMETADATA_COMMA); }; function createNewMetaObject(metaObj, activeNodeName, nodeDepth) { var newNode; var path = convertBack(metaObj[3]); var oNodeType = null; switch (metaObj[0]) { case gsMETADATA_querySubject: newMetadataObjects[path] = new mdFolder(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[7])); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntQuerySubject, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_hierarchy: if (checkCalcFunctionAgainstDB(gsMETADATA_MEMBER_SEARCH_IN_HIERARCHY) || checkRestrictedCalcFunctionAgainstDB(gsMETADATA_MEMBER_SEARCH_IN_HIERARCHY)) { newMetadataObjects[path] = new mdQueryItem(convertBack(metaObj[1]), path, convertBack(metaObj[4]), 60, 7, 0, 0, 0, 0, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, convertBack(metaObj[7]), gsMETADATA_EMPTY, gsMETADATA_EMPTY); } else { newMetadataObjects[path] = new mdFolder(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[7])); } newMetadataObjects[path].isHierarchy = true; newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntHeirarchy, false, convertBack(metaObj[1]), path, false); newNode.m_HierarchyPath = convertBack(metaObj[4]); if (typeof metaObj[6] != gsMETADATA_undefined && convertBack(metaObj[6]) == gsMETADATA_parentChild) { newNode.m_isParentChild = true; } break; case gsMETADATA_dimension: newMetadataObjects[path] = new mdFolder(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[7])); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntDimension, false, convertBack(metaObj[1]), path, false); newNode.m_isDimension = true; break; case gsMETADATA_filter: newMetadataObjects[path] = new mdFilter(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[7])); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntFilter, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_measureDimension: newMetadataObjects[path] = new mdFolder(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[7])); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntMeasureDimension, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_hierarchyFolder: case gsMETADATA_measureFolder: case gsMETADATA_queryItemFolder: case gsMETADATA_folder: newMetadataObjects[path] = new mdFolder(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[7])); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntFolder_2, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_namespace: newMetadataObjects[path] = new mdFolder(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[7])); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntNamespace, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_calculation: newMetadataObjects[path] = new mdCalculation(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[6]), convertBack(metaObj[7]), convertBack(metaObj[8]), convertBack(metaObj[9]), convertBack(metaObj[10]), convertBack(metaObj[11]), convertBack(metaObj[12]), convertBack(metaObj[13]), convertBack(metaObj[15]), convertBack(metaObj[18]), convertBack(metaObj[20])); if (metaObj[6] == 3) { oNodeType = tntCalculationFact; } else if(metaObj[6] == 2) { oNodeType = tntCalculationDimension; } else { oNodeType = tntCalculationAttribute; } newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], oNodeType, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_calculationConstant: newMetadataObjects[path] = new mdCalculation(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[6]), convertBack(metaObj[7]), convertBack(metaObj[8]), convertBack(metaObj[9]), convertBack(metaObj[10]), convertBack(metaObj[11]), convertBack(metaObj[12]), convertBack(metaObj[13]), convertBack(metaObj[15]), convertBack(metaObj[18]), convertBack(metaObj[20])); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntCalculationConstant, false, convertBack(metaObj[1]), path, false); cfgSetAt(gsMETADATA_calcConstants, cfgSize(gsMETADATA_calcConstants), new Array(convertBack(metaObj[1]), path, convertBack(metaObj[5]))); break; case gsMETADATA_measure: newMetadataObjects[path] = new mdQueryItem(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[6]), convertBack(metaObj[7]), convertBack(metaObj[8]), convertBack(metaObj[9]), convertBack(metaObj[10]), convertBack(metaObj[11]), convertBack(metaObj[12]), convertBack(metaObj[13]), convertBack(metaObj[15]), convertBack(metaObj[18]), convertBack(metaObj[20]), gsMETADATA_EMPTY, gsMETADATA_EMPTY); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntMeasure, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_rollupMeasure: newMetadataObjects[path] = new mdQueryItem(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[6]), convertBack(metaObj[7]), convertBack(metaObj[8]), convertBack(metaObj[9]), convertBack(metaObj[10]), convertBack(metaObj[11]), convertBack(metaObj[12]), convertBack(metaObj[13]), convertBack(metaObj[15]), convertBack(metaObj[18]), convertBack(metaObj[20]), gsMETADATA_EMPTY, gsMETADATA_EMPTY); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntRollupMeasure, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_namedSet: newMetadataObjects[path] = new mdQueryItem(convertBack(metaObj[1]), path, convertBack(metaObj[4]), 60, 7, 0, 0, 0, 0, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, convertBack(metaObj[20]), gsMETADATA_EMPTY, gsMETADATA_EMPTY); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntNamedSet, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_level: newMetadataObjects[path] = new mdQueryItem(convertBack(metaObj[1]), path, convertBack(metaObj[4]), 60, 7, 0, 0, convertBack(metaObj[9]), 0, gsMETADATA_EMPTY, convertBack(metaObj[12]), convertBack(metaObj[13]), gsMETADATA_EMPTY, gsMETADATA_EMPTY, convertBack(metaObj[20]), convertBack(metaObj[16]), convertBack(metaObj[17])); newMetadataObjects[path].levelOrdinal = convertBack(metaObj[14]); newMetadataObjects[path].hun = convertBack(metaObj[metaObj.length-2]); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntLevel, false, convertBack(metaObj[1]), path, false); break; case gsMETADATA_member: if (goApplicationManager.getFeatureRegistry().isRegistered("MetaExtensions") == true) { newMetadataObjects[path] = new mdQueryItem(convertBack(metaObj[1]), path, convertBack(metaObj[4]), 60, 7, 0, 0, 0, 0, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, convertBack(metaObj[20]), gsMETADATA_EMPTY, gsMETADATA_EMPTY); newMetadataObjects[path].levelOrdinal = convertBack(metaObj[14]); newMetadataObjects[path].hun = convertBack(metaObj[metaObj.length-2]); newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], tntMember, false, convertBack(metaObj[1]), path, false); } break; case gsMETADATA_queryItem: newMetadataObjects[path] = new mdQueryItem(convertBack(metaObj[1]), path, convertBack(metaObj[4]), convertBack(metaObj[5]), convertBack(metaObj[6]), convertBack(metaObj[7]), convertBack(metaObj[8]), convertBack(metaObj[9]), convertBack(metaObj[10]), convertBack(metaObj[11]), convertBack(metaObj[12]), convertBack(metaObj[13]), convertBack(metaObj[15]), convertBack(metaObj[18]), convertBack(metaObj[20]), convertBack(metaObj[16]), convertBack(metaObj[17])); if (metaObj[6] == 3) { oNodeType = tntQueryItemFact; } else if (metaObj[6] == 2) { oNodeType = tntQueryItemIdentifier; } else { oNodeType = tntQueryItem; } newNode = new CTreeNode(activeNodeFetches[activeNodeName][nodeDepth - 1], oNodeType, false, convertBack(metaObj[1]), path, false); if (metaObj[metaObj.length-2] !== "") { newMetadataObjects[path].hun = convertBack(metaObj[metaObj.length-2]); } break; default: return false; } newNode.m_sRef = convertBack(metaObj[4]); newNode.nodeMetaType = metaObj[0]; newNode.setTooltip(convertBack(metaObj[2])); return newNode; }; function metadataFault(metaFaultObjects) { var bDisplayMetadataIfAvailable = true; if ((typeof metaFaultObjects == "string") && (metaFaultObjects.indexOf("") > -1) && (metaFaultObjects.indexOf("") > -1) && (metaFaultObjects.indexOf("") > -1)) { document.getElementById("metadataTreeContainer").innerHTML = metaFaultObjects; cfgRemove("LAST_ACTION"); return; } metadataErrors = new Array(); var maDenied = false; var maTimeout = false; var aCAMinfo = []; for (var i = 0; i < metaFaultObjects.length; i++) { if (metaFaultObjects[i].indexOf("timeout") > -1) { maTimeout = true; } if (metaFaultObjects[i].indexOf("MA-DEF-0024") > -1) { maDenied = true; } var aCAMmatch = metaFaultObjects[i].match( /(\w*CAM\w*)=(.*)/ ); if ( aCAMmatch ) { aCAMinfo.push( {"name": aCAMmatch[1], "value": aCAMmatch[2]} ); cfgSet( aCAMmatch[1], aCAMmatch[2] ); } var metaFaultObjectsSplit = metaFaultObjects[i].split("\\n"); for (var j = 0; j < metaFaultObjectsSplit.length; j++) { metadataErrors[metadataErrors.length] = convertBack(metaFaultObjectsSplit[j]); } } if (maTimeout == true) { bDisplayMetadataIfAvailable = false; pptFaultHandler( aCAMinfo ); } else if (maDenied == true) { MADenied(); cfgRemove("LAST_ACTION"); } else { MAErrorPage(); cfgRemove("LAST_ACTION"); } return bDisplayMetadataIfAvailable; }; function mdFilter(name, path, ref, parent, description) { this.name = name; this.ref = ref; this.path = path; this.parent = parent; this.description = description; }; function mdFolder(name, path, ref, parent, description) { this.name = name; this.ref = ref; this.path = path; this.parent = parent; this.description = description; }; function mdCalculation(name, path, ref, datatype, usage, regularAggregate, semiAggregate, promptType, displayType, sortOnRef, promptCascadeOnRef, promptFilterItemRef, currency, parent, description) { this.name = name; this.ref = ref; this.path = path; this.datatype = datatype; this.usage = usage; this.regularAggregate = regularAggregate; this.semiAggregate = semiAggregate; this.promptType = promptType; this.displayType = displayType; this.sortOnRef = sortOnRef; this.promptCascadeOnRef = promptCascadeOnRef; this.promptFilterItemRef = promptFilterItemRef; this.currency = currency; this.parent = parent; this.description = description; }; function mdQueryItem(name, path, ref, datatype, usage, regularAggregate, semiAggregate, promptType, displayType, sortOnRef, promptCascadeOnRef, promptFilterItemRef, currency, parent, description, promptUseItemRef, promptDisplayItemRef) { this.name = name; this.ref = ref; this.path = path; this.datatype = datatype; this.usage = usage; this.regularAggregate = regularAggregate; this.semiAggregate = semiAggregate; this.promptType = promptType; this.displayType = displayType; this.sortOnRef = sortOnRef; this.promptCascadeOnRef = promptCascadeOnRef; this.promptFilterItemRef = promptFilterItemRef; this.promptUseItemRef = promptUseItemRef; this.promptDisplayItemRef = promptDisplayItemRef; this.currency = currency; this.parent = parent; this.description = description; }; function loadFunc(loadingNode) { if (cfgGet("META_TreeLoadedFirstTime") == null) { if (checkCalcFunctionAgainstDB(gsMETADATA_MEMBER_SEARCH_IN_HIERARCHY) === false && checkRestrictedCalcFunctionAgainstDB(gsMETADATA_MEMBER_SEARCH_IN_HIERARCHY) === false) { tntDimension.m_bIsDraggable = false; tntDimension.setRecursiveSelect(true); tntHeirarchy.m_bIsDraggable = false; tntHeirarchy.setRecursiveSelect(true); } cfgSet("META_TreeLoadedFirstTime", "loading"); activeNodeFetches[loadingNode.getValue()] = new Array(loadingNode); var req; req = getMetadataRequestString(cfgGet("cmLastModel"), "", 2, loadingNode.getValue()); if (goApplicationManager.getFeatureRegistry().isRegistered("MetaExtensions") == true && (loadingNode.getName()=='Members' || loadingNode.nodeMetaType=='member')) { req = req + "&memberFolder=true"; } doMetadataRequest(req); } else if (cfgGet("META_TreeLoadedFirstTime") != "loading" && cfgGet("META_TreeLoadedFirstTime") != "failed") { var iDepth = 2; if (loadingNode.nodeMetaType == gsMETADATA_measureDimension || loadingNode.nodeMetaType == gsMETADATA_measureFolder || loadingNode.nodeMetaType == gsMETADATA_rollupMeasure) { iDepth = 3; } activeNodeFetches[loadingNode.getValue()] = new Array(loadingNode); var req = getMetadataRequestString(cfgGet("cmLastModel"), encodeURIComponent(loadingNode.getValue()), iDepth, loadingNode.getValue()); if (goApplicationManager.getFeatureRegistry().isRegistered("MetaExtensions") == true && (loadingNode.getName()=='Members' || loadingNode.nodeMetaType=='member')) { req = req + "&memberFolder=true"; } doMetadataRequest(req); } }; function onDragStartF(evt) { evt = (evt) ? evt : ((event) ? event : null); clearSelection(); cancelBub(evt); var dragRef = evt.srcElement ? evt.srcElement.getAttribute(gsCTREE_dragRef) : evt.originalTarget ? evt.originalTarget.getAttribute(gsCTREE_dragRef) : null; if (typeof dragRef == "string" && dragRef.length != 0) { var uiNode = getUINode(evt); if (uiNode) { var tree = uiNode.getAttribute('dragTree').toString(); var node = getTreeNode(tree, dragRef); if (node.getNodeTypeObject().m_bIsDraggable == true) { if (!node.isSelected()) { if ((evt.ctrlKey == false) && (evt.shiftKey == false)) { node.getTree().getRootNode().setSelected(false); } node.setSelected(true); node.updateParent(); var label = document.getElementById(tree + node.getTreeRef() + 'label'); label.className = getClassName(node, node.getTree()); if ((evt.ctrlKey == false) && (evt.shiftKey == false)) { node.getTree().redraw(); } } var treeObj = node.getTree(); var selectedNodes = treeObj.getSelectedFolderNodes(); selectedNodes = selectedNodes.concat(treeObj.getSelectedLeafNodes()); var arr = new Array(); var selectionType = null; for (var i = 0; i < selectedNodes.length; i++) { var nodeObj = selectedNodes[i].getNodeTypeObject(); var usage = allMetadataObjects[selectedNodes[i].getValue()].usage; arr[selectedNodes[i].getName()] = getTreeNodeObjectIcon(nodeObj); if (usage == 3 && (selectionType == 'measure' || selectionType == null)) { selectionType = 'measure'; } else if (usage != 3 && (selectionType == 'nonMeasure' || selectionType == null)) { selectionType = 'nonMeasure'; } else { selectionType = 'mixed'; } } if (window.ie) { showDragToolTip(arr, evt); } getConfigFrame().cfgSet('DragSelectionType',selectionType); ddController = new DragDropController(); ddController.allowDropEffect(evt); ddController.dragStart(); } else { evt.dataTransfer.clearData("Text"); } } } }; function onDragF(evt) { var dtt = document.getElementById('dragToolTip'); if (dtt && dtt.style && dtt.style.display == "inline") { dtt.style.left = (evt.clientX + 20) + "px"; dtt.style.top = evt.clientY + "px"; } }; function onDragEndF(evt) { var dtt = document.getElementById('dragToolTip'); if (dtt && dtt.style) { dtt.style.display = "none"; } getConfigFrame().cfgRemove('DragSelectionType'); if (ddController != null) { ddController.dragEnd(); } }; function showDragToolTip(arr, event) { var htmlOUT = ""; var childrenExist = false; for (var i in arr) { childrenExist = true; htmlOUT += "\n"; } htmlOUT += "
 " + i + "
"; var dtt = document.getElementById("dragToolTip"); if (dtt && dtt.style && childrenExist) { dtt.innerHTML = htmlOUT; dtt.style.zIndex = 100; dtt.style.position = "absolute"; dtt.style.left = (event.clientX + 20) + "px"; dtt.style.top = event.clientY + "px"; dtt.style.display = "inline"; } }; function treeContextMenuFunc(evt) { clearSelection(); var uiNode = getUINode(evt); var uiNodeTreeRef = uiNode.getAttribute(gsCTREE_treeRef).toString(); var node = getTreeNode("metadataTree", uiNodeTreeRef); if (! node.isSelected()) { selectNode(evt); } gQsMetadataTreeContextMenu.setHTMLContainer(goApplicationManager.getApplicationFrame().document.body); gQsMetadataTreeContextMenu.draw(); gQsMetadataTreeContextMenu.setXCoord(evt.clientX); gQsMetadataTreeContextMenu.setYCoord(evt.clientY); gQsMetadataTreeContextMenu.show(); if (typeof evt.preventDefault == "function") { evt.preventDefault(); } return true; }; function MADenied() { dlgReset(); dlgSetParm("m", qs_dir + "/maDenied.xts"); dlgSubmit(); }; function MAErrorPage() { dlgReset(); dlgSetParm("m", qs_dir + "/maError.xts"); if (cfgGet("META_TreeLoadedFirstTime") == "failed") { dlgSetParm("xxForceExit", "true"); } dlgSubmit(); }; function addSelectedDblClick(evt) { evt = (evt) ? evt : ((event) ? event : null); clearSelection(); cancelBub(evt); var uiNode = getUINode(evt); if (uiNode && evt != null) { var tree = uiNode.getAttribute('dragTree').toString(); var uiNodeTreeRef = uiNode.getAttribute('treeRef').toString(); var node = getTreeNode(tree, uiNodeTreeRef); var allSelections = metadataTree.getSelectionOrder(); if (((evt.ctrlKey == true || evt.shiftKey == true) && allSelections.length > 1) || node.canHaveChildren() == false) { addSelected(); } else { var theUINodeId = tree + uiNode.getAttribute('dragRef').toString() + gsCTREE_toggle + node.getTreeHierarchy(); var theUINode = document.getElementById(theUINodeId); toggle(evt, theUINode); } } }; function addSelected(qid, groupType) { var reportState = goApplicationManager.getReportManager().get("reportState"); if (reportState == "" || reportState == "invalidPackage" || reportState == "noPackage" || reportState == "upgrading" || reportState == "submitted" || reportState == "prompting") { return; } var unfetchedChildren = metadataTree.getSelectedUnfetchedChildren(); if (typeof qid == "undefined" || qid == null || typeof qid != "string") { qid = ""; } if (unfetchedChildren) { waitForFetchingChildren(qid, groupType); } else { var hasDimensionSelections = false; var selectedNodes = metadataTree.getSelectionOrder(); for (var i = 0; i < selectedNodes.length; i++) { if (selectedNodes[i].getNodeTypeObject().m_nodeTypeName == "dimension") { hasDimensionSelections = true; break; } } if (hasDimensionSelections) { var anyChildrenToFetch = false; for (var i = 0; i < selectedNodes.length; i++) { if (selectedNodes[i].getNodeTypeObject().m_nodeTypeName == "dimension" && !selectedNodes[i].hasChildren()) { anyChildrenToFetch = true; selectedNodes[i].setShowUI(false); selectedNodes[i].fetchChildren(); } } if (anyChildrenToFetch == true) { waitForFetchingChildren(qid, groupType); } else { processFetchedChildren(qid, groupType); } } else { processFetchedChildren(qid, groupType); } } }; function waitForFetchingChildren(qid, groupType) { if (metadataTree.getLoading()) { if (typeof qid != "string") { qid = ""; } setTimeout("waitForFetchingChildren('" + qid + "', '" + groupType + "')", 100); } else { addSelected(qid, groupType); } }; function getNodesOrdered(leafNode,OrderedNodes) { var nodeObject; if (typeof leafNode.hierarchyPath != "undefined" && typeof leafNode.hierarchyName != "undefined") { nodeObject = new mdQueryItem(leafNode.hierarchyName, gsMETADATA_EMPTY, leafNode.hierarchyPath, 60, 7, 0, 0, 0, 0, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY, gsMETADATA_EMPTY); nodeObject.isHierarchy = true; } else { nodeObject = allMetadataObjects[leafNode.getValue()]; } var nodeObjectType = getNodeObjectType(nodeObject); var metaType = leafNode.nodeMetaType ? leafNode.nodeMetaType : "none"; var nodeMetaType = null; var i_countChildren = leafNode.m_oChildren.length; if (nodeObjectType == 'FOLDER' ) { for(var j=0;j 0) { cfgSetAt("CalcFns", cfgSize("CalcFns"), response[i]); } } if (responseArr.length > 1) { response = responseArr[1].split(gsMETADATA_SEMICOLON); for (var i = 0; i < response.length; i++) { if (response[i].length > 0) { cfgSetAt("CalcFnsRestricted", cfgSize("CalcFnsRestricted"), response[i]); } } } } if (cfgGet("currentMetadataFunctionOperations") == "onlyOperation") { setTimeout(doMetadataTree, 100); } else { var newFnToRun = cfgGet("postFetchFunctionToRun"); if (typeof newFnToRun == "function") { if (cfgSize("postFetchParameter") > 0) { var newFnParam = ""; for (var pfpCounter = 0; pfpCounter < cfgSize("postFetchParameter"); pfpCounter++) { if(newFnParam != "") { newFnParam =+ ","; } newFnParam += "'" + cfgGetAt("postFetchParameter", pfpCounter) + "'"; } newFnToRun(eval(newFnParam)); } else { newFnToRun(); } } cfgRemove("postFetchFunctionToRun"); cfgRemove("postFetchParameter"); if (goApplicationManager.get("featureWaitingToLaunch") !== null) { goApplicationManager.getFeatureManager().launchFeature(goApplicationManager.get("featureWaitingToLaunch"), goApplicationManager.get("featureWaitingToLaunchParams")); goApplicationManager.remove("featureWaitingToLaunch"); goApplicationManager.remove("featureWaitingToLaunchParams"); } if (cfgGet("META_TreeLoadedFirstTime") == null) { setTimeout(doMetadataTree, 1); } } }; function metadataTreeLoaded() { if (cfgGet("runFetchMetadataFunctionList") != null) { cfgRemove("runFetchMetadataFunctionList"); fetchMetadataFunctionList(); } }; function metaTreeContainerClicked(event) { gQsMetadataTreeContextMenu.hide(); treeContainerClicked(event); setMetaInformation(new Array()); }; function singleClickMetadata(evt) { gQsMetadataTreeContextMenu.hide(); var uiNode = getUINode(evt); var selectedNode = (uiNode) ? getTreeNode(uiNode.getAttribute('dragTree').toString(), uiNode.getAttribute('treeRef').toString()) : null; if (selectedNode == null) { setMetaInformation(new Array()); } else { var metaObj = allMetadataObjects[selectedNode.getValue()]; var nodeObjType = getNodeObjectType(metaObj); var regAgg = ""; var dataType = ""; if ((nodeObjType != "FOLDER") && (nodeObjType != 'FILTER')) { var dataTypeCategory = determineDataType(jsdecode(metaObj.datatype)); var isDate = false; switch (dataTypeCategory) { case 1: case 2: case 3: case 4: isDate = true; } regAgg = determineRegAggType(parseInt(metaObj.regularAggregate, 10), isDate); dataType = getStringFromDataType(parseInt(metaObj.datatype, 10)); } setMetaInformation(new Array(jsdecode(metaObj.name), jsdecode(metaObj.description), regAgg, dataType)); } }; function toggleInformation(bOpenPane) { clearSelection(); var bIsOpen = false; if (bOpenPane !== null && typeof bOpenPane !== "undefined") { bIsOpen = !bOpenPane; } else { bIsOpen = document.getElementById("informationContent").getAttribute("isOpen"); } if (bIsOpen == "true") { document.getElementById("informationContent").setAttribute("isOpen", "false"); document.getElementById("nsResizeBar").style.display = "none"; cfgSet("InformationTableHeight", document.getElementById("informationTableContainer").style.height); document.getElementById("informationTableContainer").style.height = "auto"; document.getElementById("informationContentContainer").style.display = "none"; resizeMenuPaneToSize("ns", menuPaneMinSize, false); setQSCookie('qs', 'in', 0); autoSetMetadataContainerHeight(); } else { var iStoredInfoPaneSize = cfgGet("InformationTableHeight"); var oInfoHeader = document.getElementById("informationHeaderRow"); if(document.getElementById("informationContent").getAttribute("isOpen") === "false") setMetadataContainerHeight(getMetadataContainerHeight() - parseInt(iStoredInfoPaneSize) + oInfoHeader.offsetHeight); document.getElementById("informationContent").setAttribute("isOpen", "true"); document.getElementById("nsResizeBar").style.display = "block"; document.getElementById("informationTableContainer").style.height = iStoredInfoPaneSize; if (document.all) { document.getElementById("informationContentContainer").style.display = "inline"; } else { document.getElementById("informationContentContainer").style.display = "table-cell"; } var size = getMenuPaneSize("ns"); if (size == menuPaneMinSize) { var openSize = menuPaneMinNSOpenSize; if (openSize < getQSCookie('qs', 'msns')) { openSize = getQSCookie('qs', 'msns'); } resizeMenuPaneToSize("ns", openSize, true); } setQSCookie('qs', 'in', 1); } renderInformation(true, false); }; function renderInformation(allowToggle, keepOpen) { var metadataInfoImg = document.getElementById("metadataInfoImg"); var infoRow1 = document.getElementById("informationDesc"); var infoRow2 = document.getElementById("informationContent"); var data = document.getElementById("informationContent").getAttribute("data"); var isOpen = document.getElementById("informationContent").getAttribute("isOpen"); if (data != "none" && isOpen == "true") { if (document.all) { infoRow2.style.display = "inline"; } else { infoRow2.style.display = "table-row"; } if (data.indexOf("d") > 0) { if (document.all) { infoRow1.style.display = "inline"; } else { infoRow1.style.display = "table-row"; } } else { infoRow1.style.display = "none"; } var metaAggRow = document.getElementById("informationAgg"); if (data.indexOf("a") > 0) { if (document.all) { metaAggRow.style.display = "inline"; } else { metaAggRow.style.display = "table-row"; } } else { metaAggRow.style.display = "none"; } var metaTypeRow = document.getElementById("informationDataType"); if (data.indexOf("t") > 0) { if (document.all) { metaTypeRow.style.display = "inline"; } else { metaTypeRow.style.display = "table-row"; } } else { metaTypeRow.style.display = "none"; } metadataInfoImg.src = sSkinRoot + "/qs/images/hide_area.gif"; } else { infoRow1.style.display = "none"; infoRow2.style.display = "none"; if (allowToggle) { if (metadataInfoImg.src.indexOf("hide_area") > 0) { metadataInfoImg.src = sSkinRoot + "/qs/images/show_area.gif"; } else { metadataInfoImg.src = sSkinRoot + "/qs/images/hide_area.gif"; } } } var metadataContainer = document.getElementById("informationTDContainer"); var metadataTitle = document.getElementById("informationTitle"); var iContainerWidth = parseInt(metadataContainer.offsetWidth,10) - 20; if (iContainerWidth < 0) { iContainerWidth = 0; } metadataTitle.style.width = iContainerWidth + "px"; updateInfoDivWidth("informationNameLabel","auto"); updateInfoDivWidth("informationAggLabel","auto"); updateInfoDivWidth("informationDataTypeLabel","auto"); var oLabel = document.getElementById("informationNameLabel"); var oValue = document.getElementById("informationNameValue"); var iLabelWidth = oLabel.offsetWidth; if (iLabelWidth > metadataContainer.offsetWidth) { iLabelWidth = metadataContainer.offsetWidth - 50; if (iLabelWidth < 0) { iLabelWidth = 0; } } if (iLabelWidth > 0) { iLabelWidth = iLabelWidth + "px"; updateInfoDivWidth("informationNameLabel",iLabelWidth); updateInfoDivWidth("informationAggLabel",iLabelWidth); updateInfoDivWidth("informationDataTypeLabel",iLabelWidth); var iValueWidth = (metadataContainer.offsetWidth - oLabel.offsetWidth - 20); if (iValueWidth < 0) { iValueWidth = 0; } updateInfoDivWidth("informationNameValue",iValueWidth); updateInfoDivWidth("informationAggValue",iValueWidth); updateInfoDivWidth("informationDataTypeValue",iValueWidth); } }; function updateInfoDivWidth(sId, iWidth) { var o = document.getElementById(sId); if (o) { o.style.width = iWidth; } }; function setMetaInformation(metaInfo) { var name = typeof metaInfo[0] != "undefined" ? metaInfo[0] : ""; var description = typeof metaInfo[1] != "undefined" ? metaInfo[1] : ""; var aggregation = typeof metaInfo[2] != "undefined" ? metaInfo[2] : ""; var dataType = typeof metaInfo[3] != "undefined" ? metaInfo[3] : ""; if (name == "" && description == "" && aggregation == "") { document.getElementById("informationContent").setAttribute("data", "none"); setMetaTitle(""); renderInformation(false, false); } else { var data = "n"; clearMetaInformation(); setMetaTitle(name); var metaName = document.getElementById("informationNameValue"); metaName.appendChild(document.createTextNode(name)); if (description != "") { data += "d"; var metaDesc = document.getElementById("informationDescValue"); metaDesc.appendChild(document.createTextNode(description)); } if (aggregation != "") { data += "a"; var metaAgg = document.getElementById("informationAggValue"); metaAgg.appendChild(document.createTextNode(aggregation)); } if (dataType != "") { data += "t"; var metaType = document.getElementById("informationDataTypeValue"); metaType.appendChild(document.createTextNode(dataType)); } document.getElementById("informationContent").setAttribute("data", data); renderInformation(false, true); } }; function clearMetaInformation() { var metaName = document.getElementById("informationNameValue"); var metaDesc = document.getElementById("informationDescValue"); var metaAgg = document.getElementById("informationAggValue"); var metaType = document.getElementById("informationDataTypeValue"); while (metaName.hasChildNodes()) { metaName.removeChild(metaName.firstChild); } while (metaDesc.hasChildNodes()) { metaDesc.removeChild(metaDesc.firstChild); } while (metaAgg.hasChildNodes()) { metaAgg.removeChild(metaAgg.firstChild); } while (metaType.hasChildNodes()) { metaType.removeChild(metaType.firstChild); } document.getElementById("informationContent").setAttribute("data", "none"); }; function setMetaTitle(value) { var metaTitle = document.getElementById("informationTitle"); while (metaTitle.hasChildNodes()) { metaTitle.removeChild(metaTitle.firstChild); } if (value == "") { metaTitle.appendChild(document.createTextNode(metaNoInformation)); } else { var infoVal = metaInformation.replace(/\^0/, value); metaTitle.appendChild(document.createTextNode(infoVal)); } }; function fetchAllParametersAsURLSnippet() { var sParamValues = cfgGet("parameterValues"); var sExecutionParameters = goApplicationManager.getReportManager().getParameterManager().getExecutionParameters(); var sMetadataParameters = goApplicationManager.getReportManager().getParameterManager().getMetadataParameters(); var sRequestStr = ""; if (typeof sParamValues !== "undefined" && sParamValues) { sRequestStr += "¶meterValues=" + encodeURIComponent(sParamValues); } if (typeof sExecutionParameters !== "undefined" && sExecutionParameters) { sRequestStr += "&executionParameters=" + encodeURIComponent(sExecutionParameters); } if (typeof sMetadataParameters !== "undefined" && sMetadataParameters) { sRequestStr += "&metadataParameters=" + encodeURIComponent(sMetadataParameters); } return sRequestStr; }; function needComplexFilterDialogForModelFilter(filterName) { if (typeof canUseQueryStudioAdvancedMode !== "undefined" && ! canUseQueryStudioAdvancedMode) { return false; } var oMQMgr = goApplicationManager.getMiniQueryManager(); var complexFilterDialogMode = false; var bThisModelFilterDoesNotExist = (oMQMgr.getModelFilterNode(filterName) === null); return (bThisModelFilterDoesNotExist && oMQMgr.filterExists()); }; function addModelFilterToCombinedFilter(oCC, nodeObject) { if (!cf.cfgGet("combinedFilters_default")) { cf.cfgSet("combinedFilters_default", oCC.clone()); } oCC.addFilter(oCC.generateID(), nodeObject.name, gsFILTER_REFTYPE_MODEL, gsFILTER_MODEL, nodeObject.ref, "none", nodeObject.name, null); return; }; function errorHandler(errorStoppedAt, e) { };