123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Licensed Materials - Property of IBM
- IBM Cognos Products: ps
- (C) Copyright IBM Corp. 2005, 2011
- 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 (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
- -->
- <!--
- *******************************************************************
- *******************************************************************
- *******************************************************************
- *******************************************************************
- THIS IS THE SAVE MORPHLET FOR
- POWERPLAY WEB INTEGRATION
- INTO COGNOS CONNECTION.
- *******************************************************************
- *******************************************************************
- *******************************************************************
- *******************************************************************
- -->
- <xts:morphlet xmlns:xts="http://developer.cognos.com/schemas/xts/" messageBase="messages/portal.xml, messages/portalRL.xml">
- <!--
- This morphlet (save_as.xts) consists of the following blocks:
- formlogic_init - update various /root/env level parameters based on new or changed /root/env parameters.
- getRootNames - build to /root/cmRoots structure and the /root/session/param with name attributes e_proot (public), e_mroot (private) and e_hp (home page).
- getContent - retrieve CM Information for this page.
- getRootMap - build the /root/CMRootMap/class structure with name and root attributes.
- renderPage - render the Save as page when user doing a copy or saving a Query Studio report.
- -->
- <!-- formlogic_init =============================================================================================== -->
- <xts:block id="formlogic_init" type="exec" mode="interpret" processor="XSLT" path="/logicsheets/formlogic_init.xslt" nodelist="env,credential,system,http"/>
- <!--
- ===============================================================================================
- getContent - get our data from Content Manager
- ===============================================================================================
- -->
- <xts:block id="getContent" processor="XSLT" type="exec" dependency="formlogic_init">
- <xts:logicsheet path="logicsheets/buslogic.xslt"/>
- <xsl:stylesheet
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
- xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
- xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
- xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/">
- <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
-
- <xsl:template match="/">
- <xts:sequence>
- <xts:append>
- <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
- <send:request provider="cm">
- <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT">
- <cm:query>
- <cm:search>
- <xsl:value-of select="/root/env/param[@name = 'm_path']"/>
- </cm:search>
- <cm:properties>
- <cm:property name="dataBlocks"/>
- <cm:property name="options"/> </cm:properties>
- <cm:options schemaInfo="true" maxObjects="1"/>
- </cm:query>
- </xts:transform>
- </send:request>
- </xts:transform>
- </xts:append>
- </xts:sequence>
- </xsl:template>
- </xsl:stylesheet>
- </xts:block>
-
- <xts:block id="ppwSave" processor="XSLT" type="exec" dependency="formlogic_init getContent">
- <xts:logicsheet path="logicsheets/buslogic.xslt"/>
- <xts:logicsheet path="logicsheets/portal.xsl"/>
- <xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:xts="http://developer.cognos.com/schemas/xts/"
- xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
- xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
- xmlns:cms="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cms/1/"
- xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
- xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" exclude-result-prefixes="cms xts send cm pf xtsext">
-
- <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
-
- <pf:variables/> <!-- global application variables -->
-
- <xsl:template match="/">
- <xsl:apply-templates select="/root/env"/>
- </xsl:template>
- <xsl:template match="env">
-
- <!-- this is the class of the new object -->
- <xsl:variable name="cls" select="param[@name='m_class']"/>
- <xts:sequence>
- <!-- prepare and send the add request -->
- <xts:append>
- <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
- <send:request provider="cm">
- <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT">
- <cm:update xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/">
- <cm:objects>
- <xsl:element name="cm:{$cls}" namespace="http://developer.cognos.com/schemas/xts-cm/1/">
- <cm:searchPath><xsl:value-of select="param[@name='m_path']"/></cm:searchPath>
- <xsl:apply-templates select="param[starts-with(string(@name),'m_p_')]"/>
- <xsl:if test="string(param[@name='m_class'])='powerPlayReport'">
- <xsl:if test="param[starts-with(string(@name),'m_ppro_')]">
- <cm:options>
- <!-- powerPlayOptionOutputFormat -->
- <xsl:choose>
- <xsl:when test="param[string(@name)='m_ppro_outputFormat']">
- <cm:powerPlayOption class="powerPlayOptionOutputFormat">
- <cm:name>outputFormat</cm:name>
- <cm:value type="powerPlayOutputFormatEnum"><xsl:value-of select="param[@name='m_ppro_outputFormat']"/></cm:value>
- </cm:powerPlayOption>
- </xsl:when>
- <xsl:when test="/root/cm:queryResponse/cm:powerPlayReport/cm:options/cm:powerPlayOptionOutputFormat[cm:name='outputFormat']">
- <cm:powerPlayOption class="powerPlayOptionOutputFormat">
- <cm:name>outputFormat</cm:name>
- <cm:value type="powerPlayOutputFormatEnum"><xsl:value-of select="/root/cm:queryResponse/cm:powerPlayReport/cm:options/cm:powerPlayOptionOutputFormat[cm:name='outputFormat']/cm:value"/></cm:value>
- </cm:powerPlayOption>
- </xsl:when>
- </xsl:choose>
- <!-- powerPlayOptionData -->
- <xsl:choose>
- <xsl:when test="param[@name='m_ppro_data']">
- <cm:powerPlayOption class="powerPlayOptionData">
- <cm:name>data</cm:name>
- <cm:value type="powerPlayDataEnum"><xsl:value-of select="param[@name='m_ppro_data']"/></cm:value>
- </cm:powerPlayOption>
- </xsl:when>
- <xsl:when test="/root/cm:queryResponse/cm:powerPlayReport/cm:options/cm:powerPlayOptionData[cm:name='data']">
- <cm:powerPlayOption class="powerPlayOptionData">
- <cm:name>data</cm:name>
- <cm:value type="powerPlayDataEnum"><xsl:value-of select="/root/cm:queryResponse/cm:powerPlayReport/cm:options/cm:powerPlayOptionData[cm:name='data']/cm:value"/></cm:value>
- </cm:powerPlayOption>
- </xsl:when>
- </xsl:choose>
- <!-- powerPlayOptionBoolean -->
- <xsl:choose>
- <xsl:when test="param[@name='m_ppro_prompt']">
- <cm:powerPlayOption class="powerPlayOptionBoolean">
- <cm:name>prompt</cm:name>
- <cm:value type="boolean"><xsl:value-of select="param[@name='m_ppro_prompt']"/></cm:value>
- </cm:powerPlayOption>
- </xsl:when>
- <xsl:when test="/root/cm:queryResponse/cm:powerPlayReport/cm:options/cm:powerPlayOptionBoolean[cm:name='prompt']">
- <cm:powerPlayOption class="powerPlayOptionBoolean">
- <cm:name>prompt</cm:name>
- <cm:value type="boolean"><xsl:value-of select="/root/cm:queryResponse/cm:powerPlayReport/cm:options/cm:powerPlayOptionBoolean[cm:name='prompt']/cm:value"/></cm:value>
- </cm:powerPlayOption>
- </xsl:when>
- </xsl:choose>
- </cm:options>
- </xsl:if>
- </xsl:if>
- <xsl:if test="starts-with(string($cls),'powerPlay') and param[starts-with(string(@name),'m_ppdb_')]">
- <cm:dataBlocks>
- <xsl:choose>
- <xsl:when test="param[string(@name)='m_ppdb_parameters']">
- <cm:dataBlock>
- <cm:data><xsl:value-of select="param[string(@name)='m_ppdb_parameters']"/></cm:data>
- <cm:id>parameters</cm:id>
- </cm:dataBlock>
- </xsl:when>
- <xsl:when test="/root/cm:queryResponse/cm:options/cm:powerPlayReport/cm:dataBlocks/cm:powerPlayDataBlock[string(cm:id)='parameters']">
- <cm:dataBlock>
- <cm:data><xsl:value-of select="/root/cm:queryResponse/cm:powerPlayReport/cm:dataBlocks/cm:powerPlayDataBlock[string(cm:id)='parameters']/cm:data"/></cm:data>
- <cm:id>parameters</cm:id>
- </cm:dataBlock>
- </xsl:when>
- </xsl:choose>
- <xsl:choose>
- <xsl:when test="param[string(@name)='m_ppdb_reportConfiguration']">
- <cm:dataBlock>
- <cm:data><xsl:value-of select="param[string(@name)='m_ppdb_reportConfiguration']"/></cm:data>
- <cm:id>reportConfiguration</cm:id>
- </cm:dataBlock>
- </xsl:when>
- <xsl:when test="/root/cm:queryResponse/cm:powerPlayReport/cm:dataBlocks/cm:powerPlayDataBlock[string(cm:id)='reportConfiguration']">
- <cm:dataBlock>
- <cm:data><xsl:value-of select="/root/cm:queryResponse/cm:powerPlayReport/cm:dataBlocks/cm:powerPlayDataBlock[string(cm:id)='reportConfiguration']/cm:data"/></cm:data>
- <cm:id>reportConfiguration</cm:id>
- </cm:dataBlock>
- </xsl:when>
- </xsl:choose>
- <xsl:choose>
- <xsl:when test="param[string(@name)='m_ppdb_reportSpecification']">
- <cm:dataBlock>
- <cm:data><xsl:value-of select="param[string(@name)='m_ppdb_reportSpecification']"/></cm:data>
- <cm:id>reportSpecification</cm:id>
- </cm:dataBlock>
- </xsl:when>
- <xsl:when test="/root/cm:queryResponse/cm:powerPlayReport/cm:dataBlocks/cm:powerPlayDataBlock[string(cm:id)='reportSpecification']">
- <cm:dataBlock>
- <cm:data><xsl:value-of select="/root/cm:queryResponse/cm:powerPlayReport/cm:dataBlocks/cm:powerPlayDataBlock[string(cm:id)='reportSpecification']/cm:data"/></cm:data>
- <cm:id>reportSpecification</cm:id>
- </cm:dataBlock>
- </xsl:when>
- </xsl:choose>
- </cm:dataBlocks>
- </xsl:if>
- </xsl:element>
- </cm:objects>
- </cm:update>
- </xts:transform>
- </send:request>
- </xts:transform>
- </xts:append>
- </xts:sequence>
- </xsl:template>
-
- <xsl:template match="param[starts-with(string(@name),'m_p_')]">
- <!-- create an element for each property passed in -->
- <xsl:element name="{substring-after(string(@name), 'm_p_')}" namespace="http://developer.cognos.com/schemas/xts-cm/1/">
- <!-- name is the on CM property that must be encoded *before* giving to CM -->
- <xsl:value-of select="."/>
- </xsl:element>
- </xsl:template>
-
- <xsl:template match="text()"/>
- </xsl:stylesheet>
- </xts:block>
- <!--
- ===============================================================================================
- redirect - redirect the browser
- ===============================================================================================
- -->
- <xts:block id="redirect" dependency="formlogic_init ppwSave" mode="output" processor="XSLT" type="exec" mimeType="text/html">
- <xts:logicsheet path="logicsheets/portal.xsl"/>
- <xts:logicsheet path="logicsheets/presentation/dialog/presentation.xsl"/>
- <xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
- xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/"
- xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
- xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
- xmlns:bus="http://developer.cognos.com/schemas/bibus/3/"
- xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/"
- xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/"
- xmlns:cml="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cml/1/"
- xmlns:xts="http://developer.cognos.com/schemas/xts/"
- exclude-result-prefixes="xsl pf dp utml xtsext cp bus cm cml xts">
- <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no" omit-xml-declaration="yes"/>
-
- <pf:variables/>
-
- <xsl:template match="/">
- <xsl:variable name="ppURL">
- <xsl:value-of select="concat(string(/root/env/param[@name='successURL']),'&crnobj=',xtsext:urlencode(string(/root/env/param[@name='m_path'])))"/>
- </xsl:variable>
- <xsl:text disable-output-escaping='yes'><!DOCTYPE html></xsl:text><dp:page longTitle="$product_name">
- <dp:meta>
- <pf:meta/> <!-- Add standard meta tags -->
- </dp:meta>
- <form name="pform" method="post" action="{$gateway}">
- <input name="doPostURL" value="successURL" type="hidden"/>
- <input name="m" type="hidden" value="portal/postURL.xts"/>
- <input name="successURL" type="hidden">
- <xsl:attribute name="value"><xsl:value-of select="$ppURL"/></xsl:attribute>
- </input>
- </form>
- <script language="javascript">document.pform.submit();</script>
- </dp:page>
- </xsl:template>
-
- </xsl:stylesheet>
- </xts:block>
-
- </xts:morphlet>
|