123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Licensed Materials - Property of IBM
- IBM Cognos Products: AGS
- (C) Copyright IBM Corp. 2005, 2013
- US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- -->
- <xts:morphlet xmlns:xts="http://developer.cognos.com/schemas/xts/" messageBase="messages/AGS.xml,messages/portal.xml, messages/portalRL.xml" resolverBase="prompting" includeConfig="true" requiredCapability="canUseEventStudio">
- <!--
- ===============================================================================================
- processRequestParams - Default any params that weren't passed in. Also this is where we would
- do validation (when time permits).
- ===============================================================================================
- -->
- <xts:block id="processRequestParams" processor="XSLT" type="exec" nodeList="/root/*[local-name()='requestParams']">
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="xsl">
- <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
- <xsl:template match="/">
- <xts:sequence>
- <xts:append select="/root/*[local-name()='requestParams']">
- <xts:transform src="portal/controls/gen_default_parameters.xslt" processor="XSLT">
- <root>
- <xts:transform name="XML">
- <xts:param name="systemId">ags/defineCondition_API.xml</xts:param>
- </xts:transform>
- <xsl:copy-of select="/root/*[local-name()='requestParams']"/>
- </root>
- </xts:transform>
- </xts:append>
- </xts:sequence>
- </xsl:template>
- </xsl:stylesheet>
- </xts:block>
- <!--
- ===============================================================================================
- returnResult - We're done with the email options morphlet, so return the appropriate response
- ===============================================================================================
- -->
- <xts:block id="returnResult" dependency="processRequestParams" type="exec" processor="XSLT" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'next' or /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'back' or /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'finished' or /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'canceled']" mandatory="false">
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xos="http://developer.cognos.com/schemas/xts/output/" exclude-result-prefixes="xsl xos">
- <xsl:output method="xml" encoding="utf-8" indent="no"/>
- <xsl:key name="request-param" match="/root/*[local-name()='requestParams']/*[local-name()='param']" use="@name"/>
- <xsl:template match="/">
- <xts:sequence>
- <xts:append select="/root/output">
- <xts:transform name="Null" option="part" mimeType="text/xml">
- <xsl:element name="{key('request-param','resultNode')}" namespace="">
- <xsl:choose>
- <xsl:when test="/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'canceled'">
- <canceled/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:variable name="detailExpression" select="/root/env/param[@name='detailExpression']"/>
- <xsl:variable name="summaryExpression" select="/root/env/param[@name='summaryExpression']"/>
- <!-- place a response here -->
- <tabResult>
- <xsl:value-of select="/root/env/param[@name='AgentTask-condition']"/>
- <!--xsl:if test="$detailExpression != ''">
- <xts:transform name="XMLEncode">
- <detailFilters>
- <detailFilter use="required" postAutoAggregation="false">
- <filterExpression><xsl:value-of select="$detailExpression"/></filterExpression>
- </detailFilter>
- </detailFilters>
- </xts:transform>
- </xsl:if>
- <xsl:if test="$summaryExpression != ''">
- <xts:transform name="XMLEncode">
- <summaryFilters>
- <summaryFilter use="required">
- <filterExpression><xsl:value-of select="$summaryExpression"/></filterExpression>
- </summaryFilter>
- </summaryFilters>
- </xts:transform>
- </xsl:if-->
- </tabResult>
- <param name="conditionSummary" selectedTab="{/root/env/param[@name='rp_selected_tab']}">
- <xsl:text/>
- <xsl:variable name="both">
- <xsl:if test="$detailExpression != '' and $summaryExpression != ''"> and </xsl:if>
- </xsl:variable>
- <xsl:choose>
- <xsl:when test="$both=' and '">
- <xsl:text>(</xsl:text><xsl:value-of select="$detailExpression"/><xsl:text>)</xsl:text><xsl:value-of select="$both"/><xsl:text>(</xsl:text><xsl:value-of select="$summaryExpression"/><xsl:text>)</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$detailExpression"/><xsl:value-of select="$both"/><xsl:value-of select="$summaryExpression"/>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:text/>
- </param>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:element>
- </xts:transform>
- </xts:append>
- </xts:sequence>
- </xsl:template>
- </xsl:stylesheet>
- </xts:block>
- <!--
- ===============================================================================================
- processRequestParams - Default any params that weren't passed in. Also this is where we would
- do validation (when time permits).
- ===============================================================================================
- -->
- <xts:block id="processConditionFilters" processor="XSLT" type="exec" dependency="returnResult" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup']" mandatory="false" >
- <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
- <xts:logicsheet path="logicsheets/buslogic.xslt"/>
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" exclude-result-prefixes="xsl xtsext xts">
- <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
- <xsl:template match="/">
- <xts:sequence>
- <xsl:if test="/root/env/param[@name = 'AgentTask-condition'] and /root/env/param[@name = 'AgentTask-condition'] != ''">
- <xts:append select="/root">
- <filters>
- <xts:transform name="XMLDecode">
- <xsl:value-of select="/root/env/param[@name='AgentTask-condition']"/>
- </xts:transform>
- </filters>
- </xts:append>
- <xts:delete select="/root/env/param[@name='detailExpression']" />
- <xts:delete select="/root/env/param[@name='summaryExpression']" />
- <xts:append select="/root/env">
- <param name="detailExpression">
- <xts:transform name="XMLEncode">
- <xts:queryValue select="/root/filters/*[local-name()='detailFilters']/*[local-name()='detailFilter']/*[local-name()='filterExpression']"/>
- </xts:transform>
- </param>
- <param name="summaryExpression">
- <xts:transform name="XMLEncode">
- <xts:queryValue select="/root/filters/*[local-name()='summaryFilters']/*[local-name()='summaryFilter']/*[local-name()='filterExpression']"/>
- </xts:transform>
- </param>
- </xts:append>
- </xsl:if>
-
- <!-- Find out if we have a selected tab and create it and append it to the env params -->
- <xsl:if test="/root/env/param[@name = 'agent_definition_blob']">
- <!-- decode the agent items -->
- <xts:append select="/root">
- <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap_settemplatename_decodeagentdefinition_settemplateid_dialogadapter001', string( /root/env/param[@name = 'agent_definition_blob'])), true() )" disable-output-escaping="yes"/>
- </xts:append>
- <xts:delete select="/root/env/param[@name='rp_selected_tab']"/>
- <xts:append select="/root/env">
- <param name="rp_selected_tab">
- <xts:queryValue select="/root/agent_definition/condition/@selectedTab"/>
- </param>
- </xts:append>
- <xts:delete select="/root/agent_definition"/>
- </xsl:if>
- </xts:sequence>
- </xsl:template>
- </xsl:stylesheet>
- </xts:block>
- <!--
- ===============================================================================================
- businessRules - Take care off any business logic to simplify the UI generation
- ===============================================================================================
- -->
- <xts:block id="businessRules" dependency="processConditionFilters" type="exec" processor="XSLT" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup']" mandatory="false">
- <!-- the define condition ui -->
- <xts:logicsheet path="ags/logicsheets/condition-ui-templates.xslt"/>
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
- xmlns:agscnd="http://developer.cognos.com/schemas/xts/logicsheets/xslt/ags/condition/"
- exclude-result-prefixes="xsl agscnd">
- <xsl:output method="xml" encoding="utf-8" indent="no"/>
- <!--xsl:key name="request-param" match="/root/*[local-name()='requestParams']/*[local-name()='param']" use="@name"/-->
- <xsl:variable name="parameters">
- <xsl:copy-of select="/root/*[local-name()='requestParams']/*[local-name()='param']"/>
- </xsl:variable>
- <xsl:variable name="tab-exclusion">infoSqlTab</xsl:variable>
- <xsl:template match="/">
- <xts:sequence>
- <xts:append select="/root">
- <businessRules>
- <!-- browser title -->
- <browserTitle>
- <xsl:text/>
- <xsl:choose>
- <xsl:when test="$parameters/*[@name='titlePostfix'] != '' and $parameters/*[@name='inWizard']='true' ">
- <xts:string id="IDS_COMBINE_TITLE">
- <xts:param name="prefix">
- <xsl:value-of select="$parameters/*[@name='titlePrefix']"/>
- </xts:param>
- <xts:param name="postfix">
- <xsl:value-of select="$parameters/*[@name='titlePostfix']"/>
- </xts:param>
- </xts:string>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$parameters/*[@name='titlePrefix']"/>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:text/>
- </browserTitle>
- <!-- get the default info tab-->
- <xsl:variable name="defaultInfoPaneTab" select="/root/info/infopane[@default = 'true']/infotabs/infotab"/>
- <!-- the tabs excluded from the information tab -->
- <excludedTabs>
- <xsl:if test="$parameters/*[@name='inWizard']='true' ">
- <xsl:value-of select="$tab-exclusion"/>
- </xsl:if>
- </excludedTabs>
- </businessRules>
- </xts:append>
-
- <xts:append>
- <tabset>
- <pane id="detailPane">
- <content id="detailExpression"/>
- <tabs>
- <tab id="detailPane" default="true">
- <xsl:text><xts:string id="AGENT_CONDITION_DETAIL_TAB"/></xsl:text>
- </tab>
- <tab id="summaryPane">
- <xsl:text><xts:string id="AGENT_CONDITION_SUMMARY_TAB"/></xsl:text>
- </tab>
- </tabs>
- </pane>
- <pane id="summaryPane">
- <content id="summaryExpression"/>
- <tabs>
- <tab id="detailPane">
- <xsl:text><xts:string id="AGENT_CONDITION_DETAIL_TAB"/></xsl:text>
- </tab>
- <tab id="summaryPane" default="true">
- <xsl:text><xts:string id="AGENT_CONDITION_SUMMARY_TAB"/></xsl:text>
- </tab>
- </tabs>
- </pane>
- </tabset>
- </xts:append>
- </xts:sequence>
- </xsl:template>
- </xsl:stylesheet>
- </xts:block>
- <!--
- ===============================================================================================
- genMarkup -
- ===============================================================================================
- -->
- <xts:block id="genMarkup" type="exec" processor="XSLT" dependency="businessRules" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup' or /root/*[local-name()='morphletResponse']]" mandatory="false">
- <!-- logicsheets -->
- <!-- the define condition ui -->
- <xts:logicsheet path="ags/logicsheets/condition-ui-templates.xslt"/>
- <!-- portal specific information -->
- <xts:logicsheet path="logicsheets/portal.xsl"/>
- <!-- agent studio logicsheets -->
- <xts:logicsheet path="ags/logicsheets/dialogs.xsl"/>
- <!-- Dialog specific logicsheets -->
- <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
- <xts:logicsheet path="logicsheets/presentation/dialog/ui-templates.xsl"/>
- <xts:logicsheet path="logicsheets/presentation/dialog/framework.xsl"/>
- <xts:logicsheet path="logicsheets/presentation/layout.xsl"/>
- <xts:logicsheet path="logicsheets/presentation/dialog/presentation.xsl"/>
- <!-- Generic logicsheets -->
- <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
- <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
- <!-- apply the form logic -->
- <xts:logicsheet path="logicsheets/formlogic.xslt"/>
- <!-- Prevent the href from appearing in the status bar. -->
- <xts:logicsheet path="logicsheets/presentation/touch_up.xslt"/>
- <xsl:stylesheet version="1.0"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
- xmlns:out="http://www.w3.org/1999/XSL/Transform"
- xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
- xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
- xmlns:lyt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/layout/"
- xmlns:dp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/presentation/"
- xmlns:df="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/framework/"
- xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/"
- xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/"
- xmlns:xos="http://developer.cognos.com/schemas/xts/output/"
- xmlns:dlgctrl="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/controller-templates/"
- xmlns:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/"
- xmlns:agscnd="http://developer.cognos.com/schemas/xts/logicsheets/xslt/ags/condition/"
- xmlns:ags="http://developer.cognos.com/schemas/xts/logicsheets/xslt/ags/condition/"
- xmlns:agsdlg="http://developer.cognos.com/schemas/xts/logicsheets/xslt/ags/dialog/"
- xmlns:req-params="http://developer.cognos.com/schemas/request/params"
- xmlns:xts="http://developer.cognos.com/schemas/xts/"
- exclude-result-prefixes="xts xsl cm pf xtsext lyt dp df cf cp xos dlgctrl utml agsdlg agscnd ags">
- <xsl:output method="xml" encoding="utf-8" indent="no"/>
- <xsl:key name="request-param" match="/root/*[local-name()='requestParams']/*[local-name()='param']" use="@name"/>
- <xsl:key name="business-rules" match="/root/businessRules/*" use="local-name()"/>
- <pf:variables/>
- <xsl:variable name="ags_image_root">../ags/images/summary/</xsl:variable>
- <xsl:variable name="form-read-only">false</xsl:variable>
- <xsl:template match="/">
- <xts:sequence>
- <xts:append select="/root/output">
- <xos:part>
- <xos:entityHeader>
- <xos:param name="Content-Type">text/xml; charset=utf-8</xos:param>
- </xos:entityHeader>
- <xos:entityBody>
- <xsl:element name="{key('request-param','resultNode')}" namespace="">
- <markup>
- <xts:transform name="XMLEncode">
- <utml:form name="pform">
- <!-- we don't want the maintain form maintaining vars which are being added by controller template usage -->
- <utml:exclusion-list>
- <xsl:value-of select="' AgentTask-condition detailExpression summaryExpression controller_state request_stack_wizardStack '"/>
- </utml:exclusion-list>
- <input type="hidden" name="AgentTask-condition" id="AgentTask-condition" value="{/root/env/param[@name='AgentTask-condition']}"/>
-
- <link href="{$skin_root}/ags/ags.css" type="text/css" rel="stylesheet"/>
- <dlgctrl:markupHelper/>
- <!-- create the selected tab variable -->
- <xsl:variable name="tab-exclusion" select="key('business-rules','excludedTabs')"/>
- <!-- render the interactive dialog header if this is not the wizard -->
- <xsl:choose>
- <xsl:when test="key('request-param','inWizard') = 'false'">
- <agsdlg:header>
- <dp:image>
- <img alt="" border="0" src="{$ags_image_root}icon_condition_24.gif"/>
- </dp:image>
- <dp:title>
- <xsl:value-of select="key('business-rules','browserTitle')"/>
- </dp:title>
- <dp:description>
- <xts:string id="AGENT_CONDITION_INTRO"/>
- </dp:description>
- </agsdlg:header>
- </xsl:when>
- <xsl:otherwise>
- <dp:header>
- <dp:title>
- <xsl:value-of select="key('business-rules','browserTitle')"/>
- </dp:title>
- <dp:description headerBorder="true">
- <xts:string id="AGENT_CONDITION_INTRO"/>
- </dp:description>
- <dp:close>
- <a href="#" onclick="controller_changeState('canceled'); controller_submitForm('cancel');">
- <dp:closeMarker/>
- </a>
- </dp:close>
- </dp:header>
- </xsl:otherwise>
- </xsl:choose>
- <!-- do the condition UI -->
- <lyt:layout style="1">
- <!-- do the expression editor and the info tabs -->
- <agscnd:conditionUI>
- <agscnd:param name="errorDiv">errorCondition</agscnd:param>
- <agscnd:param name="infoDiv">infoCondition</agscnd:param>
- </agscnd:conditionUI>
- </lyt:layout>
- <!-- footer -->
- <!--xsl:if test="key('request-param','displayButtons') != 'false'">
- <xsl:choose>
- <xsl:when test="key('request-param','inWizard') = 'true'">
- <dp:footer>
- <dlgctrl:wizardButtons validateFunction="validate"/>
- </dp:footer>
- </xsl:when>
- <xsl:otherwise>
- <dp:footer align="right">
- <df:button df:id="AGENT_CONDITION_PREVIEW_ALL_DATA_BUTTON" df:style="href" df:href="#" onclick="preview('all');"/-->
- <!--df:button df:id="AGENT_CONDITION_PREVIEW_LIMITED_DATA_BUTTON" df:style="href" df:href="#" onclick="preview('limited');"/>-->
- <!--df:button df:id="AGENT_CONDITION_COUNT_ROWS_BUTTON" df:style="href" df:href="#" onclick="preview('rows');"/>
- </dp:footer>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:if-->
- <!-- only need the script's if we're in wizard mode - otherwise we're in dialogAdaptor mode and that includes them for us -->
- <xsl:if test="key('request-param','inWizard') = 'true'">
- <script type="text/javascript" src="../ags/dragDropHandler.js">//</script>
- </xsl:if>
- <script type="text/javascript" src="../ags/dragDropHandler.js">//</script>
- <script type="text/javascript">
- var cf = parent.getConfigFrame();
-
- function init()
- {
- //place the current tip when available in the information panel
- cf.updateInformationTip();
- // cool have a built in on load handler
- <xsl:for-each select="/root/tabset/pane">
- <xsl:variable name="name" select="./content/@id"/>
- droppy.registerDropZone("<xsl:value-of select="$name"/>","","<xts:string id="AGENT_CONDITION_TIP" encode="javascript"/>",'true',"<xsl:value-of select="/root/req-params:requestParams/req-params:param[@name='tabSelectedID']"/>","",true);
-
- //Update the AgentTask-condition
- droppy.registerPostEventHandler("<xsl:value-of select="$name"/>", "onblur",updateFilters);
- droppy.registerPostEventHandler("<xsl:value-of select="$name"/>", "ondrop",someDropActionOccured);
- </xsl:for-each>
-
- <xsl:choose>
- <xsl:when test="/root/env/param[@name='rp_selected_tab'] != ''">
- doConditionTabChange("<xsl:value-of select="xtsext:javascriptencode(string(/root/env/param[@name='rp_selected_tab']))"/>");
- </xsl:when>
- <xsl:otherwise>
- doConditionTabChange('<xsl:value-of select="/root/tabset/pane[1]/@id"/>');
- </xsl:otherwise>
- </xsl:choose>
- updateFilters();
- }
-
- function someDropActionOccured(){
- // set agent state
- cf.agentHasChanged(true);
- }
-
- /*
- * this is a callback function that is called when an undo/redo has been
- * performed
- * see undoRedo.js --> setFormObjectValue()
- */
- function postEditAction() {
- //the condition has changed so update the filters
- updateFilters();
- }
- function updateFilters() {
- var detailFilter = droppy.getDropZoneValue('<xsl:value-of select="/root/tabset/pane[1]/content/@id"/>');
- var summaryFilter = droppy.getDropZoneValue('<xsl:value-of select="/root/tabset/pane[2]/content/@id"/>');
- var filters = cf.buildFilterExpressions(detailFilter,summaryFilter);
- cf.cfgSet("AgentTask-condition", filters);
- document.getElementById('AgentTask-condition').value= filters;
- }
- function validateSpec()
- {
-
- var cmd = cf.createValidateCommandStackObject('filterExpression', 'errorCondition');
-
- cf.getCommandStackManager().initiateCommandStack("checkCAF()","getReportSpec()","commandStackHideDialogFrame()", "doWait('validate')", "getSaveValidateMessages()", "displayValidateMessages()", cmd);
- }
- /**
- *This function will display a report based on the type.
- * type:all - retrieve all records, limited - a subset, rows - the total number of records returned
- */
- function preview(type) {
-
- //check the type
- if (type) {
- switch (type) {
- case 'all' : {cf.run();} break;
- <!--case 'limited' : {/**todo*/} -->
- case 'rows' : {cf.runCount();} break;
- default : {/**limited is the default*/}
- }
- }
- }
- </script>
- </utml:form>
- </xts:transform>
- </markup>
- <browserTitle>
- <xsl:value-of select="key('business-rules','browserTitle')"/>
- </browserTitle>
- </xsl:element>
- </xos:entityBody>
- </xos:part>
- </xts:append>
- </xts:sequence>
- </xsl:template>
- <!-- pull in other templates that are needed -->
- <agscnd:buildInfoTab/>
- <agscnd:buildInfoSection/>
- <ags:buildConditionTab/>
- <ags:buildButtons/>
- <agscnd:expressionBaseUI/>
- <agscnd:script/>
- </xsl:stylesheet>
- </xts:block>
- <!--
- ===============================================================================================
- debug - special debug block for nested requests
- ===============================================================================================
- -->
- <xts:block id="debug" type="exec" processor="XSLT" mimeType="text/html" dependency="genMarkup returnResult" condition=".[/root/session/param[@name='debug']='1']" mandatory="false">
- <!-- Get the debug logic sheet -->
- <xts:logicsheet path="logicsheets/debuglogic.xslt"/>
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dbg="http://developer.cognos.com/schemas/xts/logicsheets/xslt/debug/" exclude-result-prefixes="dbg">
- <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no"/>
- <xsl:template match="/">
- <dbg:dumpxml select="/root"/>
- </xsl:template>
- </xsl:stylesheet>
- </xts:block>
- </xts:morphlet>
|