12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165 |
-
- var REPORT_MANAGER = -1;
- function CReportManager()
- {
- this.m_oWindowMgr = null;
- this.m_oReportFrame = null;
- this.m_oCVObject = null;
- this.m_oApplicationMgr = null;
- this.m_oParameterManager = null;
- this.m_oUndoManager = null;
- this.m_oDrillThroughParameterValues = null;
-
-
- this.m_bIsCommandRunning = false;
-
-
- this.m_aQueuedRequests = new Array();
- };
- CReportManager.prototype = new CDictionary();
- CReportManager.prototype.init = function ()
- {
- if (typeof CWindowManager == "function")
- {
- this.m_oWindowMgr = goApplicationManager.getWindowManager();
- }
- else
- {
- this.m_oWindowMgr = self;
- }
- this.m_oReportFrame = goApplicationManager.getReportFrame();
-
- this.setupDefaultVariables();
- this.m_oParameterManager = new CParameterManager();
- this.m_oParameterManager.init();
- this.createNewUndoManager();
- };
- CReportManager.prototype.setupDefaultVariables = function ()
- {
-
- this.add("currentMode", "reporting");
- this.add("bReportReady", false);
- this.add("reportState", "");
- this.add("onloadState", -1);
- };
- CReportManager.prototype.onLoadSetup = function (iReportState)
- {
- this.add("onloadState", iReportState);
- this.setupValuesFromCVObj();
- this.updateStateFromCVObj();
- clearReportFrameOnUnload();
-
-
- if (typeof goApplicationManager != "undefined" && typeof goApplicationManager.getReportFrame == "function" && goApplicationManager.getReportFrame() && typeof goApplicationManager.getReportFrame().window == "object")
- {
- var iframeWindow = goApplicationManager.getReportFrame().window;
- if (iframeWindow.attachEvent)
- {
- iframeWindow.attachEvent("onunload", unloadReportFrame);
- }
- else if (iframeWindow.addEventListener)
- {
- iframeWindow.addEventListener("unload", unloadReportFrame, false);
- }
- else
- {
-
- try
- {
- var oUnload = iframeWindow.onunload;
-
- if ( !(""+oUnload).match(/unloadReportFrame/gi) )
- {
- iframeWindow.oUnloadQS_onunload = window.onunload;
- iframeWindow.onunload = function()
- {
- iframeWindow.oUnloadQS_onunload();
- unloadReportFrame();
- };
- }
- }
- catch (e)
- {
-
- }
- }
- }
-
-
-
-
- var oCVObj = this.getCVObj();
- if (oCVObj !== null)
- {
- if (oCVObj.getStatus() === "working" || oCVObj.getStatus() === "stillWorking")
- {
- this.showSpinner(true);
- }
- else
- {
- this.showSpinner(false);
- }
- }
- };
- CReportManager.prototype.asyncSubmit = function(bLeaveDialog, oQSRequest)
- {
-
- if (!bLeaveDialog && typeof (hideDialogFrame) == "function")
- {
- hideDialogFrame();
- }
-
-
-
-
-
- if (this.isCommandRunning() == true)
- {
- this.queueRequest(oQSRequest);
- return;
- }
-
-
-
- this.setCommandRunning(true);
-
- var bUpdateMiniQueryWithUserPreference = cfgGet("updateMiniQueryWithUserPreference");
-
- var bOverwriteSetting = cfgGet("overwriteSetting");
- var bIsNewReport = cfgGet("NewReport");
- if ( bOverwriteSetting === "true" )
- {
- this.persistQueryOptions();
- }
- else if (bIsNewReport || bUpdateMiniQueryWithUserPreference === "true")
- {
- this.updateMiniQueryWithUserPreference();
- this.persistQueryOptions();
- }
- else
- {
- this.persistQueryOptions();
- }
- if (bUpdateMiniQueryWithUserPreference === "true")
- {
- cfgRemove("updateMiniQueryWithUserPreference");
- }
-
-
-
-
- if (! oQSRequest.getOption("ui.spec"))
- {
- var sMiniQuery = this.getApplicationManager().getMiniQueryManager().toString();
- oQSRequest.addOption("ui.spec", sMiniQuery);
-
-
-
-
- var aPromptValues = this.getParameterManager().getPromptPageParameters();
- if (this.isFilterCommand(oQSRequest.getOption("ui.command")) && oQSRequest.getOption("qs.addParameterValues") === "true")
- {
- aPromptValues = this.getParameterManager().getPreviousPromptPageParameters();
- }
-
-
-
-
- this.getUndoManager().addToUndo(cfgGet("conversation_qs_spec"), null, aPromptValues);
- }
-
- var sTracking = cfgGet("m_tracking");
- if (sTracking != null && sTracking != "")
- {
- oQSRequest.addOption("m_tracking", sTracking);
- }
-
-
- if (oQSRequest.getOption("ui.conversation"))
- {
- oQSRequest.addOption("ui.conversation", this.get("uiConversation"));
- }
-
-
-
- if (typeof cafContextId === "string")
- {
- oQSRequest.addOption("ui.cafcontextid", cafContextId);
- }
-
-
- if (typeof routingServerGroup == "string")
- {
- oQSRequest.addOption("ui.routingServerGroup", routingServerGroup);
- }
-
- var oldUnload = window.onbeforeunload;
- window.onbeforeunload = null;
-
- this.sendQSRequest(oQSRequest);
-
- window.onbeforeunload = oldUnload;
- };
- CReportManager.prototype.setDrillAndQueryParameters = function (spec)
- {
- if(!spec)
- return;
-
- var CRQReport = XMLBuilderLoadXMLFromString(spec);
- if(CRQReport!== null && CRQReport.documentElement!== null)
- {
- var selectionController = this.getCVSelectionController();
-
- if(typeof selectionController !== "undefined")
- {
- var sEnableModelDrill = CRQReport.documentElement.getAttribute("enableModelDrill");
- if(sEnableModelDrill === "true")
- selectionController.setModelDrillThroughEnabled(true);
- else
- selectionController.setModelDrillThroughEnabled(false);
-
- var sEnableDrill = CRQReport.documentElement.getAttribute("enableDrill")
- if(sEnableDrill === "true")
- selectionController.setDrillUpDownEnabled(true);
- else
- selectionController.setDrillUpDownEnabled(false);
-
-
-
- if (cfgGet("manageFileMode") != "true")
- {
- cfgSet("enableDrill", sEnableDrill);
- cfgSet("enableModelDrill", sEnableModelDrill);
-
-
- var sAutoSummary = CRQReport.documentElement.getAttribute("autoSummary");
- if (sAutoSummary == null)
- {
- cfgSet("autoSummary", true);
- } else {
- cfgSet("autoSummary", sAutoSummary);
- }
-
- var sAutoFooterSummary = CRQReport.documentElement.getAttribute("autoFooterSummary");
- if (sAutoFooterSummary == null)
- {
- cfgSet("autoFooterSummary", true);
- } else {
- cfgSet("autoFooterSummary", sAutoFooterSummary);
- }
- }
- }
- }
- };
- CReportManager.prototype.setupLiveReport = function ()
- {
- if (this.get("setNewReport") === true && cfgGet("ReportName") == null && cfgGet("NewReport") == null)
- {
- cfgSet("NewReport", true);
- }
- if (this.get("asyncObjValue") !== null)
- {
- cfgSet("ASYNC_OBJ", this.get("asyncObjValue"));
- }
- this.add("bReportReady", true);
- cfgSet("SearchPath", this.get("searchPathValue"));
- if (typeof clearCommandBuffer == "function")
- {
- clearCommandBuffer();
- }
-
-
- this.setupMiniQuery(this.get("sMiniQueryMarkup"));
- qsDefaults();
- var oMQMgr = this.getApplicationManager().getMiniQueryManager();
- if (oMQMgr != null)
- {
- var aAllCols = oMQMgr.getAllColumns();
- for (var idxSize = 0; idxSize < aAllCols.length; idxSize++)
- {
- cfgSetDefaultAt(idxSize);
- if (aAllCols[idxSize].hasChildNodes() === true)
- {
- for (var idxCol = 0; idxCol < aAllCols[idxSize].childNodes.length; idxCol++)
- {
- if ((aAllCols[idxSize].childNodes[idxCol].nodeName == "format" || aAllCols[idxSize].childNodes[idxCol].nodeName == "defaultFormat") && aAllCols[idxSize].childNodes[idxCol].hasChildNodes())
- {
- var aColFormat = [aAllCols[idxSize].childNodes[idxCol].childNodes[0].nodeName];
- for (var idxAttr = 0; idxAttr < aAllCols[idxSize].childNodes[idxCol].childNodes[0].attributes.length; idxAttr++)
- {
- aColFormat[aColFormat.length] = aAllCols[idxSize].childNodes[idxCol].childNodes[0].attributes[idxAttr].nodeName;
- aColFormat[aColFormat.length] = aAllCols[idxSize].childNodes[idxCol].childNodes[0].attributes[idxAttr].nodeValue;
- }
- cf.cfgSetAt("ColFormat", idxSize, aColFormat);
- }
- }
- }
- }
- }
-
-
- if (typeof gsUiSpec !== "undefined" && typeof this.m_oReportFrame !== "undefined" && typeof this.m_oReportFrame.document.formWarpRequest !== "undefined")
- {
- this.m_oReportFrame.document.formWarpRequest['ui.spec'].value = gsUiSpec;
- }
- this.setDataModeFromMiniQuery();
-
- this.drawPreview();
- this.handleNotifiers();
- this.setConversationHiddenInputInFormWarpRequest();
- if (this.getCVSelectionController())
- {
- this.getCVSelectionController().onSelectionChange();
- }
- if (typeof reselectColumns == "function")
- {
- reselectColumns();
- }
- if (typeof showMetadataLoading == "function")
- {
- this.getApplicationManager().getFeatureManager().launchFeature("DBar");
- showMetadataLoading();
- }
- this.loadTextInStartPage();
-
-
- this.setDataModeAfterPreview();
-
-
-
-
- cfgSet("conversation_qs_spec", oMQMgr.toString());
- cfgSet("MiniQueryObj", XMLParser(XMLBuilderSerializeNode(oMQMgr.getCRQReportNode())));
-
-
-
-
- this.setCommandRunning(false);
- var oNextQSRequest = this.getNextRequest();
- if (oNextQSRequest && typeof oNextQSRequest === "object")
- {
- this.asyncSubmit(false, oNextQSRequest);
- }
- };
- CReportManager.prototype.setupMiniQuery = function (sMiniQuery)
- {
- if (sMiniQuery !== null)
- {
- var oMQMgr = this.getApplicationManager().getMiniQueryManager();
- oMQMgr.setMiniQuery(stripSignature(sMiniQuery));
-
-
-
-
-
-
- var reportName = cfgGet("ReportName");
- if (typeof reportName != "undefined" && reportName.length)
- {
- oMQMgr.getCRQReportNode().setAttribute("queryName", reportName);
- }
- }
- };
- CReportManager.prototype.handleNotifiers = function ()
- {
- try
- {
- if (typeof toolbarNotifier != "undefined")
- {
- var oObserver = null;
- if (this.getCVSelectionController() && typeof this.getCVSelectionController().attachObserver == "function")
- {
- oObserver = this.getCVSelectionController().getObservers();
- if (!oObserver.hasObserver(toolbarNotifier))
- {
- this.getCVSelectionController().attachObserver(toolbarNotifier);
- }
- }
- if (this.m_oReportFrame.g_reportSelectionController && typeof this.m_oReportFrame.g_reportSelectionController.attachObserver == "function")
- {
- oObserver = this.m_oReportFrame.g_reportSelectionController.getObservers();
- if (!oObserver.hasObserver(toolbarNotifier))
- {
- this.m_oReportFrame.g_reportSelectionController.attachObserver(toolbarNotifier);
- }
- }
- }
- if (typeof this.m_oReportFrame.reselectReportSelections == "function")
- {
- this.m_oReportFrame.reselectReportSelections();
- }
- this.setupReportEvents();
- }
- catch (e)
- {
- }
- };
- CReportManager.prototype.cancel = function ()
- {
-
- this.setCommandRunning(false);
-
- clearReportFrameOnUnload();
- if (this.get("bReportReady") === false && this.get("currentMode") == "prompting")
- {
-
- this.cancelFirstPrompt();
- }
- else if (this.get("bReportReady") === false)
- {
- closeLink(true);
- }
- else if (this.get("currentMode") == "busy")
- {
- this.cancelBusy();
- }
- else if (this.get("currentMode") == "prompting")
- {
- this.cancelPrompting();
- }
- };
- CReportManager.prototype.cancelFirstPrompt = function ()
- {
-
-
-
-
- var oUndoManager = this.getUndoManager();
- if (typeof oUndoManager === "object" && oUndoManager)
- {
- var sMiniQuery = this.get("sMiniQueryMarkup");
- if (sMiniQuery && sMiniQuery.length)
- {
- oUndoManager.executeSpec(sMiniQuery);
- }
- else
- {
-
-
- bannerHome(cfgGet("gsCognosHome"));
- }
- }
- };
- CReportManager.prototype.cancelPrompting = function ()
- {
-
-
-
- var oUndoManager = this.getUndoManager();
- if (typeof oUndoManager === "object" && oUndoManager)
- {
- if (oUndoManager.canUndo())
- {
- oUndoManager.undo();
- }
- else
- {
-
- window.history.back();
- }
- }
- };
- CReportManager.prototype.cancelBusy = function ()
- {
- if (!this.get("cancelClicked"))
- {
- this.add("cancelClicked", true);
- }
- };
- CReportManager.prototype.setReportParameters = function (oParams)
- {
- if (typeof oParams == "object")
- {
- for (var idxParams in oParams)
- {
- this.add(idxParams, oParams[idxParams]);
- }
- }
- this.setupCVCallbacksForQS();
- };
- CReportManager.prototype.drawPreview = function ()
- {
-
- if (typeof showPreview === "undefined")
- {
- return;
- }
-
- var oMQMgr = this.getApplicationManager().getMiniQueryManager();
- var oCRQReport = oMQMgr.getCRQReportNode();
- if (typeof oCRQReport == "object" && (oCRQReport.getAttribute("limitData") == "partial" || oCRQReport.getAttribute("limitData") == "none"))
- {
- redrawSelf();
- showPreview(true);
- }
- else
- {
- showPreview();
- }
- };
- CReportManager.prototype.loadTextInStartPage = function ()
- {
- var oMQMgr = this.getApplicationManager().getMiniQueryManager();
- var aAllColumns = oMQMgr.getAllColumns();
- var aAllHiddenColumns = oMQMgr.getElementsByAttribute("hide", "true");
- if ((aAllColumns.length == 0 || (typeof aAllHiddenColumns == "object" && (aAllColumns.length == aAllHiddenColumns.length)) || this.m_oReportFrame.document.getElementById("startPageDragDropLine1")) && this.m_oReportFrame)
- {
- this.getApplicationManager().add("showStartPage", true);
- var oStartPageDragDropLine1 = this.m_oReportFrame.document.getElementById("startPageDragDropLine1");
- if (oStartPageDragDropLine1)
- {
- while (oStartPageDragDropLine1.hasChildNodes())
- {
- oStartPageDragDropLine1.removeChild(oStartPageDragDropLine1.firstChild);
- }
- oStartPageDragDropLine1.appendChild(this.m_oReportFrame.document.createTextNode(StartPageDragDropLine1));
- }
- var oStartPageDragDropLine2 = this.m_oReportFrame.document.getElementById("startPageDragDropLine2");
- if (oStartPageDragDropLine2)
- {
- while (oStartPageDragDropLine2.hasChildNodes())
- {
- oStartPageDragDropLine2.removeChild(oStartPageDragDropLine2.firstChild);
- }
- oStartPageDragDropLine2.appendChild(this.m_oReportFrame.document.createTextNode(StartPageDragDropLine2));
- }
- var oStartPageTipsLine1 = this.m_oReportFrame.document.getElementById("startPageTipsLine1");
- if (oStartPageTipsLine1)
- {
- while (oStartPageTipsLine1.hasChildNodes())
- {
- oStartPageTipsLine1.removeChild(oStartPageTipsLine1.firstChild);
- }
- oStartPageTipsLine1.appendChild(this.m_oReportFrame.document.createTextNode(StartPageTipsLine1));
- }
- var oStartPageTipsLine2 = this.m_oReportFrame.document.getElementById("startPageTipsLine2");
- if (oStartPageTipsLine2)
- {
- while (oStartPageTipsLine2.hasChildNodes())
- {
- oStartPageTipsLine2.removeChild(oStartPageTipsLine2.firstChild);
- }
- oStartPageTipsLine2.appendChild(this.m_oReportFrame.document.createTextNode(StartPageTipsLine2));
- }
- }
- else
- {
- this.getApplicationManager().remove("showStartPage");
- }
- };
- CReportManager.prototype.setConversationHiddenInputInFormWarpRequest = function ()
- {
- var oRepMgr = this.getApplicationManager().getReportManager();
-
-
- if (! oRepMgr.m_oReportFrame)
- {
- return;
- }
-
- var sPrimReq = cfgGet('conversation_primaryRequest');
- if (sPrimReq !== null && oRepMgr.get("bReportReady"))
- {
- var oFWR = oRepMgr.m_oReportFrame.document.formWarpRequest;
- if (oFWR)
- {
- if (oFWR["ui.conversation"])
- {
- oFWR["ui.conversation"].value = sPrimReq;
- }
- if (oFWR.parameterValues)
- {
- oFWR.parameterValues.value = cfgGet('parameterValues');
- }
- if (oFWR.m_tracking)
- {
- oFWR.m_tracking.value = cfgGet('m_tracking');
- }
-
- if (oFWR.m_tracking)
- {
- oFWR.m_tracking.value = cfgGet('m_tracking');
- }
- }
- }
- else
- {
- setTimeout(oRepMgr.setConversationHiddenInputInFormWarpRequest, 10);
- }
- var oReportTitleLink = oRepMgr.m_oReportFrame.document.getElementById("reportTitleLink");
- if (oReportTitleLink)
- {
- oReportTitleLink.setAttribute("title", reportTitleTip);
- }
- };
- CReportManager.prototype.setupReportEvents = function ()
- {
- if (document.all)
- {
- var oReportDocumentBody = this.m_oReportFrame.document.body;
- oReportDocumentBody.attachEvent("onkeydown", keydown);
- oReportDocumentBody.attachEvent("onmouseup", mainMouseUp);
- oReportDocumentBody.attachEvent("onmousemove", mouseMove);
-
- oReportDocumentBody.attachEvent("ondragenter", dragEnter);
- oReportDocumentBody.attachEvent("ondragover", dragOver);
- oReportDocumentBody.attachEvent("ondragleave", dragLeave);
- oReportDocumentBody.attachEvent("ondrop", tempDropColumn);
- }
- else
- {
- var oReportDocumentBody = this.m_oReportFrame.document;
- oReportDocumentBody.addEventListener("keydown", keydown, true);
- oReportDocumentBody.addEventListener("mouseup", mainMouseUp, true);
- oReportDocumentBody.addEventListener("mousemove", mouseMove, true);
- oReportDocumentBody.addEventListener("dragenter", dragEnter, true);
- oReportDocumentBody.addEventListener("dragover", dragOver, true);
- oReportDocumentBody.addEventListener("dragleave", dragLeave, true);
- oReportDocumentBody.addEventListener("drop", tempDropColumn ,true);
- }
- };
- CReportManager.prototype.getCVObj = function ()
- {
- if (typeof this.m_oReportFrame == "undefined" || this.m_oReportFrame === null)
- {
- this.m_oReportFrame = goApplicationManager.getReportFrame();
- }
- if (!this.m_oReportFrame)
- {
- return null;
- }
- var oCVQS = this.m_oReportFrame.oCVQS;
- if (typeof oCVQS == "undefined" || oCVQS === null)
- {
- return null;
- }
- this.setupCVCallbacksForQS(oCVQS);
- return oCVQS;
- };
- CReportManager.prototype.getCVSelectionController = function ()
- {
- if (typeof this.m_oReportFrame == "undefined" || this.m_oReportFrame === null)
- {
- this.m_oReportFrame = goApplicationManager.getReportFrame();
- }
- if (!this.m_oReportFrame)
- {
- return null;
- }
-
-
-
- try
- {
- if (typeof this.m_oReportFrame.oCVSCQS == "undefined")
- {
- return null;
- }
- return this.m_oReportFrame.oCVSCQS;
- }
- catch (exception)
- {
- }
-
- return null;
- };
- CReportManager.prototype.setupCVCallbacksForQS = function (oCVObj)
- {
- if (typeof oCVObj == "undefined")
- {
- oCVObj = this.getCVObj();
- }
- if (oCVObj !== null && !oCVObj.QSCallbacksSet)
- {
- oCVObj.addCallback("cancel", cancelRequest, false);
- oCVObj.addCallback("done", reportIsReadyCallback, false);
- oCVObj.addCallback("error", reportHasErrorCallback, false);
- oCVObj.addCallback("prompt", reportIsPromptingCallback, true);
- oCVObj.addCallback("wait", reportIsWaitingCallback, false);
- oCVObj.QSCallbacksSet = true;
- }
- };
- CReportManager.prototype.createRequest = function (sAction)
- {
- var oQSRequest = new CCognosViewerRequest(sAction);
- var oCVObj = this.getCVObj();
- if (oCVObj !== null && typeof sAction == "string")
- {
- this.m_oReportFrame.oQSRequest = oQSRequest;
- }
- return oQSRequest;
- };
- CReportManager.prototype.sendRequest = function (oQSRequest)
- {
-
-
- var oCVObj = this.getCVObj();
- if (oCVObj === null || typeof oQSRequest != "object")
- {
- return this.sendQSRequest(oQSRequest);
- }
-
- clearReportFrameOnUnload();
- oCVObj.setUsePageRequest(true);
-
-
- if (! oQSRequest.hasOption("b_action"))
- {
-
- oQSRequest.addOption("b_action", "cognosViewer");
- oQSRequest.addOption("cv.responseFormat", "qs");
- oQSRequest.addOption("run.outputFormat", "HTMLFragment");
- oQSRequest.addOption("run.xslURL", "qs.xsl");
- oQSRequest.addOption("specificationType", "reportServiceQuerySpecification");
- oQSRequest.addOption("cv.id", "QS");
- oQSRequest.addOption("cv.header", "false");
- oQSRequest.addOption("cv.toolbar", "false");
- oQSRequest.addOption("cv.useAjax", "false");
- if (cfgGet("FirstRunQS"))
- {
- oQSRequest.addOption("qs.firstRun", "true");
- }
- var sParams = this.getParameterManager().getParameterValues(false);
- if (sParams != "")
- {
- oQSRequest.addOption("parameterValues", sParams);
- oQSRequest.addOption("qs.addParameterValues", "true");
- }
- }
-
- oCVObj.sendRequest(oQSRequest);
- return true;
- };
- CReportManager.prototype.sendQSRequest = function (oQSRequest)
- {
-
- var rf = goApplicationManager.getReportFrame();
- if (!rf)
- {
- return false;
- }
-
- var f = rf.document.createElement("FORM");
- f.method = "POST";
- f.action = goApplicationManager.get("scriptEngine");
- f.target = "";
- f.style.margin = "0px";
- var b = rf.document.getElementsByTagName("BODY");
- if (b != null && b[0] != null)
- {
- b = b[0];
- }
- else
- {
- b = rf.document.documentElement;
- }
- b.appendChild(f);
- while (f.hasChildNodes())
- {
- f.removeChild(f.firstChild);
- }
-
- for (var n in oQSRequest.m_oOptions.m_aValues)
- {
- var values = makeArray(oQSRequest.m_oOptions.m_aValues[n]);
- for (var v in values)
- {
- createHiddenInput(rf, f, n, values[v]);
- }
- }
-
- var oldUnload = window.onbeforeunload;
- window.onbeforeunload = null;
-
- clearReportFrameOnUnload();
-
- f.submit();
- window.onbeforeunload = oldUnload;
-
- return true;
- };
- CReportManager.prototype.setRequestDefaultOptions = function (oQSRequest)
- {
- if (!oQSRequest || ! typeof oQSRequest === "object")
- {
- return;
- }
- oQSRequest.addOption("b_action", "xts.run");
- oQSRequest.addOption("app", cfgGet("APPLICATION_NAME"));
- var productLocale = goApplicationManager.get("productLocale");
- if (productLocale != null && productLocale != "")
- oQSRequest.addOption("productLocale", productLocale);
- var contentLocale = goApplicationManager.get("contentLocale");
- if (contentLocale != null && contentLocale != "")
- oQSRequest.addOption("contentLocale", contentLocale);
-
- return oQSRequest;
- };
- CReportManager.prototype.setRequestDefaultOptionsForCV = function (bPassConversation, bPassURLParameters, sPassParameterValues, oQSRequest)
- {
- oQSRequest.addOption("b_action", "cognosViewer");
- oQSRequest.addOption("cv.responseFormat", "qs");
- oQSRequest.addOption("run.outputFormat", "HTMLFragment");
- oQSRequest.addOption("run.xslURL", "qs.xsl");
- oQSRequest.addOption("specificationType", "reportServiceQuerySpecification");
- oQSRequest.addOption("cv.id", "QS");
- oQSRequest.addOption("cv.header", "false");
- oQSRequest.addOption("cv.toolbar", "false");
- oQSRequest.addOption("cv.useAjax", "false");
- if (cfgGet("FirstRunQS"))
- {
- oQSRequest.addOption("qs.firstRun", "true");
-
- if (this.getParameterManager().getDrillThroughParameterValues())
- {
- oQSRequest.addOption("ui.drillThroughTargetParameterValues", this.getParameterManager().getDrillThroughParameterValues().toString());
- }
- }
- var oParamMgr = this.getParameterManager();
- if (bPassConversation === true)
- {
- oQSRequest.addOption("ui.conversation", this.get("uiConversation"));
- }
- if (bPassURLParameters !== false)
- {
- var aParams = oParamMgr.getParametersArray();
- if (getArrayLength(aParams) > 0)
- {
- for (var idxParm in aParams)
- {
- oQSRequest.addOption(idxParm, aParams[idxParm]);
- }
- }
- }
- if (typeof sPassParameterValues == "string")
- {
- var sMetaParams = oParamMgr.getMetadataParameters();
- if (sMetaParams !== null && oParamMgr.getMetadataParametersPassed() === false && sPassParameterValues.match(/any|meta/))
- {
- oQSRequest.addOption("parameterValues", oParamMgr.getCompleteMetadataParameters());
- oQSRequest.addOption("qs.addParameterValues", "true");
- oParamMgr.setMetadataParametersPassed(true);
- }
- else if (oParamMgr.getExecutionParameters() && sPassParameterValues.match(/any|exec/))
- {
- oQSRequest.addOption("parameterValues", oParamMgr.getExecutionParameters());
- oQSRequest.addOption("qs.addParameterValues", "true");
- }
- else if (cfgGet("parameterValues") && sPassParameterValues.match(/any|pv/))
- {
- oQSRequest.addOption("parameterValues", cfgGet("parameterValues"));
- oQSRequest.addOption("qs.addParameterValues", "true");
- }
- }
- };
- CReportManager.prototype.queueRequest = function (oQSRequest)
- {
- this.m_aQueuedRequests.push(oQSRequest);
- };
- CReportManager.prototype.getNextRequest = function ()
- {
- return this.m_aQueuedRequests.shift();
- };
- CReportManager.prototype.handleNavigationLinks = function ()
- {
- var oCVObj = this.getCVObj();
- if (oCVObj !== null)
- {
- var aSecondaryRequests = oCVObj.m_aSecRequests;
- var bHasNextPage = false;
- var bHasPreviousPage = false;
- for (var idxSecReqs = 0; idxSecReqs < aSecondaryRequests.length; idxSecReqs++)
- {
- if (aSecondaryRequests[idxSecReqs] == "nextPage")
- {
- bHasNextPage = true;
- continue;
- }
- if (aSecondaryRequests[idxSecReqs] == "previousPage")
- {
- bHasPreviousPage = true;
- continue;
- }
- }
- changeNavigationLinks(bHasPreviousPage, bHasNextPage, false, false);
- }
- };
- CReportManager.prototype.setupValuesFromCVObj = function ()
- {
- var oCVObj = this.getCVObj();
- if (oCVObj !== null)
- {
- if (typeof oLimitedDataPreference === "object" && oLimitedDataPreference.getProperty("noDataAfterCancel") === false)
- {
-
-
- if (cfgGet("qsBrowserBackPerformedOnCancel") != true)
- {
- cfgSet("m_tracking", oCVObj.getTracking());
- }
- cfgRemove("qsBrowserBackPerformedOnCancel");
- }
- else
- {
- cfgSet("m_tracking", oCVObj.getTracking());
- }
- this.add("uiConversation", oCVObj.getConversation());
- }
- this.getParameterManager().setupParameters();
- };
- CReportManager.prototype.getApplicationManager = function ()
- {
- if (this.m_oApplicationMgr === null)
- {
- this.m_oApplicationMgr = this.getApplicationFrame().goApplicationManager;
- }
- return this.m_oApplicationMgr;
- };
- CReportManager.prototype.getApplicationFrame = function ()
- {
- return this.m_oWindowMgr.getApplicationFrame();
- };
- CReportManager.prototype.updateStateFromCVObj = function ()
- {
- var oCVObj = this.getCVObj();
- if (oCVObj !== null)
- {
- var sStatus = oCVObj.getStatus();
- if (oCVObj.getResponseSpecification())
- {
- this.add("sMiniQueryMarkup", stripSignature(oCVObj.getResponseSpecification()));
- var spec = this.get("sMiniQueryMarkup");
-
- this.setDrillAndQueryParameters(spec);
- }
-
-
- if (this.get("currentMode") == "reporting")
- {
- this.handleNotifiers();
- if (this.getCVSelectionController())
- {
- this.getCVSelectionController().onSelectionChange();
-
-
- }
- }
- var sCurrentMode = "reporting";
- if (sStatus == "working" || sStatus == "stillWorking")
- {
- sCurrentMode = "busy";
- }
- else if (sStatus == "prompting")
- {
- sCurrentMode = "prompting";
- }
- this.add("currentMode", sCurrentMode);
- this.add("reportState", sStatus);
- }
- };
- CReportManager.prototype.getParameterManager = function ()
- {
- return this.m_oParameterManager;
- };
- CReportManager.prototype.handlePromptAction = function (sAction, sUrl)
- {
-
- var oReq = new this.m_oReportFrame.CCognosViewerRequest( sAction == "back" ? "back" : "forward" );
- if (typeof oReq == "object" && oReq != null)
- {
- oReq = this.getCVObj().preparePromptValues(oReq);
- if (typeof oReq == "object" && oReq != null)
- {
- if (typeof oReq.m_oParams == "object" && oReq.m_oParams != null)
- {
- var oParamsDict = oReq.m_oParams;
- var aAllPrompts = [];
- var aParamsKeys = oParamsDict.keys();
- for (var idxParams = 0; idxParams < aParamsKeys.length; idxParams++)
- {
- var sKey = aParamsKeys[idxParams];
- var sKeyNoP = stripPFromParam(sKey);
- aAllPrompts[sKeyNoP] = oReq.getParameter(sKey);
- }
- if ( sAction == "cancel" )
- {
- this.getParameterManager().deletePromptPageParameter( sKeyNoP );
- }
- else
- {
- this.getParameterManager().addPromptPageParameters(aAllPrompts);
- }
- }
- oReq = null;
- return true;
- }
- }
- oReq = null;
- return false;
- };
- CReportManager.prototype.getUndoManager = function()
- {
- return this.m_oUndoManager;
- };
- CReportManager.prototype.handleUndoRedoBackJax = function()
- {
- if (this.get("currentMode") != "reporting")
- {
- return;
- }
- var stateForm = this.m_oReportFrame.document.backJaxState;
- if (stateForm == null)
- {
- return;
- }
- var id = stateForm.id;
- var undoCnt = stateForm.undoCnt;
- var redoCnt = stateForm.redoCnt;
- if (id.value != "empty" && id.value != this.m_oUndoManager.getId())
- {
-
-
-
- this.m_oUndoManager.init();
- }
- else if (undoCnt.value == "empty" && redoCnt.value == "empty" && id.value == "empty")
- {
- stateForm.id.value = this.m_oUndoManager.getId();
- undoCnt.value = this.m_oUndoManager.getUndoStackSize();
- redoCnt.value = this.m_oUndoManager.getRedoStackSize();
- this.m_oUndoManager.m_sCurrentSpec = this.get("sMiniQueryMarkup");
- }
- else
- {
-
-
-
- var iUndoCnt = undoCnt.value == "empty" ? 0 : parseInt(undoCnt.value);
- var iRedoCnt = redoCnt.value == "empty" ? 0 : parseInt(redoCnt.value);
- this.m_oUndoManager.updateUndoManagerState(iUndoCnt, iRedoCnt, this.get("sMiniQueryMarkup"), this.getParameterManager().getPromptPageParameters());
- }
- };
- CReportManager.prototype.createNewUndoManager = function()
- {
- this.m_oUndoManager = new CUndoManager();
- };
- CReportManager.prototype.updateMiniQueryWithUserPreference = function()
- {
- var oMQMgr = this.getApplicationManager().getMiniQueryManager();
- var oUserPreferenceManager = this.getApplicationManager().getUserPreferenceManager();
- var oAutoSummaryUserPreference = oUserPreferenceManager.getPreference("autoSummary");
- var oAutoFooterSummaryUserPreference = oUserPreferenceManager.getPreference("autoFooterSummary");
- var oEnableDrillUserPreference = oUserPreferenceManager.getPreference("enableDrill");
- var oEnableModelDrillUserPreference = oUserPreferenceManager.getPreference("enableModelDrill");
- var sAutoFooterSummary;
- var sAutoSummary;
- var sEnableDrill;
- var sEnableModelDrill;
-
-
- if (typeof oAutoFooterSummaryUserPreference === "object")
- {
- sAutoFooterSummary = oAutoFooterSummaryUserPreference.getValue();
- }
- if (typeof oAutoSummaryUserPreference === "object")
- {
- sAutoSummary = oAutoSummaryUserPreference.getValue();
- }
- if (typeof oEnableDrillUserPreference === "object")
- {
- sEnableDrill = oEnableDrillUserPreference.getValue();
- }
- if (typeof oEnableModelDrillUserPreference === "object")
- {
- sEnableModelDrill = oEnableModelDrillUserPreference.getValue();
- }
-
- oMQMgr.setAutoFooterSummary(sAutoFooterSummary);
- oMQMgr.setAutoSummary(sAutoSummary);
- oMQMgr.setEnableDrill(sEnableDrill);
- oMQMgr.setEnableModelDrill(sEnableModelDrill);
-
- };
- CReportManager.prototype.setDataModeFromMiniQuery = function()
- {
-
- if (!cfgGet("NewReportFirstRun"))
- {
-
-
-
- if (! (typeof oLimitedDataPreference === "object" && oLimitedDataPreference.getProperty("forceNoDataOnNextRun") === true))
- {
- return;
- }
- }
-
- cfgSet("NewReportFirstRun", false);
- cfgRemove("amountOfData");
- var oMQMgr = this.getApplicationManager().getMiniQueryManager();
- var oUserPreferenceManager = this.getApplicationManager().getUserPreferenceManager();
- var oCRQReportNode = oMQMgr.getCRQReportNode();
- if (typeof oCRQReportNode == "object")
- {
- var oDataDisplayUserPreference = oUserPreferenceManager.getPreference("limitedDataMode");
- if (typeof oDataDisplayUserPreference === "object")
- {
- var sLimitData = oCRQReportNode.getAttribute("limitData");
- if (sLimitData && sLimitData.length)
- {
-
- oDataDisplayUserPreference.setSystemValue(sLimitData);
- oLimitedDataPreference.setUserOverrideAllowed(false);
- }
- else
- {
-
- sLimitData = oDataDisplayUserPreference.getValue();
- this.getApplicationManager().getMiniQueryManager().setLimitData(sLimitData);
- }
-
-
- oLimitedDataPreference.setProperty("forceNoDataOnNextRun", false);
- }
- }
- };
- CReportManager.prototype.setDataModeAfterPreview = function()
- {
-
- var sRunType;
- if (cfgGet("isRunAsPreview"))
- {
- var oMQMgr = this.getApplicationManager().getMiniQueryManager();
- var oCRQReportNode = oMQMgr.getCRQReportNode();
- if (typeof oCRQReportNode == "object")
- {
- sRunType = cfgGet("amountOfData");
- if (sRunType)
- {
- this.getApplicationManager().getMiniQueryManager().setLimitData(sRunType);
- }
- cfgRemove("isRunAsPreview");
- }
- }
- return sRunType;
- };
- CReportManager.prototype.isCommandRunning = function ()
- {
- return this.m_bIsCommandRunning;
- };
- CReportManager.prototype.setCommandRunning = function (bRunning)
- {
- if (bRunning)
- {
- this.m_bIsCommandRunning = true;
- this.showSpinner(true);
- }
- else
- {
- this.m_bIsCommandRunning = false;
- this.showSpinner(false);
- }
- };
- CReportManager.prototype.showSpinner = function (bShowSpinner)
- {
- var oSpinnerDiv = document.getElementById("spinner");
- if (bShowSpinner)
- {
- if (oSpinnerDiv)
- {
- oSpinnerDiv.style.visibility = "visible";
- }
- }
- else
- {
- if (oSpinnerDiv)
- {
- oSpinnerDiv.style.visibility = "hidden";
- }
- }
- };
- CReportManager.prototype.clearReportFrameOnUnload = clearReportFrameOnUnload;
- function clearReportFrameOnUnload()
- {
- if (goApplicationManager.getReportFrame() && goApplicationManager.getReportFrame().window)
- {
-
- if (document.all)
- {
- goApplicationManager.getReportFrame().window.detachEvent("onunload", unloadReportFrame);
- }
- else
- {
- goApplicationManager.getReportFrame().window.removeEventListener("unload", unloadReportFrame, false);
- }
- }
- };
- CReportManager.prototype.unloadReportFrame = unloadReportFrame;
- function unloadReportFrame()
- {
- if (goApplicationManager && goApplicationManager.getReportFrame())
- {
-
-
- goApplicationManager.getReportFrame().frameClicked();
- }
- };
- CReportManager.prototype.isFilterCommand = function (sCommand)
- {
- var bMatch = false;
- if (sCommand)
- {
- var sMatch = sCommand.match(/^OD:/)
- || sCommand.match(/^OX:/)
- || sCommand.match(/[A-Z][A-Z];OD:./)
- || sCommand.match(/[A-Z][A-Z];OX:./);
- bMatch = (sMatch && sMatch.length > 0) ? true : false;
- }
- return bMatch;
- };
- CReportManager.prototype.persistQueryOptions = function ()
- {
- var bUpdateMiniQueryWithUserPreference = cfgGet("updateMiniQueryWithUserPreference");
- if (bUpdateMiniQueryWithUserPreference !== "true")
- {
-
-
- var bPersistOptions = cfgGet("persistOptions");
- if ((bPersistOptions == null) || (bPersistOptions == "undefined"))
- {
- cfgSet("manageFileMode", "true");
- return;
- }
-
- if (bPersistOptions === "false")
- {
-
-
- cfgSet("manageFileMode", "false");
- cfgRemove("persistOptions");
- return;
- }
- }
-
- var oMQMgr = this.getApplicationManager().getMiniQueryManager();
- if(typeof oMQMgr != "undefined" && oMQMgr !== null)
- {
- cfgSet("autoFooterSummary", oMQMgr.getAutoFooterSummary());
- cfgSet("autoSummary", oMQMgr.getAutoSummary());
- cfgSet("enableDrill", oMQMgr.getEnableDrill());
- cfgSet("enableModelDrill", oMQMgr.getEnableModelDrill());
- }
-
- cfgSet("manageFileMode", "true");
- };
- CReportManager.prototype.restoreQueryOptions = function ()
- {
- if(this.getApplicationManager().getMiniQueryManager().toString() != null)
- {
- this.setupMiniQuery(this.get("sMiniQueryMarkup"));
- var oMQMgr = this.getApplicationManager().getMiniQueryManager();
- var sAutoFooterSummary = cfgGet("autoFooterSummary");
- var sAutoSummary = cfgGet("autoSummary");
- var sEnableDrill = cfgGet("enableDrill");
- var sEnableModelDrill = cfgGet("enableModelDrill");
-
-
- typeof sAutoFooterSummary == "undefined" ? oMQMgr.setAutoFooterSummary("true") : oMQMgr.setAutoFooterSummary(sAutoFooterSummary);
- typeof sAutoSummary == "undefined" ? oMQMgr.setAutoSummary("true") : oMQMgr.setAutoSummary(sAutoSummary);
- typeof sEnableDrill == "undefined" ? oMQMgr.setEnableDrill("true") : oMQMgr.setEnableDrill(sEnableDrill);
- typeof sEnableModelDrill == "undefined" ? oMQMgr.setEnableModelDrill("true") : oMQMgr.setEnableModelDrill(sEnableModelDrill);
-
- this.add("sMiniQueryMarkup", oMQMgr.toString());
- }
- };
- function CParameterManager()
- {
- this.m_oReportManager = null;
- };
- CParameterManager.prototype = new CDictionary();
- CParameterManager.prototype.init = function ()
- {
- this.m_oReportManager = goApplicationManager.getReportManager();
- this.add("metadataParametersPassed", false);
- this.add("aPromptPageParameters", []);
- };
- CParameterManager.prototype.getReportManager = function ()
- {
- return this.m_oReportManager;
- };
- CParameterManager.prototype.setupParameters = function ()
- {
- var oCVObj = this.getReportManager().getCVObj();
- if (oCVObj !== null)
- {
- if (this.getExecutionParameters() != oCVObj.getExecutionParameters())
- {
- this.add("executionParameters", oCVObj.getExecutionParameters());
- }
- }
- };
- CParameterManager.prototype.getExecutionParameters = function ()
- {
- return this.get("executionParameters");
- };
- CParameterManager.prototype.clearExecutionParameters = function ()
- {
- this.remove("executionParameters");
- };
- CParameterManager.prototype.setMetadataParameters = function (sValue)
- {
- this.add("metadataParameters", sValue);
- };
- CParameterManager.prototype.getMetadataParameters = function ()
- {
- return this.get("metadataParameters");
- };
- CParameterManager.prototype.getMetadataParametersPassed = function ()
- {
- return this.get("metadataParametersPassed");
- };
- CParameterManager.prototype.getPromptPageParameters = function ()
- {
- return this.get("aPromptPageParameters");
- };
- CParameterManager.prototype.getPreviousPromptPageParameters = function ()
- {
- return this.get("aPreviousPromptPageParameters");
- };
- CParameterManager.prototype.addPromptPageParameter = function (sParamName, sValue)
- {
- if (typeof sParamName == "number" || typeof sParamName == "string")
- {
- var aNewParams = [];
- try
- {
- aNewParams[sParamName] = sValue;
- }
- catch (e)
- {
- }
- if (getArrayLength(aNewParams) > 0)
- {
- this.addPromptPageParameters(aNewParams);
- }
- }
- };
- CParameterManager.prototype.deletePromptPageParameter = function (sParamName)
- {
- if (typeof sParamName == "number" || typeof sParamName == "string")
- {
- var aPromptPageParams = this.getPromptPageParameters();
- if (getArrayLength(aPromptPageParams) > 0)
- {
- var aNewParams = [];
- var bIsFound = false;
- for (var idxParm in aPromptPageParams)
- {
- if (idxParm == sParamName)
- {
- bIsFound = true;
- }
- else
- {
- aNewParams[idxParm] = aPromptPageParams[idxParm];
- }
- }
- if (bIsFound === true)
- {
- if (getArrayLength(aNewParams) == 0)
- {
- this.clearPromptPageParameters();
- }
- else
- {
- this.add("aPromptPageParameters", aNewParams);
- }
- this.clearExecutionParameters();
- this.setMetadataParametersPassed(false);
- }
- }
- }
- };
- CParameterManager.prototype.addPromptPageParameters = function (aNewParams)
- {
-
-
- var aCurrentParams = this.getPromptPageParameters();
- if (aCurrentParams instanceof Array)
- {
- this.add("aPreviousPromptPageParameters", aCurrentParams);
- }
-
- if (aNewParams instanceof Array)
- {
- this.add("aPromptPageParameters", concatAssociativeArrays(this.getPromptPageParameters(), aNewParams));
- }
- };
- CParameterManager.prototype.clearPromptPageParameters = function ()
- {
- this.add("aPromptPageParameters", []);
- };
- CParameterManager.prototype.setMetadataParametersPassed = function (bValue)
- {
- if (bValue === true)
- {
- this.add("metadataParametersPassed", true);
- }
- else
- {
- this.add("metadataParametersPassed", false);
- }
- };
- CParameterManager.prototype.getParametersURL = function (bSetMetaParamsPassed)
- {
- var oParameters = this.getAllParametersAsObject();
- var sParameters = "";
- if (oParameters.promptPageParameters !== null)
- {
- for (var idxParams in oParameters.promptPageParameters)
- {
- if (sParameters !== "")
- {
- sParameters += "&";
- }
- if (typeof idxParm == "string" && idxParm.length > 0 && idxParm.charAt(0) != "_")
- {
- sParameters += "p_";
- }
- sParameters += idxParams + "=" + oParameters.promptPageParameters[idxParams];
- }
- }
- return sParameters;
- };
- CParameterManager.prototype.getParametersArray = function (bSetMetaParamsPassed)
- {
- var aParams = this.getPromptPageParameters();
- if (getArrayLength(aParams) > 0)
- {
- var aParametersWithP = [];
- for (var idxParm in aParams)
- {
- if (typeof idxParm == "string" && idxParm.length > 0 && idxParm.charAt(0) != "_")
- {
- aParametersWithP["p_" + idxParm] = aParams[idxParm];
- }
- else
- {
- aParametersWithP[idxParm] = aParams[idxParm];
- }
- }
- return aParametersWithP;
- }
- return aParams;
- };
- CParameterManager.prototype.getParameterValues = function (bSetMetaParamsPassed)
- {
- var oParameters = this.getAllParametersAsObject();
- var sParameters = "";
- if (oParameters.metadataParameters !== null && this.getMetadataParametersPassed() === false)
- {
- sParameters = oParameters.metadataParameters;
- if (bSetMetaParamsPassed === true)
- {
- this.setMetadataParametersPassed(true);
- }
- }
- else if (oParameters.executionParameters !== null)
- {
- sParameters = oParameters.executionParameters;
- }
- else if (oParameters.parameterValues !== null)
- {
- sParameters = oParameters.parameterValues;
- }
- return sParameters;
- };
- CParameterManager.prototype.getAllParametersAsObject = function ()
- {
- var oParameters = {};
- if (getArrayLength(this.getPromptPageParameters()) > 0)
- {
- oParameters.promptPageParameters = this.getPromptPageParameters();
- }
- else
- {
- oParameters.promptPageParameters = null;
- }
- if (this.getMetadataParameters() !== null)
- {
- oParameters.metadataParameters = this.getCompleteMetadataParameters();
- }
- else
- {
- oParameters.metadataParameters = null;
- }
- if (this.getExecutionParameters())
- {
- oParameters.executionParameters = this.getExecutionParameters();
- }
- else
- {
- oParameters.executionParameters = null;
- }
- if (cfgGet("parameterValues"))
- {
- oParameters.parameterValues = cfgGet("parameterValues");
- }
- else
- {
- oParameters.parameterValues = null;
- }
- return oParameters;
- };
- CParameterManager.prototype.isPrompted = function (sPromptParamName)
- {
- var bIsPrompted = false;
- if (getArrayLength(this.get("aPromptPageParameters")) > 0)
- {
- var oPromptParameters = this.get("aPromptPageParameters");
- for (var idxObj in oPromptParameters)
- {
- if (typeof idxObj == "string" && idxObj.length > 0 && idxObj.charAt(0) != "_" && idxObj == sPromptParamName)
- {
- bIsPrompted = true;
- break;
- }
- }
- }
- return bIsPrompted;
- };
- CParameterManager.prototype.getCompleteMetadataParameters = function ()
- {
- return this.getCompleteParameters(this.getMetadataParameters());
- };
- CParameterManager.prototype.getCompleteParameters = function (sParams)
- {
- var sParams = "<parameterValues xmlns:bus=\"http://developer.cognos.com/schemas/bibus/3/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"SOAP-ENC:Array\" xmlns:SOAP-ENC=\"http://schemas.xmlsoap.org/soap/encoding/\" SOAP-ENC:arrayType=\"bus:parameterValue[]\">" + sParams + "</parameterValues>";
- return sParams;
- };
- CParameterManager.prototype.getValueForParameter = function (sName)
- {
- var nRetval = null;
- var aPPP = this.getPromptPageParameters();
- var sValue = aPPP[sName];
- if (sValue)
- {
- nRetval = new XMLParser( sValue );
- }
- return nRetval;
- };
- CParameterManager.prototype.getRangePromptValues = function( sFromUse, sFromDisplay, sToUse, sToDisplay, bFromInclusive, bToInclusive )
- {
- if ( typeof sFromUse == "undefined" ) { sFromUse = null; }
- if ( typeof sFromDisplay == "undefined" ) { sFromDisplay = sFromUse; }
- if ( typeof sToUse == "undefined" ) { sToUse = null; }
- if ( typeof sToDisplay == "undefined" ) { sToDisplay = sToUse; }
- if ( typeof bFromInclusive == "undefined" ) { bFromInclusive = null; }
- if ( typeof bToInclusive == "undefined" ) { bToInclusive = null; }
- var promptValues = '<selectChoices>';
- if (sFromUse === null && sToUse === null)
- {
- if ( typeof onlyPrompt != "undefined")
- {
- onlyPrompt = true;
- }
- promptValues = '<selectChoices/>';
- }
- else
- {
- if (sFromUse === null)
- {
- promptValues += '<selectUnboundedStartRange selected="true">';
- promptValues += '<end displayValue="' + sXmlEncode(sToDisplay) + '" useValue="' + sXmlEncode(sToUse) + '"' + (bToInclusive === false ? ' inclusive="false"' : '') + '/>';
- promptValues += '</selectUnboundedStartRange>';
- }
- else if (sToUse === null)
- {
- promptValues += '<selectUnboundedEndRange selected="true">';
- promptValues += '<start displayValue="' + sXmlEncode(sFromDisplay) + '" useValue="' + sXmlEncode(sFromUse) + '"' + (bFromInclusive === false ? ' inclusive="false"' : '') + '/>';
- promptValues += '</selectUnboundedEndRange>';
- }
- else if (sFromUse == sToUse)
- {
- promptValues += '<selectOption displayValue="' + sXmlEncode(sFromDisplay) + '" useValue="' + sXmlEncode(sFromUse) + '" selected="true"/>';
- }
- else
- {
- if (sFromDisplay !== null && sToDisplay !== null) {
- promptValues += '<selectBoundRange selected="true">';
- promptValues += '<start displayValue="' + sXmlEncode(sFromDisplay) + '" useValue="' + sXmlEncode(sFromUse) + '"' + (bFromInclusive === false ? ' inclusive="false"' : '') + '/>';
- promptValues += '<end displayValue="' + sXmlEncode(sToDisplay) + '" useValue="' + sXmlEncode(sToUse) + '"' + (bToInclusive === false ? ' inclusive="false"' : '') + '/>';
- promptValues += '</selectBoundRange>';
- }
- else
- {
- promptValues += '<selectBoundRange selected="true">';
- promptValues += '<start useValue="' + sXmlEncode(sFromUse) + '"' + (bFromInclusive === false ? ' inclusive="false"' : '') + '/>';
- promptValues += '<end useValue="' + sXmlEncode(sToUse) + '"' + (bToInclusive === false ? ' inclusive="false"' : '') + '/>';
- promptValues += '</selectBoundRange>';
- }
- }
- promptValues += '</selectChoices>';
- }
- return promptValues;
- };
- CParameterManager.prototype.getOptionPromptValues = function (aUseDisplayValues)
- {
- var sPromptValues = '<selectChoices>';
- for (var sKey in aUseDisplayValues)
- {
- sPromptValues += '<selectOption displayValue="' + sXmlEncode(aUseDisplayValues[sKey]);
- sPromptValues += '" useValue="' + sXmlEncode(sKey);
- sPromptValues += '" selected="true"/>';
- }
- sPromptValues += '</selectChoices>';
- return (sPromptValues);
- };
- CParameterManager.prototype.setDrillThroughParameterValues = function (sDrillThroughXML)
- {
-
- var oDrillXML = new XMLParser("<dummyDrillRoot>" + sDrillThroughXML + "</dummyDrillRoot>");
- var oBusElements = oDrillXML.getElementsByTagName('bus:parameters', false);
- var oDrillBusParameterElement = oBusElements[0];
- for (var iBusElementIndex = 1; iBusElementIndex < oBusElements.length; iBusElementIndex++)
- {
- var oItemElements = oBusElements[iBusElementIndex].getElementsByTagName('item', false);
- for (var iItemElementIndex = 0; iItemElementIndex < oItemElements.length; iItemElementIndex++)
- {
- oDrillBusParameterElement.appendChild(oItemElements[iItemElementIndex]);
- }
- }
-
- this.m_oDrillThroughParameterValues = oDrillBusParameterElement;
- this.convertDrillThroughParametersToPromptParameters();
- };
- CParameterManager.prototype.getDrillThroughParameterValues = function ()
- {
- return this.m_oDrillThroughParameterValues;
- };
- CParameterManager.prototype.convertDrillThroughParametersToPromptParameters = function ()
- {
-
-
-
- var oDrillThroughXML = this.getDrillThroughParameterValues();
- if (oDrillThroughXML instanceof XMLElement)
- {
- var oItemElements = oDrillThroughXML.getElementsByTagName('item', false);
- for (var iItemElementIndex = 0; iItemElementIndex < oItemElements.length; iItemElementIndex++)
- {
- var aPromptValues = new Object();
- var sPromptId = "";
-
-
- var oItem = oItemElements[iItemElementIndex];
- var oName = oItem.findChildByName('bus:name');
- if (oName)
- {
- sPromptId = oName.nodeValue;
- }
-
-
- var oValueItemElements = oItem.getElementsByTagName('item', true);
- for (var iValueItemElementIndex = 0; iValueItemElementIndex < oValueItemElements.length; iValueItemElementIndex++)
- {
-
- var sInclusive = "";
- var sDisplay = "";
- var sUse = "";
-
-
-
- var oValueItem = oValueItemElements[iValueItemElementIndex];
- var oStart = oValueItem.findChildByName('bus:start');
- if(oStart)
- {
- var sFromInclusive = null;
- var sFromDisplay = null;
- var sFromUse = null;
- var sToInclusive = null;
- var sToDisplay = null;
- var sToUse = null;
-
- var oFromInclusive = oStart.findChildByName('bus:inclusive');
- if(oFromInclusive)
- sFromInclusive = sXmlDecode(oFromInclusive.nodeValue);
-
- var oFromDisplay = oStart.findChildByName('bus:display');
- if(oFromDisplay)
- sFromDisplay = sXmlDecode(oFromDisplay.nodeValue);
-
- var oFromUse = oStart.findChildByName('bus:use');
- if(oFromUse)
- sFromUse = sXmlDecode(oFromUse.nodeValue);
-
- var oEnd = oValueItem.findChildByName('bus:end');
- if(oEnd)
- {
- var oToInclusive = oEnd.findChildByName('bus:inclusive');
- if(oToInclusive)
- sToInclusive = sXmlDecode(oToInclusive.nodeValue);
-
- var oToDisplay = oEnd.findChildByName('bus:display');
- if(oFromDisplay)
- sToDisplay = sXmlDecode(oToDisplay.nodeValue);
-
- var oToUse = oEnd.findChildByName('bus:use');
- if(oFromUse)
- sToUse = sXmlDecode(oToUse.nodeValue);
- }
-
- var sPromptValues = this.getRangePromptValues( sFromUse, sFromDisplay, sToUse, sToDisplay, sFromInclusive, sToInclusive );
- }
-
- else
- {
- var oInclusive = oValueItem.findChildByName('bus:inclusive');
- if (oInclusive)
- {
- sInclusive = sXmlDecode(oInclusive.nodeValue);
- }
-
- var oDisplay = oValueItem.findChildByName('bus:display');
- if (oDisplay)
- {
- sDisplay = sXmlDecode(oDisplay.nodeValue);
- }
- var oUse = oValueItem.findChildByName('bus:use');
- if (oUse)
- {
- sUse = sXmlDecode(oUse.nodeValue);
- }
-
-
-
- aPromptValues[sUse] = sDisplay;
-
-
- var sPromptValues = this.getOptionPromptValues(aPromptValues);
- }
- }
- this.addPromptPageParameter(sPromptId, sPromptValues);
- }
- }
- return null;
- };
-
- function reportIsReadyCallback()
- {
- var oRepMgr = goApplicationManager.getReportManager();
- oRepMgr.add("bReportReady", true);
- oRepMgr.updateStateFromCVObj();
- oRepMgr.restoreQueryOptions();
- oRepMgr.handleNavigationLinks();
- oRepMgr.handleUndoRedoBackJax();
- oRepMgr.getParameterManager().setupParameters();
- oRepMgr.setupLiveReport();
- };
- function reportHasErrorCallback()
- {
- var oRepMgr = goApplicationManager.getReportManager();
- oRepMgr.getUndoManager().m_redoStack = new Array();
- };
- function reportIsPromptingCallback()
- {
- var oRepMgr = goApplicationManager.getReportManager();
- oRepMgr.updateStateFromCVObj();
- oRepMgr.handleNavigationLinks();
- oRepMgr.getParameterManager().setupParameters();
- oRepMgr.getCVObj().showWaitPage(false);
-
-
-
- oRepMgr.getCVObj().cancelPrompt = function()
- {
- goApplicationManager.getReportManager().cancel();
- }
-
- if (typeof oRepMgr.getCVObj().promptActionOrig != "function")
- {
- oRepMgr.getCVObj().promptActionOrig = oRepMgr.getCVObj().promptAction;
- }
- oRepMgr.getCVObj().promptAction = function(sAction, sUrl)
- {
- var bProceedWithPrompt = goApplicationManager.getReportManager().handlePromptAction(sAction, sUrl);
- if (bProceedWithPrompt && typeof this.promptActionOrig == "function")
- {
- oRepMgr.setCommandRunning(true);
- this.promptActionOrig(sAction, sUrl);
- }
- }
- };
- function reportIsWaitingCallback()
- {
- var oRepMgr = goApplicationManager.getReportManager();
- oRepMgr.updateStateFromCVObj();
- oRepMgr.handleNavigationLinks();
- };
- function tempDropColumn(event)
- {
- if(dropColumn)
- {
- dropColumn(event, null);
- }
- };
- function mouseMove(event)
- {
- if (typeof resizeMenuPane === "function")
- {
- resizeMenuPane(event, true);
- }
- if (typeof resizeDialogFrame === "function")
- {
- var iTop = 0;
- if (document.all)
- {
- var oRepFrame = document.getElementById("reportFrame");
- while (oRepFrame !== null)
- {
- if (oRepFrame.tagName != "TR" && typeof oRepFrame.offsetTop == "number")
- {
- iTop += oRepFrame.offsetTop;
- }
- oRepFrame = oRepFrame.offsetParent;
- }
- }
- resizeDialogFrame(event, event.clientY + iTop);
- }
- };
- function dragEnter(event)
- {
- if (goApplicationManager.get("showStartPage") === true)
- {
- dragStartPageLeaveColumn(event);
- }
- else
- {
- dragEnterColumn(event);
- }
- if (!window.ie)
- {
- event.preventDefault();
- }
- };
- function dragOver(event)
- {
- if (goApplicationManager.get("showStartPage") === true)
- {
- dragStartPageLeaveColumn(event);
- }
- else
- {
- dragOverColumn(event);
- }
- if (!window.ie)
- {
- event.preventDefault();
- }
- };
- function dragLeave(event, bForceHide)
- {
- if (typeof bForceHide == "undefined")
- {
- bForceHide = false;
- }
- if (goApplicationManager.get("showStartPage") === true)
- {
- dragStartPageLeaveColumn(event);
- }
- else
- {
- dragLeaveColumn(event, bForceHide);
- if (!window.ie) {
- dragEnterColumn(event);
- }
- }
- if (!window.ie)
- {
- event.preventDefault();
- }
- };
- function errorExit()
- {
- var repMgr = null;
- var oMQ = null;
- if (typeof cf === "object" && cf.goApplicationManager)
- {
- repMgr = cf.goApplicationManager.getReportManager();
- oMQ = cf.goApplicationManager.getMiniQueryManager();
- }
- if (repMgr !== null && oMQ !== null)
- {
- var sMQ = oMQ.toString();
- if(repMgr.isCommandRunning() == true && sMQ && sMQ.length)
- {
- repMgr.setCommandRunning(false);
- var sUndoManager = repMgr.getUndoManager();
- sUndoManager.setReuseConversation(false);
-
- var undoResult = false;
- var addToUndoResult = false;
-
- if (oMQ.m_sPreviousDataMode === "none")
- {
-
- sUndoManager.undo();
- undoResult = true;
- }
- else if (sUndoManager.canUndo())
- {
-
-
- var sLastUndoSpec = sUndoManager.m_undoStack[sUndoManager.m_undoStack.length - 1];
-
-
-
-
- if (sLastUndoSpec === sMQ)
- {
- undoResult = sUndoManager.undo();
- }
-
-
-
- else
- {
- var aPromptValues = repMgr.getParameterManager().getPromptPageParameters();
- addToUndoResult = sUndoManager.addToUndo(sMQ, null, aPromptValues);
- if (addToUndoResult)
- undoResult = sUndoManager.undo();
- }
- }
- else {
-
-
-
- var aPromptValues = repMgr.getParameterManager().getPromptPageParameters();
- addToUndoResult = sUndoManager.addToUndo(sMQ, null, aPromptValues);
- if (addToUndoResult)
- undoResult = sUndoManager.undo();
- }
-
- if (!undoResult)
- bannerHome(cfgGet("gsCognosHome"));
- }
- else
- {
-
- if(goApplicationManager.getWindowManager().isDialogFrameOpen())
- {
- hideDialogFrame();
- }
- else
- {
-
-
- if (! sMQ || sMQ.length == 0)
- {
-
- closeLink(true);
- }
- else
- {
- bannerHome(cfgGet("gsCognosHome"));
- }
- }
- }
- }
- };
|