123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204 |
- /****************************************************************************************************************************
- Licensed Materials - Property of IBM
- BI and PM: QFW
- © Copyright IBM Corp. 2005, 2010
- US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- *****************************************************************************************************************************/
- function C_QanExecPlanNode( iNodeId, nProviderQuery, oParentNode, oNestedCallsParentNode )
- {
- this.m_iNodeId = iNodeId;
- this.m_nProviderQuery = nProviderQuery;
- this.m_oParentNode = oParentNode;
- this.m_oNestedCallsParentNode = oNestedCallsParentNode;
- this.m_aChildNodes = [];
-
- if( oParentNode )
- oParentNode.F_AddChild( this );
- else
- if( oNestedCallsParentNode )
- {
- oNestedCallsParentNode.F_AddNestedRoot( this );
- }
- };
- C_QanExecPlanNode.prototype.F_AddChild = function( oExecPlanNode )
- {
- this.m_aChildNodes.push( oExecPlanNode );
- };
- C_QanExecPlanNode.prototype.F_AddNestedRoot = function( oExecPlanNode )
- {
- if( !this.m_aNestedRootNodes )
- this.m_aNestedRootNodes = [];
-
- this.m_aNestedRootNodes.push( oExecPlanNode );
- };
- C_QanExecPlanNode.prototype.F_GetNestedRootNodes = function()
- {
- return this.m_aNestedRootNodes;
- };
- C_QanExecPlanNode.prototype.F_GetChildNodes = function()
- {
- return this.m_aChildNodes;
- };
- C_QanExecPlanNode.prototype.F_GetParentNode = function()
- {
- return this.m_oParentPlanNode;
- };
- C_QanExecPlanNode.prototype.F_GetNestedCallsParentNode = function()
- {
- return this.m_oNestedCallsParentNode;
- };
- C_QanExecPlanNode.prototype.F_GetID = function()
- {
- return this.m_iNodeId;
- }
- C_QanExecPlanNode.prototype.F_GetName = function()
- {
- if( this.m_sName )
- return this.m_sName;
- this.m_sName = this.m_nProviderQuery.getAttribute( "name" );
-
- return this.m_sName;
- };
- C_QanExecPlanNode.prototype.F_GetProvider = function()
- {
- return this.m_nProviderQuery.getAttribute( "provider" );
- }
- C_QanExecPlanNode.prototype.F_SetQueryFeedback = function( nQueryFeedbackResult )
- {
- this.m_nQueryFeedbackResult = nQueryFeedbackResult;
- }
- C_QanExecPlanNode.prototype.f_getFeedbackProperty = function( sPropertyName )
- {
- if( !this.m_nQueryFeedbackResult )
- return;
-
- var v_nProperty =
- this.m_nQueryFeedbackResult.selectSingleNode( "property[@name='" + sPropertyName + "']" );
-
- if( !v_nProperty )
- return;
-
- return v_nProperty.text;
- }
- C_QanExecPlanNode.prototype.F_GetCommandType = function()
- {
- return this.f_getFeedbackProperty("nativeCommandType");
- }
- C_QanExecPlanNode.prototype.F_GetNativeCommand = function()
- {
- return this.f_getFeedbackProperty("nativeCommandText");
- }
- C_QanExecPlanNode.prototype.F_GetCognosCommand = function()
- {
- return this.f_getFeedbackProperty("CognosCommandText");
- }
- C_QanExecPlanNode.prototype.F_GetConnections = function()
- {
- if( !this.m_nQueryFeedbackResult )
- return;
-
- var v_nlConnections =
- this.m_nQueryFeedbackResult.selectSingleNode( "property[@name='connections']/connection" );
-
- return v_nlConnections;
- }
- C_QanExecPlanNode.prototype.f_getProvider2OperationName = function()
- {
- if( C_QanExecPlanNode.prototype.m_provider2OperationName )
- return C_QanExecPlanNode.prototype.m_provider2OperationName;
-
- C_QanExecPlanNode.prototype.m_provider2OperationName = [];
- C_QanExecPlanNode.prototype.m_provider2OperationName["RelationalQueryProvider"] = "SQL";
- C_QanExecPlanNode.prototype.m_provider2OperationName["OlapQueryProvider"] = "MDX";
- C_QanExecPlanNode.prototype.m_provider2OperationName["CubeBuildProvider"] = "Dynamic Cube";
- C_QanExecPlanNode.prototype.m_provider2OperationName["MDProvider"] = "Master-Detail";
- C_QanExecPlanNode.prototype.m_provider2OperationName["ZeroSuppressionProvider"] = "Zero/Null Suppression";
- C_QanExecPlanNode.prototype.m_provider2OperationName["ReporterModeProvider"] = "Stitching";
- C_QanExecPlanNode.prototype.m_provider2OperationName["NoDataModeProvider"] = "Data emulation";
- C_QanExecPlanNode.prototype.m_provider2OperationName["MDOperationProvider"] = "Member names fix up";
-
- return C_QanExecPlanNode.prototype.m_provider2OperationName;
- }
- C_QanExecPlanNode.prototype.F_GetOperationName = function()
- {
- if( this.m_sOperationName )
- return this.m_sOperationName;
-
- var v_sProvider = this.F_GetProvider();
- if( v_sProvider == "MDOperationProvider" && this.m_aNestedRootNodes )
- return "@cube";
- this.m_sOperationName = this.f_getProvider2OperationName()[v_sProvider];
-
- if( !this.m_sOperationName )
- this.m_sOperationName = v_sProvider + " operation";
- return this.m_sOperationName;
- }
- C_QanExecPlanNode.prototype.f_getProvider2BoxHtml = function()
- {
- if( C_QanExecPlanNode.prototype.m_provider2BoxHtml )
- return C_QanExecPlanNode.prototype.m_provider2BoxHtml;
-
- C_QanExecPlanNode.prototype.m_provider2BoxHtml = [];
- C_QanExecPlanNode.prototype.m_provider2BoxHtml["RelationalQueryProvider"] = "<b>SQL<b>";
- C_QanExecPlanNode.prototype.m_provider2BoxHtml["OlapQueryProvider"] = "<b>MDX</b>";
- C_QanExecPlanNode.prototype.m_provider2BoxHtml["CubeBuildProvider"] = "Dynamic<br>Cube";
- C_QanExecPlanNode.prototype.m_provider2BoxHtml["MDProvider"] = "Master-Detail";
- C_QanExecPlanNode.prototype.m_provider2BoxHtml["ZeroSuppressionProvider"] = "Zero/Null</br>Suppression";
- C_QanExecPlanNode.prototype.m_provider2BoxHtml["ReporterModeProvider"] = "Stitching";
- C_QanExecPlanNode.prototype.m_provider2BoxHtml["NoDataModeProvider"] = "Data<br>emulation";
- C_QanExecPlanNode.prototype.m_provider2BoxHtml["MDOperationProvider"] = "Member names<br>fix up";
-
- return C_QanExecPlanNode.prototype.m_provider2BoxHtml;
- }
- C_QanExecPlanNode.prototype.F_GetOperationBoxHtml = function()
- {
- if( this.m_sOperationBoxHtml )
- return this.m_sOperationBoxHtml;
-
- var v_sProvider = this.F_GetProvider();
- if( v_sProvider == "MDOperationProvider" && this.m_aNestedRootNodes )
- return "@cube";
- this.m_sOperationBoxHtml = this.f_getProvider2BoxHtml()[v_sProvider];
-
- if( !this.m_sOperationBoxHtml )
- this.m_sOperationBoxHtml = v_sProvider + " operation";
- return this.m_sOperationBoxHtml;
- }
|