addReport.xts 119 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: AGS
  5. (C) Copyright IBM Corp. 2005, 2019
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <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">
  9. <!--
  10. ================================================================================
  11. decode the agent items (which contain the agentOptions)
  12. ===============================================================================================
  13. -->
  14. <xts:block id="decodeAgentDefinition" processor="XSLT" type="exec" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup' or /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'finished' ]" mandatory="false">
  15. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  16. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  17. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xts="http://developer.cognos.com/schemas/xts/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" exclude-result-prefixes="xsl xtsext xts">
  18. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  19. <xsl:template match="/">
  20. <xts:sequence>
  21. <xsl:if test="/root/env/param[@name = 'agent_definition_blob']">
  22. <xts:append select="/root">
  23. <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap_settemplatename_decodeagentdefinition_settemplateid_addreport001', string( /root/env/param[@name = 'agent_definition_blob'])), true() )" disable-output-escaping="yes"/>
  24. </xts:append>
  25. </xsl:if>
  26. <!-- delete the override flag-->
  27. <!--xts:delete select="override_default_options"/-->
  28. </xts:sequence>
  29. </xsl:template>
  30. </xsl:stylesheet>
  31. </xts:block>
  32. <!--
  33. ===============================================================================================
  34. whip out the parameters that were saved off previously
  35. ===============================================================================================
  36. -->
  37. <xts:block id="decodeExistingParameters" path="/ags/parameters/decodeExistingParameters.xslt" processor="XSLT" type="exec" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'finished' ]" mandatory="false" dependency="decodeAgentDefinition">
  38. <xts:logicsheet path="logicsheets/portal.xsl"/>
  39. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  40. </xts:block>
  41. <!--
  42. ================================================================================
  43. decode the the model item parameters from the form fields and update the parameters block
  44. ===============================================================================================
  45. -->
  46. <xts:block id="mergeModelParameters" path="/ags/parameters/mergeModelParameters.xslt" processor="XSLT" type="exec" mode="interpret" dependency="decodeExistingParameters" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'finished'] " mandatory="false"/>
  47. <!--
  48. ================================================================================
  49. if We have just come back from a jaunt round the report server, update the agent task blob
  50. ===============================================================================================
  51. -->
  52. <xts:block id="createParametersBlob" path="/ags/parameters/createParametersBlob.xslt" dependency="mergeModelParameters" processor="XSLT" type="exec" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'finished'] " mandatory="false">
  53. <xts:logicsheet path="logicsheets/portal.xsl"/>
  54. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  55. </xts:block>
  56. <!--
  57. ===============================================================================================
  58. returnResult - We're done with the email options morphlet, so return the appropriate response
  59. ===============================================================================================
  60. -->
  61. <xts:block id="returnResult" path="/ags/tabResultTemplate.xslt" type="exec" dependency="createParametersBlob" processor="XSLT" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'finished']" mandatory="false">
  62. <xts:logicsheet path="logicsheets/portal.xsl"/>
  63. </xts:block>
  64. <!--
  65. ===============================================================================================
  66. Main content request
  67. ===============================================================================================
  68. -->
  69. <xts:block id="getContent" processor="XSLT" type="exec" dependency="returnResult" condition=".[/root/env/param[@name = 'selected_path']!='' and /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup'] " mandatory="false">
  70. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  71. <xts:logicsheet path="logicsheets/cm-logic.xsl"/>
  72. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  73. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  74. xmlns:cml="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cml/1/"
  75. xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
  76. xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/"
  77. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  78. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/">
  79. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  80. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  81. <xsl:template match="/">
  82. <xts:sequence>
  83. <xts:append>
  84. <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
  85. <send:request provider="cm" requester="AGS:addReport">
  86. <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT">
  87. <cm:query xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/">
  88. <cm:requests>
  89. <!-- Page definitions -->
  90. <cm:query>
  91. <cm:search>/configuration/pageDefinition</cm:search>
  92. <cm:properties>
  93. <cm:property name="displaySequence"/>
  94. <cm:property name="defaultName"/>
  95. <cm:property name="searchPath"/>
  96. </cm:properties>
  97. <cm:sortBy>
  98. <cm:sort name="displaySequence" order="descending"/>
  99. </cm:sortBy>
  100. </cm:query>
  101. <!-- Report/Query/Job/ information -->
  102. <cm:query>
  103. <cm:search>
  104. <xsl:value-of select="/root/env/param[@name='selected_path']"/>
  105. </cm:search>
  106. <cm:properties>
  107. <cm:property name="searchPath"/>
  108. <cm:property name="storeID"/>
  109. <cm:property name="defaultName"/>
  110. <cm:property name="executionFormat"/>
  111. <cm:property name="executionPageOrientation"/>
  112. <cm:property name="executionPageDefinition"/>
  113. <cm:property name="canBurst"/>
  114. <cm:property name="parent"/>
  115. <cm:property name="permissions"/>
  116. <cm:property name="ancestors"/>
  117. <cm:property name="metadataModelPackage"/>
  118. <cm:property name="metadataModel"/>
  119. </cm:properties>
  120. <cm:options>
  121. <cm:refProps>
  122. <!-- get metadataModelPackage of the base properties using refProps incase we have a report view -->
  123. <cm:refProp refPropName="base">
  124. <cm:properties>
  125. <cm:property name="metadataModelPackage"/>
  126. <cm:property name="canBurst"/>
  127. </cm:properties>
  128. </cm:refProp>
  129. <cm:refProp refPropName="metadataModelPackage">
  130. <cm:properties>
  131. <cm:property name="effectiveUserCapabilities"/>
  132. </cm:properties>
  133. </cm:refProp>
  134. </cm:refProps>
  135. </cm:options>
  136. </cm:query>
  137. <!-- Credential information -->
  138. <cm:query>
  139. <cm:search>~/credential</cm:search>
  140. <cm:properties>
  141. <cm:property name="searchPath"/>
  142. </cm:properties>
  143. </cm:query>
  144. <!-- Schedule information -->
  145. <cm:query>
  146. <cm:search>
  147. <xsl:value-of select="/root/env/param[@name='selected_path']"/>/schedule[permission("read")]</cm:search>
  148. <cm:properties>
  149. <cml:prop-schedule excludeStartDate="true"/>
  150. </cm:properties>
  151. </cm:query>
  152. <!-- need to get all the archiveLocations -->
  153. <cm:query>
  154. <cm:search>/configuration/archiveLocation</cm:search>
  155. <cm:properties>
  156. <cm:property name="searchPath"/>
  157. <cm:property name="defaultName"/>
  158. </cm:properties>
  159. <cm:sortBy>
  160. <cm:sort name="defaultName" order="ascending"/>
  161. </cm:sortBy>
  162. </cm:query>
  163. <xsl:if test="key('env-param','m_ro_saveAsPath')!='' and key('env-param','visited_save_as')='true'">
  164. <cm:query>
  165. <cm:search>
  166. <xsl:value-of select="key('env-param','m_ro_saveAsPath')"/>
  167. </cm:search>
  168. <cm:properties>
  169. <cm:property name="ancestors"/>
  170. <cm:property name="defaultName"/>
  171. </cm:properties>
  172. </cm:query>
  173. </xsl:if>
  174. </cm:requests>
  175. </cm:query>
  176. </xts:transform>
  177. </send:request>
  178. </xts:transform>
  179. </xts:append>
  180. <xts:append>
  181. <!--set up the next block -->
  182. <routingServerGroup>
  183. <objectPath>
  184. <xts:transform name="XMLEncode">
  185. <xts:queryValue select="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]//*[local-name()='metadataModelPackage']//*[local-name()='searchPath']"/>
  186. </xts:transform>
  187. </objectPath>
  188. <objectPath><xsl:value-of select="/root/env/param[@name = 'selected_path']"/></objectPath>
  189. </routingServerGroup>
  190. <model>
  191. <xts:transform name="XMLEncode">
  192. <xts:queryValue select="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]//*[local-name()='metadataModel']//*[local-name()='searchPath']"/>
  193. </xts:transform>
  194. </model>
  195. </xts:append>
  196. <!-- have to create a couple of parameters so that options will work -->
  197. <xts:delete select="/root/env/param[@name='m_class']"/>
  198. <xts:delete select="/root/env/param[@name='m_name']"/>
  199. <xts:append select="/root/env">
  200. <param name="m_class">
  201. <xts:queryValue select="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]/*/*[local-name()='objectClass']"/>
  202. </param>
  203. <param name="m_name">
  204. <xts:transform name="XMLEncode"><xts:queryValue select="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]/*/*[local-name()='defaultName']"/></xts:transform>
  205. </param>
  206. </xts:append>
  207. </xts:sequence>
  208. </xsl:template>
  209. </xsl:stylesheet>
  210. </xts:block>
  211. <!--
  212. ===============================================================================================
  213. If we have a report view we obtain the base report effectiveCapabilities.
  214. ===============================================================================================
  215. -->
  216. <xts:block id="getReportViewCapabilities" processor="XSLT" type="exec" dependency="getContent" condition=".[/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]/*[local-name()='reportView']/*[local-name()='base'] and /root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]/*[local-name()='reportView']/*[local-name()='base']/*[local-name()='report' or local-name()='interactiveReport']/*[local-name()='metadataModelPackage']/*[local-name()='package'] !='' and /root/env/param[@name = 'selected_path']!='' and /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup'] " mandatory="false">
  217. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  218. <xts:logicsheet path="logicsheets/cm-logic.xsl"/>
  219. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  220. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:cml="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/cml/1/" xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/" xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/">
  221. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  222. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  223. <xsl:template match="/">
  224. <xts:sequence>
  225. <xts:append>
  226. <viewBaseCapabilities>
  227. <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
  228. <send:request provider="cm" requester="AGS:addReport">
  229. <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT">
  230. <cm:query xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/">
  231. <cm:requests>
  232. <!-- Report/Query/Job/ information -->
  233. <cm:query>
  234. <cm:search>
  235. <xsl:value-of select="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]/*[local-name()='reportView']/*[local-name()='base']/*[local-name()='report' or local-name()='interactiveReport']/*[local-name()='metadataModelPackage']/*[local-name()='package']/*[local-name()='searchPath']"/>
  236. </cm:search>
  237. <cm:properties>
  238. <cm:property name="effectiveUserCapabilities"/>
  239. </cm:properties>
  240. <cm:options/>
  241. </cm:query>
  242. </cm:requests>
  243. </cm:query>
  244. </xts:transform>
  245. </send:request>
  246. </xts:transform>
  247. </viewBaseCapabilities>
  248. </xts:append>
  249. </xts:sequence>
  250. </xsl:template>
  251. </xsl:stylesheet>
  252. </xts:block>
  253. <!--
  254. ===============================================================================================
  255. Create a set of default options if no options currently exist for a restricted user. ie; a user who has restricted outputs.
  256. ===============================================================================================
  257. -->
  258. <xts:block id="createDefaultOptions" dependency="getContent" type="exec" mode="interpret" processor="XSLT" condition=".[not(/root/env/param[@name = 'm_ro_outputLocale'])]" mandatory="false">
  259. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  260. <xts:logicsheet path="logicsheets/cm-logic.xsl"/>
  261. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  262. <xts:logicsheet path="logicsheets/portal.xsl"/>
  263. <xsl:stylesheet version="1.0"
  264. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  265. xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
  266. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  267. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  268. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  269. exclude-result-prefixes="xsl send cm xtsext pf">
  270. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  271. <pf:variables/>
  272. <xsl:template match="/">
  273. <xts:sequence>
  274. <xsl:variable name="allowPDF"><xsl:if test="not(/root/session/param[@name='capabilities']/canGeneratePDFOutput)">false</xsl:if></xsl:variable>
  275. <xsl:variable name="allowXML"><xsl:if test="not(/root/session/param[@name='capabilities']/canGenerateXMLOutput)">false</xsl:if></xsl:variable>
  276. <xsl:variable name="allowCSV"><xsl:if test="not(/root/session/param[@name='capabilities']/canGenerateCSVOutput)">false</xsl:if></xsl:variable>
  277. <xsl:variable name="allowXLS"><xsl:if test="not(/root/session/param[@name='capabilities']/canGenerateXLSOutput)">false</xsl:if></xsl:variable>
  278. <xsl:if test="($allowPDF='false' or $allowXML='false' or $allowCSV='false' or $allowXLS='false')">
  279. <xts:append select="/root/env">
  280. <!-- create default options -->
  281. <xts:transform src="transforms/portal/options/generateParams.xslt" processor="XSLT">
  282. <xts:param name="messageBase">/messages/portal.xml</xts:param>
  283. <root>
  284. <!--<xts:transform src="transforms/portal/options/buildOptions.xslt" processor="XSLT">
  285. <root>
  286. <xts:queryNode select="/root/extractedOptions/notEmailOptions/*"/>
  287. </root>
  288. </xts:transform>-->
  289. <deliverySection>true</deliverySection>
  290. <jobDefinition>false</jobDefinition>
  291. <defaultOptions>true</defaultOptions>
  292. <preferences>
  293. <xsl:copy-of select="/root/header/*[local-name() = 'biBusHeader']/*[local-name() = 'userPreferenceVars']/*"/>
  294. </preferences>
  295. <capabilities>
  296. <xsl:copy-of select="/root/session/param[@name='capabilities']/*"/>
  297. </capabilities>
  298. <serviceDefaults>
  299. <xsl:copy-of select="/root/configuration/property[@name='serviceDefaultOptions']/*/value"/>
  300. </serviceDefaults>
  301. <system>
  302. <param name="reportFormats">
  303. <xsl:copy-of select="/root/system/param[@name='reportFormats']/*"/>
  304. </param>
  305. </system>
  306. </root>
  307. </xts:transform>
  308. </xts:append>
  309. </xsl:if>
  310. </xts:sequence>
  311. </xsl:template>
  312. </xsl:stylesheet>
  313. </xts:block>
  314. <xts:block id="getRouting" dependency="getReportViewCapabilities" path="/ags/determineRouting.xslt" type="exec" mode="interpret" processor="XSLT" condition=".[/root/env/param[@name = 'selected_path']!='' and /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup']" mandatory="false"/>
  315. <!--
  316. ===========================================================================================================
  317. onAgentLoadCheckOverriddenState- check if the current run options are the default set of options and set override_default_run_options
  318. accordingly, this is used to set the override state when an agent has initally been loaded or a new report task is created (and the run options
  319. dialog has not been visited)
  320. Note we are looking for only two options... the m_ro_prompt and m_ro_saveOutput. These define acceptable defaults.
  321. Also check the agent defaults and set the override state for those too
  322. ===========================================================================================================
  323. -->
  324. <xts:block id="onAgentLoadCheckOverriddenState" dependency="getRouting" processor="XSLT" type="exec" condition=".[not(/root/env/param[@name='override_default_run_options']) and
  325. not(/root/env/param[@name='visited_run_options']) and /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup' and /root/env/param[@name='selected_path']]" mandatory="false">
  326. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  327. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  328. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  329. <xts:logicsheet path="logicsheets/portal.xsl"/>
  330. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:x="x" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" 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:xtsext="xalan://com.cognos.xts.ext.XTSExt" exclude-result-prefixes="xts xtsext xsl x cm dt pf cf cp">
  331. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  332. <pf:variables/>
  333. <xsl:template match="/">
  334. <xsl:variable name="overridden">
  335. <xsl:for-each select="/root/env/param[starts-with(@name,'m_ro_')]">
  336. <xsl:choose>
  337. <!-- check for the presence only of m_ro_saveOutput and not its value, when an agent has been saved with default values m_ro_saveOutput is returned as false
  338. however when we create the default params we set it to 'true' -->
  339. <xsl:when test="(@name='m_ro_saveOutput' and ./text() = 'true') or (@name='m_ro_prompt' and ./text() = 'false') or (@name='m_ro_saveAsName' )">
  340. <xsl:text>d</xsl:text>
  341. </xsl:when>
  342. <xsl:otherwise>
  343. <xsl:text>o</xsl:text>
  344. </xsl:otherwise>
  345. </xsl:choose>
  346. </xsl:for-each>
  347. </xsl:variable>
  348. <xsl:variable name="state">
  349. <xsl:choose>
  350. <xsl:when test="contains($overridden,'o')">
  351. <xsl:text>true</xsl:text>
  352. </xsl:when>
  353. <xsl:otherwise>
  354. <xsl:text>false</xsl:text>
  355. </xsl:otherwise>
  356. </xsl:choose>
  357. </xsl:variable>
  358. <!-- create the default run options and append to the environment -->
  359. <xts:sequence>
  360. <xts:append select="/root/env">
  361. <param name="override_default_run_options">
  362. <xsl:value-of select="$state"/>
  363. </param>
  364. <!-- this is needed to render the m_ro_saveOutput option as true, if this is not present then buildOptionItems.xslt will render the option as false-->
  365. <!--param name="save_how">report</param-->
  366. </xts:append>
  367. <xsl:if test="$state='true' or /root/agent_definition/agentOptions/form-vars/param[@name='override_default_options']='true'">
  368. <xts:append select="/root/env">
  369. <param name="agentLoaded">true</param>
  370. </xts:append>
  371. </xsl:if>
  372. </xts:sequence>
  373. </xsl:template>
  374. </xsl:stylesheet>
  375. </xts:block>
  376. <!--
  377. ===========================================================================================================
  378. createROParamsForAgentDefaults
  379. create the m_ro_* parameters for the agent defaults. Only create these when the agent defaults have been overridden and the report
  380. options have not
  381. ===========================================================================================================
  382. -->
  383. <xts:block id="createROParamsForAgentDefaults" dependency="createDefaultOptions onAgentLoadCheckOverriddenState" processor="XSLT" type="exec" condition=".[not(/root/env/param[@name='override_default_run_options']='true') and /root/agent_definition/agentOptions/form-vars/param[@name='override_default_options']='true' and /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup' and /root/env/param[@name='selected_path']]" mandatory="false">
  384. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  385. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  386. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  387. <xts:logicsheet path="logicsheets/portal.xsl"/>
  388. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:x="x" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" 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:xtsext="xalan://com.cognos.xts.ext.XTSExt" exclude-result-prefixes="xts xtsext xsl x cm dt pf cf cp">
  389. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  390. <pf:variables/>
  391. <xsl:variable name="burstPackageCapability">
  392. <xsl:choose>
  393. <!-- We have a report so get the burst capability -->
  394. <xsl:when test="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]/*[local-name()='report']/*[local-name()='metadataModelPackage']/*[local-name()='package']/*[local-name()='effectiveUserCapabilities']/*[local-name()='userCapabilityEnum' and . = 'canUseBursting']">
  395. <xsl:text/>true<xsl:text/>
  396. </xsl:when>
  397. <!-- We have a reportView so get the burst capability -->
  398. <xsl:when test="/root/*[local-name()='viewBaseCapabilities']/*[local-name()='queryResponse']/*[local-name()='queryReply']/*[local-name()='package']/*[local-name()='effectiveUserCapabilities']/*[local-name()='userCapabilityEnum' and . = 'canUseBursting']">
  399. <xsl:text/>true<xsl:text/>
  400. </xsl:when>
  401. <xsl:otherwise>
  402. <xsl:text/>false<xsl:text/>
  403. </xsl:otherwise>
  404. </xsl:choose>
  405. </xsl:variable>
  406. <xsl:variable name="reportIsBurstable" select="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]//*[local-name()='canBurst']='true' and $burstPackageCapability='true'"/>
  407. <xsl:variable name="burstOptionSet" select="/root/agent_definition/agentOptions/*[local-name()='options']/*[local-name()='value']/*[local-name()='item'][name='burst']/*[local-name()='value']='true'"/>
  408. <xsl:template match="/">
  409. <xts:sequence>
  410. <!-- remove stray m_ro_* parameters from the environment where they exist, particularly a problem
  411. if the user deselects the override check box and then ok's the report options dialog-->
  412. <xts:replace select="/root/env">
  413. <xts:transform src="ags/transforms/delete_run_options.xslt" processor="XSLT">
  414. <root>
  415. <xsl:copy-of select="/root/env"/>
  416. </root>
  417. </xts:transform>
  418. </xts:replace>
  419. <!-- when the agent defaults have been overridden and the report options have not then
  420. the m_ro_* options must be created. This ensures the UI summary string is rendered properly-->
  421. <xts:append select="/root/env">
  422. <xts:transform src="transforms/portal/options/generateParams.xslt" processor="XSLT">
  423. <xsl:element name="root">
  424. <!-- copy the run options that we have -->
  425. <xsl:copy-of select="/root/agent_definition/agentOptions/options"/>
  426. </xsl:element>
  427. </xts:transform>
  428. </xts:append>
  429. <!-- generate the summary strings for the email options-->
  430. <xsl:choose>
  431. <xsl:when test="/root/agent_definition/agentOptions/*[local-name()='UIHelpers']">
  432. <param name="emailSummary"><xsl:value-of select="/root/agent_definition/agentOptions/*[local-name()='UIHelpers']/*[local-name()='emailSummary']"/></param>
  433. <param name="emailRecipientsCount"><xsl:value-of select="/root/agent_definition/agentOptions/*[local-name()='UIHelpers']/*[local-name()='emailRecipientsCount']"/></param>
  434. <param name="emailDescription"><xsl:value-of select="/root/agent_definition/agentOptions/*[local-name()='UIHelpers']/*[local-name()='emailRecipients']"/></param>
  435. <param name="printerSummary"><xsl:value-of select="/root/agent_definition/agentOptions/*[local-name()='UIHelpers']/*[local-name()='printerSummary']"/></param>
  436. <param name="hasRecipients"><xsl:value-of select="/root/agent_definition/agentOptions/*[local-name()='UIHelpers']/*[local-name()='hasRecipients']"/></param>
  437. </xsl:when>
  438. <xsl:otherwise>
  439. <xsl:call-template name="dt:generateUIHelpersFromOptions">
  440. <xsl:with-param name="queryReplyPath" select="/root/agent_definition/*[local-name()='agentOptions']"/>
  441. <xsl:with-param name="appendPath" select="'/root/env'"/>
  442. <xsl:with-param name="currentReply" select="'1'"/>
  443. <xsl:with-param name="genParams" select="true()"/>
  444. </xsl:call-template>
  445. </xsl:otherwise>
  446. </xsl:choose>
  447. <!-- delete any reportOptions-->
  448. <xts:delete select="/root/env/param[@name='reportOptions']" mandatory="false"/>
  449. <!-- delete the burst option if the report does not support it-->
  450. <xsl:if test="not($reportIsBurstable='true') and $burstOptionSet">
  451. <xts:delete select="/root/env/param[@name='m_ro_burst']"/>
  452. </xsl:if>
  453. </xts:sequence>
  454. </xsl:template>
  455. <dt:generateUIHelpersFromOptions/>
  456. </xsl:stylesheet>
  457. </xts:block>
  458. <!--
  459. ===============================================================================================
  460. unpackReportOptions - there is a reportOptions blob in the environment and a report has been selected
  461. Expand the blob into /root/reportOptions, any changes made in the report options dialog will be added in the next block...
  462. ===============================================================================================
  463. -->
  464. <xts:block id="unpackReportOptions" processor="XSLT" dependency="createROParamsForAgentDefaults" type="exec" condition=".[/root/env/param[@name='selected_path'] and /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup' and /root/env/param[@name='reportOptions']]" mandatory="false">
  465. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  466. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dlgctrl="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/controller-templates/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:req-params="http://developer.cognos.com/schemas/request/params" exclude-result-prefixes="xsl dlgctrl xtsext req-params">
  467. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  468. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  469. <xsl:template match="/">
  470. <xts:sequence>
  471. <!-- decode the agent items -->
  472. <xts:append select="/root">
  473. <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap_settemplatename_unpackreportoptions_settemplateid_addreport001', string ( /root/env/param[@name = 'reportOptions'])), true() )" disable-output-escaping="yes"/>
  474. </xts:append>
  475. <!-- delete the blob-->
  476. <xts:delete select="/root/env/param[@name = 'reportOptions']"/>
  477. </xts:sequence>
  478. </xsl:template>
  479. </xsl:stylesheet>
  480. </xts:block>
  481. <!--
  482. ===============================================================================================
  483. unpackDeliveryOptions- there is a deliveryOptions blob in the environment and this is an existing agent
  484. which has been loaded. Expand the blob into /root/deliveryOptions
  485. ===============================================================================================
  486. -->
  487. <xts:block id="unpackDeliveryOptions" processor="XSLT" dependency="unpackReportOptions" type="exec" condition=".[/root/env/param[@name='agentLoaded']='true' and /root/env/param[@name='deliveryOptions']]" mandatory="false">
  488. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  489. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dlgctrl="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/controller-templates/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:req-params="http://developer.cognos.com/schemas/request/params" exclude-result-prefixes="xsl dlgctrl xtsext req-params">
  490. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  491. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  492. <xsl:template match="/">
  493. <xts:sequence>
  494. <xts:append select="/root">
  495. <xsl:if test="key('env-param','deliveryOptions') != ''">
  496. <deliveryOptions>
  497. <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap', string( key('env-param','deliveryOptions') )),true())" disable-output-escaping="yes"/>
  498. </deliveryOptions>
  499. </xsl:if>
  500. </xts:append>
  501. </xts:sequence>
  502. </xsl:template>
  503. </xsl:stylesheet>
  504. </xts:block>
  505. <!--
  506. ===============================================================================================
  507. unpackMobileOptions- there is a mobileOptions blob in the environment and this is an existing agent
  508. which has been loaded. Expand the blob into /root/mobileOptions
  509. ===============================================================================================
  510. -->
  511. <xts:block id="unpackMobileOptions" processor="XSLT" dependency="unpackDeliveryOptions" type="exec" condition="" mandatory="false">
  512. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  513. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dlgctrl="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/controller-templates/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:req-params="http://developer.cognos.com/schemas/request/params" exclude-result-prefixes="xsl dlgctrl xtsext req-params">
  514. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  515. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  516. <xsl:template match="/">
  517. <xts:sequence>
  518. <xts:append select="/root">
  519. <xsl:if test="key('env-param','mobileOptions') != ''">
  520. <mobileOptions>
  521. <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap', string( key('env-param','mobileOptions') )),true())" disable-output-escaping="yes"/>
  522. </mobileOptions>
  523. </xsl:if>
  524. </xts:append>
  525. </xts:sequence>
  526. </xsl:template>
  527. </xsl:stylesheet>
  528. </xts:block>
  529. <!--
  530. ===============================================================================================
  531. generateDefaultMobileOptions - converts the list of mobile recipients from the report options found in the
  532. bus:mobileOptionSearchPathMultipleObjectArray into a format that the add_entries morphlet requires
  533. (a <selectedEntries> node). CM is queried to get the required information such as userName, class etc...
  534. ===============================================================================================
  535. -->
  536. <xts:block id="generateDefaultMobileOptions" processor="XSLT" type="exec" dependency="unpackMobileOptions" condition=".[/root/env/param[@name='agentLoaded']='true' and /root/env/param[@name='mobileOptions']]" mandatory="false">
  537. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  538. <xts:logicsheet path="logicsheets/portal.xsl"/>
  539. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  540. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  541. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  542. <xsl:stylesheet version="1.0"
  543. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  544. xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/"
  545. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  546. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  547. xmlns:cf="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/framework/"
  548. xmlns:cp="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/controls/presentation/"
  549. xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
  550. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  551. xmlns:set="http://exslt.org/sets"
  552. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/">
  553. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  554. <pf:variables/>
  555. <xsl:template match="/">
  556. <!-- location of the report options -->
  557. <xsl:variable name="options" select="/root/*[local-name()='mobileOptions']/*[local-name()='options']"/>
  558. <xts:sequence>
  559. <xts:delete select="/root/selectedEntries"/>
  560. <xts:append select="/root">
  561. <xsl:variable name="unique-search-paths" select="set:distinct($options/*[local-name()='value']/*[local-name()='item'][@xsi:type='bus:mobileOptionSearchPathMultipleObjectArray']/*[local-name()='value']/*[local-name()='item'])"/>
  562. <selectedEntries>
  563. <!-- transform the CM result into the same structure that the add entries returns. -->
  564. <xsl:if test="count($unique-search-paths) &gt; 0">
  565. <xts:transform src="portal/mobileOptions/transforms/gen-standard-list.xslt" processor="XSLT">
  566. <root>
  567. <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
  568. <send:request provider="cm" requester="AGS:addReport">
  569. <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT" >
  570. <cm:query xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/" xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" xmlns:bus="http://developer.cognos.com/schemas/bibus/3/">
  571. <cm:requests>
  572. <xsl:for-each select="$unique-search-paths">
  573. <xsl:if test=". != ''">
  574. <cm:query>
  575. <cm:search>
  576. <xsl:value-of select="."/>
  577. </cm:search>
  578. <cm:properties>
  579. <cm:property name="defaultName"/>
  580. <cm:property name="searchPath"/>
  581. <cm:property name="userName"/>
  582. <cm:property name="objectClass"/>
  583. <cm:property name="ancestors"/>
  584. <cm:property name="hidden"/>
  585. </cm:properties>
  586. </cm:query>
  587. </xsl:if>
  588. </xsl:for-each>
  589. </cm:requests>
  590. </cm:query>
  591. </xts:transform>
  592. </send:request>
  593. </xts:transform>
  594. <action>recipients</action>
  595. </root>
  596. </xts:transform>
  597. </xsl:if>
  598. </selectedEntries>
  599. </xts:append>
  600. </xts:sequence>
  601. </xsl:template>
  602. <dt:generateUIHelpersFromOptions/>
  603. <dt:hierarchicalParmValueItem/>
  604. <pf:serialize-xml/>
  605. </xsl:stylesheet>
  606. </xts:block>
  607. <!--
  608. ===============================================================================================
  609. prepareEmailSummaryVars
  610. Create a fake morphlet response based on the current delivery options when an existing agent has been loaded.
  611. This is used to create the email options UI summary strings which are created in the block called createEmailSummaryVars
  612. ===============================================================================================
  613. -->
  614. <xts:block id="prepareEmailSummaryVars" processor="XSLT" dependency="generateDefaultMobileOptions" type="exec" condition=".[/root/env/param[@name='agentLoaded']='true' and /root/deliveryOptions]" mandatory="false">
  615. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  616. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dlgctrl="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/controller-templates/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:req-params="http://developer.cognos.com/schemas/request/params" exclude-result-prefixes="xsl dlgctrl xtsext req-params">
  617. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  618. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  619. <xsl:template match="/">
  620. <xts:sequence>
  621. <xts:append select="/root">
  622. <morphletResponse>
  623. <xsl:copy-of select="/root/deliveryOptions/*[local-name()='options']"/>
  624. </morphletResponse>
  625. </xts:append>
  626. </xts:sequence>
  627. </xsl:template>
  628. </xsl:stylesheet>
  629. </xts:block>
  630. <!--
  631. ===============================================================================================
  632. createEmailSummaryVars
  633. Create the UI summary strings and place them as parameters in /root/env. This only happens when an existing agent
  634. has been loaded and /root/deliveryOptions exist
  635. ===============================================================================================
  636. -->
  637. <xts:block id="createEmailSummaryVars" path="/portal/emailOptions/logicsheets/process_email_options.xslt" processor="XSLT" dependency="prepareEmailSummaryVars" type="exec" condition=".[/root/env/param[@name='agentLoaded']='true' and /root/deliveryOptions]" mandatory="false">
  638. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  639. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  640. <xts:logicsheet path="logicsheets/portal.xsl"/>
  641. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  642. </xts:block>
  643. <!--
  644. ===============================================================================================
  645. prepareMobileSummaryVars
  646. Create a fake morphlet response based on the current delivery options when an existing agent has been loaded.
  647. This is used to create the email options UI summary strings which are created in the block called createEmailSummaryVars
  648. ===============================================================================================
  649. -->
  650. <xts:block id="prepareMobileSummaryVars" processor="XSLT" dependency="createEmailSummaryVars" type="exec" condition=".[/root/env/param[@name='agentLoaded']='true' and /root/mobileOptions]" mandatory="false">
  651. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  652. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dlgctrl="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/controller-templates/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:req-params="http://developer.cognos.com/schemas/request/params" exclude-result-prefixes="xsl dlgctrl xtsext req-params">
  653. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  654. <xsl:key name="env-param" match="/root/env/param" use="@name"/>
  655. <xsl:template match="/">
  656. <xts:sequence>
  657. <!-- remove the morphlet response already potentially there -->
  658. <xts:delete select="/root/morphletResponse"/>
  659. <!-- add the one for the mobile recipients -->
  660. <xts:append select="/root">
  661. <morphletResponse>
  662. <mobileOptions>
  663. <xsl:copy-of select="/root/mobileOptions/*[local-name()='options']/*"/>
  664. </mobileOptions>
  665. </morphletResponse>
  666. </xts:append>
  667. </xts:sequence>
  668. </xsl:template>
  669. </xsl:stylesheet>
  670. </xts:block>
  671. <!--
  672. ===============================================================================================
  673. createMobileSummaryVars
  674. Create the UI summary strings and place them as parameters in /root/env. This only happens when an existing agent
  675. has been loaded and /root/deliveryOptions exist
  676. ===============================================================================================
  677. -->
  678. <xts:block id="createMobileSummaryVars" path="/portal/mobileOptions/logicsheets/process_mobile_entries.xslt" processor="XSLT" dependency="prepareMobileSummaryVars" type="exec" condition=".[/root/env/param[@name='agentLoaded']='true' and /root/mobileOptions]" mandatory="false">
  679. <xts:logicsheet path="logicsheets/presentation/dialog/controller-templates.xsl"/>
  680. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  681. <xts:logicsheet path="logicsheets/portal.xsl"/>
  682. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  683. </xts:block>
  684. <!--
  685. ===============================================================================================
  686. prepareSelectEntries
  687. The add_entries morphlet stores its results in a blob called selectEntries - have to recreate this if you want to see who
  688. is selected as a mobile recipients
  689. ===============================================================================================
  690. -->
  691. <xts:block id="prepareSelectEntries" processor="XSLT" dependency="createMobileSummaryVars" type="exec" condition=".[/root/env/param[@name='agentLoaded']='true' and /root/mobileOptions]" mandatory="false">
  692. <xts:logicsheet path="logicsheets/cm-logic.xsl"/>
  693. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  694. <xts:logicsheet path="logicsheets/portal.xsl"/>
  695. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  696. xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
  697. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  698. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  699. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  700. exclude-result-prefixes="xts xtsext xsl send cm pf">
  701. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  702. <pf:variables/>
  703. <xsl:variable name="mobileRecipients" select="/root/*[local-name()='morphletResponse']/*[local-name()='mobileOptions']/*[local-name()='value']/*[local-name()='item' and ./*[local-name()='name' and (.='to' or .='cc' or .='bcc')]]/*[local-name()='value']/*[local-name()='item']"/>
  704. <xsl:variable name="mobileRecipientCount" select="count($mobileRecipients)"/>
  705. <!-- make the selectedEntries blob -->
  706. <xsl:template match="/">
  707. <xsl:if test="$mobileRecipientCount>0">
  708. <xts:sequence>
  709. <xts:append select="/root/env">
  710. <xts:transform src="portal/controls/create_web64_param.xslt" processor="XSLT">
  711. <param name="selectedEntries">
  712. <passport>
  713. <xsl:value-of select="$passport"/>
  714. </passport>
  715. <markup>
  716. <xts:transform name="XMLEncode">
  717. <xts:transform src="ags/transforms/updateSelectedEntries.xslt" processor="XSLT">
  718. <xts:transform src="transforms/CM/post-process.xslt" processor="XSLT">
  719. <send:request provider="cm" requester="AGS:addReport">
  720. <xts:transform src="transforms/CM/pre-process.xslt" processor="XSLT">
  721. <cm:query xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/">
  722. <cm:requests>
  723. <!-- get info on all the mobile recipients -->
  724. <xsl:for-each select="$mobileRecipients">
  725. <cm:query>
  726. <cm:search>
  727. <xsl:value-of select="."/>
  728. </cm:search>
  729. <cm:properties>
  730. <cm:property name="defaultName"/>
  731. <cm:property name="hidden"/>
  732. <cm:property name="searchPath"/>
  733. <cm:property name="permissions"/>
  734. <cm:property name="position"/>
  735. <cm:property name="searchPathForURL"/>
  736. <cm:property name="storeID"/>
  737. <cm:property name="ancestors"/>
  738. <cm:property name="hasChildren"/>
  739. <cm:property name="base"/>
  740. <cm:property name="userName"/>
  741. </cm:properties>
  742. </cm:query>
  743. </xsl:for-each>
  744. </cm:requests>
  745. </cm:query>
  746. </xts:transform>
  747. </send:request>
  748. </xts:transform>
  749. </xts:transform>
  750. </xts:transform>
  751. </markup>
  752. </param>
  753. </xts:transform>
  754. </xts:append>
  755. </xts:sequence>
  756. </xsl:if>
  757. </xsl:template>
  758. </xsl:stylesheet>
  759. </xts:block>
  760. <!--
  761. ===============================================================================================
  762. prepareReportOptionsFromAgentOptions
  763. Copy the agent default report options into the report task report options
  764. ===============================================================================================
  765. -->
  766. <xts:block id="prepareReportOptionsFromAgentOptions" dependency="prepareSelectEntries" type="exec" mode="interpret" processor="XSLT" mandatory="false" condition=".[/root/env/param[@name='selected_path'] and
  767. /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup'
  768. and not(/root/env/param[@name='override_default_run_options']='true') and /root/agent_definition/agentOptions/form-vars/param[@name='override_default_options']='true']">
  769. <xsl:stylesheet version="1.0"
  770. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  771. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  772. exclude-result-prefixes="xts xtsext xsl">
  773. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  774. <xsl:variable name="burstPackageCapability">
  775. <xsl:choose>
  776. <!-- We have a report so get the burst capability -->
  777. <xsl:when test="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]/*[local-name()='report']/*[local-name()='metadataModelPackage']/*[local-name()='package']/*[local-name()='effectiveUserCapabilities']/*[local-name()='userCapabilityEnum' and . = 'canUseBursting']">
  778. <xsl:text/>true<xsl:text/>
  779. </xsl:when>
  780. <!-- We have a reportView so get the burst capability -->
  781. <xsl:when test="/root/*[local-name()='viewBaseCapabilities']/*[local-name()='queryResponse']/*[local-name()='queryReply']/*[local-name()='package']/*[local-name()='effectiveUserCapabilities']/*[local-name()='userCapabilityEnum' and . = 'canUseBursting']">
  782. <xsl:text/>true<xsl:text/>
  783. </xsl:when>
  784. <xsl:otherwise>
  785. <xsl:text/>false<xsl:text/>
  786. </xsl:otherwise>
  787. </xsl:choose>
  788. </xsl:variable>
  789. <xsl:variable name="reportIsBurstable" select="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]//*[local-name()='canBurst']='true' and $burstPackageCapability='true'"/>
  790. <!-- the agent default burst option is set-->
  791. <xsl:variable name="burstOptionSet" select="/root/agent_definition/agentOptions/*[local-name()='options']/*[local-name()='value']/*[local-name()='item'][name='burst']/*[local-name()='value']='true'"/>
  792. <xsl:template match="/">
  793. <xts:sequence>
  794. <xts:append>
  795. <tempOptions>
  796. <xsl:copy-of select="/root/agent_definition/agentOptions/options"/>
  797. </tempOptions>
  798. </xts:append>
  799. <!-- remove the burst option if the report does not support it or the package the report is based on does not support it.
  800. This ensures that the reports options summary is correctly displayed in the report task page.
  801. Rules
  802. |+++++++++++++++++ |+++++++++++++++++ |+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
  803. |report is burstable? | agent burst option? | example summary string |
  804. | y | y | ...Print the report in PDF format, Send the report and a link to the report by email, Burst the reports |
  805. | n | y | ...Print the report in PDF format, Send the report and a link to the report by email: 3 recipients |
  806. | n | n | ...Print the report in PDF format, Send the report and a link to the report by email: 3 recipients |
  807. | y | n | ...Print the report in PDF format, Send the report and a link to the report by email: 3 recipients |
  808. |+++++++++++++++++ |+++++++++++++++++ |++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
  809. -->
  810. <xsl:if test="not($reportIsBurstable='true') and $burstOptionSet">
  811. <xts:delete select="/root/tempOptions/*[local-name()='options']/*[local-name()='value']/*[local-name()='item'][name='burst']"/>
  812. </xsl:if>
  813. </xts:sequence>
  814. </xsl:template>
  815. </xsl:stylesheet>
  816. </xts:block>
  817. <!--
  818. ===============================================================================================
  819. generateUIHelpersForAgentDefaults
  820. When the agent defaults have been set but the report options have NOT been overridden we must ensure the summary
  821. strings are available so that the ui displays the agent defaults instead of 'Default'. This ensures that the user has an indication
  822. that the agent options have been overridden
  823. ===============================================================================================
  824. -->
  825. <xts:block id="generateUIHelpersForAgentDefaults" dependency="prepareReportOptionsFromAgentOptions" type="exec" mode="interpret" processor="XSLT" mandatory="false" condition=".[/root/env/param[@name='selected_path'] and
  826. /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup'
  827. and not(/root/env/param[@name='override_default_run_options']='true') and /root/agent_definition/agentOptions/form-vars/param[@name='override_default_options']='true']">
  828. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  829. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  830. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  831. <xts:logicsheet path="logicsheets/portal.xsl"/>
  832. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:x="x" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" 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:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" exclude-result-prefixes="xts xtsext xsl x cm dt pf cf cp">
  833. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  834. <pf:variables/>
  835. <xsl:template match="/">
  836. <xsl:variable name="agentRunOptions" select="/root/env/param[@name=starts-with(@name,'m_ao_')]"/>
  837. <xts:sequence>
  838. <xts:update select="/root/reportOptions">
  839. <reportOptions>
  840. <xsl:copy-of select="/root/tempOptions/*[local-name()='options']"/>
  841. <xsl:choose>
  842. <xsl:when test="not(/root/agent_definition/agentOptions/UIHelpers)">
  843. <dt:buildUIHelper/>
  844. </xsl:when>
  845. <xsl:otherwise>
  846. <xsl:copy-of select="/root/agent_definition/agentOptions/UIHelpers"/>
  847. </xsl:otherwise>
  848. </xsl:choose>
  849. </reportOptions>
  850. </xts:update>
  851. <!-- the helpers have been created-->
  852. <xts:append select="/root/env">
  853. <param name="helpersCreated">true</param>
  854. </xts:append>
  855. <!-- delete the temporary report options-->
  856. <xts:delete select="/root/tempOptions"/>
  857. </xts:sequence>
  858. </xsl:template>
  859. </xsl:stylesheet>
  860. </xts:block>
  861. <!--
  862. ===============================================================================================
  863. updateReportOptions
  864. update the reportOptions structure using the m_ro_* variables present in /root/env/param.
  865. The report options dialog has been visited and changes potentially made or an existing agent has been loaded.
  866. ===============================================================================================
  867. -->
  868. <xts:block id="updateReportOptions" dependency="generateUIHelpersForAgentDefaults" type="exec" mode="interpret" processor="XSLT" mandatory="false" condition=".[(/root/env/param[@name='selected_path'] and /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup' and /root/env/param[@name = 'visited_run_options'] = 'true' and /root/env/param[@name = 'userHitOK']) or /root/env/param[@name='agentLoaded']='true' or /root/env/param[@name='helpersCreated']='true']">
  869. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  870. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  871. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  872. <xts:logicsheet path="logicsheets/portal.xsl"/>
  873. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:x="x" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" 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:xtsext="xalan://com.cognos.xts.ext.XTSExt" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" exclude-result-prefixes="xts xtsext xsl x cm dt pf cf cp xsi">
  874. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  875. <pf:variables/>
  876. <xsl:template match="/">
  877. <xsl:variable name="agentRunOptions" select="/root/env/param[@name=starts-with(@name,'m_ao_')]"/>
  878. <xts:sequence>
  879. <!-- remove any options from the env that aren't suppose to be there (i.e. dependent on checkboxes that aren't checked -->
  880. <xts:replace select="/root/env">
  881. <xts:transform src="transforms/portal/options/cleanEnv.xslt" processor="XSLT">
  882. <root>
  883. <xsl:copy-of select="/root/env"/>
  884. </root>
  885. </xts:transform>
  886. </xts:replace>
  887. <!-- only create the blob when the override parameter is present-->
  888. <xsl:if test="/root/env/param[@name='override_default_run_options']='true'">
  889. <!-- remove the old reportOptions-->
  890. <xts:delete select="/root/reportOptions/*[local-name()='options' or local-name()='UIHelpers' or local-name()='parameters']"/>
  891. <!-- force the m_ro_saveOutput value to true when save as report view has been selected this
  892. needs to be set because when the agent is loaded generateParams.xslt does not automatically
  893. generate m_ro_saveOutput-->
  894. <xsl:if test="/root/env/param[@name='save_how']='new_entry'">
  895. <xts:replace select="/root/env/param[@name='m_ro_saveOutput']">
  896. <param name="m_ro_saveOutput">true</param>
  897. </xts:replace>
  898. </xsl:if>
  899. <xts:update select="/root/reportOptions">
  900. <reportOptions>
  901. <xsl:choose>
  902. <xsl:otherwise>
  903. <xts:transform src="transforms/portal/options/buildOptions.xslt" processor="XSLT">
  904. <root>
  905. <!-- add any agent specific options that start with m_ao_, this should probably be placed in options.xml too-->
  906. <xsl:for-each select="$agentRunOptions">
  907. <xsl:variable name="agentOptionName" select="substring-after(@name, 'm_ao_')"/>
  908. <xsl:if test="@name='m_ao_availableAsEmailAttachment'">
  909. <item xsi:type="cm:agentOptionBoolean">
  910. <name xsi:type="cm:agentOptionEnum">
  911. <xsl:value-of select="$agentOptionName"/>
  912. </name>
  913. <value xsi:type="xsd:boolean">
  914. <xsl:value-of select="."/>
  915. </value>
  916. </item>
  917. </xsl:if>
  918. </xsl:for-each>
  919. <xts:transform src="transforms/portal/options/buildOptionItems.xslt" processor="XSLT">
  920. <root>
  921. <xts:queryNode select="/root/env"/>
  922. <xts:transform name="XML" src="portal/options.xml"/>
  923. <contentLocale>
  924. <xsl:value-of select="$contentLocale"/>
  925. </contentLocale>
  926. <xsl:if test="key('env-param','deliveryOptions') != ''">
  927. <deliveryOptions>
  928. <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap', string( key('env-param','deliveryOptions') )),true())" disable-output-escaping="yes"/>
  929. </deliveryOptions>
  930. </xsl:if>
  931. <xsl:if test="key('env-param','mobileOptions') != ''">
  932. <mobileOptions>
  933. <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap', string( key('env-param','mobileOptions') )),true())" disable-output-escaping="yes"/>
  934. </mobileOptions>
  935. </xsl:if>
  936. <xsl:choose>
  937. <xsl:when test="contains(' powerPlay8Report powerPlay8ReportView ', concat(' ', key('env-param', 'm_class'),' '))">
  938. <optionType>powerPlay8Options</optionType>
  939. </xsl:when>
  940. <xsl:otherwise>
  941. <optionType>runOptions</optionType>
  942. </xsl:otherwise>
  943. </xsl:choose>
  944. <optionType>pdfOptions</optionType>
  945. <optionType>archiveOptions</optionType>
  946. <genDefaults>false</genDefaults>
  947. </root>
  948. </xts:transform>
  949. </root>
  950. </xts:transform>
  951. <xsl:if test="key('env-param','override_default_run_options')='true'">
  952. <!-- update the UIHelper markup-->
  953. <dt:buildUIHelper/>
  954. </xsl:if>
  955. <!-- <xts:transform src="transforms/portal/options/buildOptionItems.xslt" processor="XSLT">
  956. <root>
  957. <xts:queryNode select="/root/env"/>
  958. <xts:transform name="XML" src="portal/options.xml"/>
  959. <contentLocale>
  960. <xsl:value-of select="$contentLocale"/>
  961. </contentLocale>
  962. <xsl:if test="key('env-param','mobileOptions') != ''">
  963. <mobileOptions>
  964. <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap', string( key('env-param','mobileOptions') )),true())" disable-output-escaping="yes"/>
  965. </mobileOptions>
  966. </xsl:if>
  967. </root>
  968. </xts:transform> -->
  969. </xsl:otherwise>
  970. </xsl:choose>
  971. </reportOptions>
  972. </xts:update>
  973. </xsl:if>
  974. <!-- remove the options from the environment now that the reportOptions has been created -->
  975. <xts:replace select="/root/env">
  976. <xts:transform src="ags/transforms/delete_run_options.xslt" processor="XSLT">
  977. <root>
  978. <xsl:copy-of select="/root/env"/>
  979. </root>
  980. </xts:transform>
  981. </xts:replace>
  982. <xts:delete select="/root/env/param[@name='helpersCreated']" mandatory="false"/>
  983. </xts:sequence>
  984. <xts:sequence>
  985. <xts:append select="/root">
  986. <selectedEntries>
  987. <xsl:value-of select="xtsext:web64decode( xtsext:cafaction('sign_unwrap_settemplatename_getreportoptions_settemplateid_reportrunoptions001', string( /root/env/param[@name = 'selectedEntries'])), true() )" disable-output-escaping="yes"/>
  988. </selectedEntries>
  989. </xts:append>
  990. </xts:sequence>
  991. </xsl:template>
  992. </xsl:stylesheet>
  993. </xts:block>
  994. <!--
  995. ===============================================================================================
  996. encodeReportOptions
  997. Serialize the report options only when we have /root/reportOptions and a report has been selected and the report options
  998. have been overridden
  999. ===============================================================================================
  1000. -->
  1001. <xts:block id="encodeReportOptions" dependency="updateReportOptions" type="exec" mode="interpret" processor="XSLT" condition=".[/root/env/param[@name='selected_path'] and /root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup' and /root/reportOptions and /root/env/param[@name='override_default_run_options']='true']" mandatory="false">
  1002. <xts:logicsheet path="logicsheets/presentation/dialog/templates.xsl"/>
  1003. <xts:logicsheet path="logicsheets/portal.xsl"/>
  1004. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xts="http://developer.cognos.com/schemas/xts/" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:dt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/templates/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" exclude-result-prefixes="xsl xts pf cm dt xtsext">
  1005. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  1006. <pf:variables/>
  1007. <pf:serialize-xml/>
  1008. <xsl:template match="/">
  1009. <xts:sequence>
  1010. <xsl:variable name="markup">
  1011. <xsl:call-template name="serialize-xml">
  1012. <xsl:with-param name="node-set" select="/root/reportOptions"/>
  1013. </xsl:call-template>
  1014. </xsl:variable>
  1015. <xts:append select="/root/env">
  1016. <param name="reportOptions">
  1017. <xsl:value-of select="xtsext:cafaction( concat('sign_wrap_setpassportid_', $passport), xtsext:web64encode(string($markup ),true()))"/>
  1018. </param>
  1019. </xts:append>
  1020. </xts:sequence>
  1021. </xsl:template>
  1022. </xsl:stylesheet>
  1023. </xts:block>
  1024. <!--
  1025. ===============================================================================================
  1026. build taskParameters - convert m_parameters which is returned from powerplay prompting and turn it into taskParameters
  1027. ===============================================================================================
  1028. -->
  1029. <xts:block id="buildMRPParameters" processor="XSLT" dependency="encodeReportOptions" type="exec" condition=".[/root/env/param[@name='m_parameter']!='' ]" mandatory="false">
  1030. <xts:logicsheet path="logicsheets/portal.xsl"/>
  1031. <xsl:stylesheet version="1.0"
  1032. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  1033. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  1034. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  1035. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  1036. xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
  1037. exclude-result-prefixes="xsl pf xtsext xsi SOAP-ENC">
  1038. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  1039. <pf:variables/>
  1040. <xsl:template match="/">
  1041. <xts:sequence>
  1042. <!-- get the parameters returned from powerPlayService and append to root - have to be in this format to build the parameter description-->
  1043. <xsl:if test="key('env-param','m_parameter')!=''">
  1044. <xts:append select="/root">
  1045. <!-- this section is needed to generate the description of the parameters-->
  1046. <ppParams>
  1047. <parameters>
  1048. <xts:transform src="transforms/portal/parameters/post-WARP-process.xslt" processor="XSLT">
  1049. <xts:transform name="XMLDecode">
  1050. <xsl:value-of select="string(key('env-param','m_parameter'))"/>
  1051. </xts:transform>
  1052. </xts:transform>
  1053. </parameters>
  1054. </ppParams>
  1055. </xts:append>
  1056. </xsl:if>
  1057. </xts:sequence>
  1058. </xsl:template>
  1059. </xsl:stylesheet>
  1060. </xts:block>
  1061. <!--
  1062. ===============================================================================================
  1063. buildTaskParameters2 - build the taskParameters variable
  1064. ===============================================================================================
  1065. -->
  1066. <xts:block id="buildMRPParameters2" processor="XSLT" dependency="buildMRPParameters" type="exec" condition=".[/root/ppParams]" mandatory="false">
  1067. <xts:logicsheet path="logicsheets/portal.xsl"/>
  1068. <xsl:stylesheet version="1.0"
  1069. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  1070. xmlns:pf="http://developer.cognos.com/schemas/xts/pf"
  1071. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  1072. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  1073. xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
  1074. exclude-result-prefixes="xsl pf xtsext xsi SOAP-ENC">
  1075. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  1076. <xsl:template match="/">
  1077. <xts:sequence>
  1078. <!-- build the taskParameters variable -->
  1079. <xsl:variable name="markup">
  1080. <xsl:call-template name="serialize-xml">
  1081. <xsl:with-param name="node-set" select="/root/ppParams/parameters"/>
  1082. </xsl:call-template>
  1083. </xsl:variable>
  1084. <xsl:if test="$markup!=''">
  1085. <xts:delete select="/root/env/param[@name='m_rp_parameters']"/>
  1086. <xts:append select="/root/env">
  1087. <param name="m_rp_parameters">
  1088. <xsl:value-of select="xtsext:web64encode(string($markup),true())"/>
  1089. </param>
  1090. </xts:append>
  1091. </xsl:if>
  1092. </xts:sequence>
  1093. </xsl:template>
  1094. <pf:serialize-xml/>
  1095. </xsl:stylesheet>
  1096. </xts:block>
  1097. <!--
  1098. ================================================================================
  1099. encode the agent items again
  1100. ================================================================================
  1101. -->
  1102. <xts:block id="buildContext" dependency="buildMRPParameters2" processor="XSLT" type="exec" condition=".[/root/*[local-name()='requestParams']/*[local-name()]='param' and @name='requestState'] = 'markup'" mandatory="false">
  1103. <xts:logicsheet path="logicsheets/portal.xsl"/>
  1104. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:pf="http://developer.cognos.com/schemas/xts/pf" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:xts="http://developer.cognos.com/schemas/xts/" xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt" exclude-result-prefixes="xsl pf cm xts xtsext">
  1105. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  1106. <pf:serialize-xml/>
  1107. <pf:variables/>
  1108. <xsl:template match="/">
  1109. <xts:sequence>
  1110. <xsl:variable name="markup">
  1111. <xsl:call-template name="serialize-xml">
  1112. <xsl:with-param name="node-set">
  1113. <xsl:call-template name="buildContext"/>
  1114. </xsl:with-param>
  1115. </xsl:call-template>
  1116. </xsl:variable>
  1117. <xts:append select="/root/env">
  1118. <param name="context">
  1119. <xsl:value-of select="xtsext:cafaction( concat('sign_wrap_setpassportid_', $passport, '_settemplatename_encodeagentdefinition_settemplateid_dialogadapter003'), xtsext:web64encode( string( $markup ), true()))"/>
  1120. </param>
  1121. </xts:append>
  1122. </xts:sequence>
  1123. </xsl:template>
  1124. <!-- build the context -->
  1125. <xsl:template name="buildContext">
  1126. <context>
  1127. <env>
  1128. <!-- taskParameters is what stores the current values of the parameters/assignments -->
  1129. <!-- only pass taskParameters into the context if the report is the same as it was last time -
  1130. we don't want parameters which are defined on reportA being used on reportB -->
  1131. <xsl:if test="not(/root/env/param[@name='m_obj']) or (/root/env/param[@name='m_obj'] = /root/env/param[@name='selected_path'])">
  1132. <xsl:copy-of select="/root/env/param[@name='taskParameters']"/>
  1133. </xsl:if>
  1134. <!-- the actual path to the report - which is needed in the call to getParameters -->
  1135. <xsl:copy-of select="/root/env/param[@name='selected_path']"/>
  1136. <!-- the m_rp_parameters which is the end result of the prompt pages -->
  1137. <xsl:copy-of select="/root/env/param[@name='m_rp_parameters']"/>
  1138. <!-- the pv_ items - which is all the settings for parameters in the UI/drop down/input box -->
  1139. <xsl:copy-of select="/root/env/param[starts-with(@name, 'pv_')]"/>
  1140. <!-- have to tell the parameter code what sort of object we're dealing with for powerplay -->
  1141. <param name="objectClass"><xsl:value-of select="/root/env/param[@name='m_class']"/></param>
  1142. </env>
  1143. </context>
  1144. </xsl:template>
  1145. </xsl:stylesheet>
  1146. </xts:block>
  1147. <!--
  1148. ===============================================================================================
  1149. genMarkup -
  1150. ===============================================================================================
  1151. -->
  1152. <xts:block id="genMarkup" type="exec" processor="XSLT" dependency="buildContext" condition=".[/root/*[local-name()='requestParams']/*[local-name()='param' and @name='requestState'] = 'markup' or /root/*[local-name()='morphletResponse']]" mandatory="false">
  1153. <!-- logicsheets -->
  1154. <xts:logicsheet path="ags/logicsheets/promptValues.xslt"/>
  1155. <xts:logicsheet path="ags/logicsheets/run_options.xslt"/>
  1156. <xts:logicsheet path="ags/logicsheets/dialogs.xsl"/>
  1157. <!-- portal specific information -->
  1158. <xts:logicsheet path="logicsheets/portal.xsl"/>
  1159. <!-- Dialog specific logicsheets -->
  1160. <xts:logicsheet path="logicsheets/presentation/dialog/ui-templates.xsl"/>
  1161. <xts:logicsheet path="logicsheets/presentation/dialog/framework.xsl"/>
  1162. <xts:logicsheet path="logicsheets/presentation/layout.xsl"/>
  1163. <xts:logicsheet path="logicsheets/presentation/dialog/presentation.xsl"/>
  1164. <!-- Generic logicsheets -->
  1165. <xts:logicsheet path="logicsheets/presentation/controls/framework.xsl"/>
  1166. <xts:logicsheet path="logicsheets/presentation/controls/presentation.xsl"/>
  1167. <!-- apply the form logic -->
  1168. <xts:logicsheet path="logicsheets/formlogic.xslt"/>
  1169. <!-- Prevent the href from appearing in the status bar. -->
  1170. <xts:logicsheet path="logicsheets/presentation/touch_up.xslt"/>
  1171. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:out="http://www.w3.org/1999/XSL/Transform" xmlns:agspmt="http://developer.cognos.com/schemas/xts/logicsheets/xslt/ags/promptValues/" xmlns:agsdlg="http://developer.cognos.com/schemas/xts/logicsheets/xslt/ags/dialog/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" xmlns:req-params="http://developer.cognos.com/schemas/request/params" 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:utml="http://developer.cognos.com/schemas/xts/logicsheet/xslt/formlogic/" xmlns:ut="http://developer.cognos.com/schemas/xts/logicsheets/xslt/presentation/dialog/ui-templates/" xmlns:agsro="http://developer.cognos.com/schemas/xts/agsro" exclude-result-prefixes="xsl out agspmt agsdlg xsi cm pf xtsext lyt dp df cf cp xos utml ut agsro">
  1172. <xsl:output method="xml" encoding="utf-8" indent="no"/>
  1173. <xsl:key name="request-param" match="/root/*[local-name()='requestParams']/*[local-name()='param']" use="@name"/>
  1174. <pf:variables/>
  1175. <xsl:variable name="ags_image_root">../ags/images/summary/</xsl:variable>
  1176. <xsl:variable name="has_execute_permission" select="contains(concat(' ', /root/cm:queryResponse/cm:queryReply[2]//cm:permissions, ' '), ' execute ')"/>
  1177. <xsl:variable name="permissions" select="/root/*[local-name()='queryResponse']/*[local-name()='queryReply'][2]//*[local-name() ='permissions']"/>
  1178. <xsl:variable name="objectClass" select="/root/env/param[@name='m_class']"/>
  1179. <xsl:variable name="spacer">
  1180. <img height="10" width="10">
  1181. <xsl:attribute name="src">
  1182. <xsl:value-of select="$webcontent"/>/images/space.gif</xsl:attribute>
  1183. </img>
  1184. </xsl:variable>
  1185. <!-- declared a variable to determine if a report has been selected, used for validation purposes-->
  1186. <xsl:variable name="hasReport">
  1187. <xsl:choose>
  1188. <xsl:when test="key('env-param','selected_path') != '' and /root/cm:queryResponse/cm:queryReply[2]//cm:defaultName">
  1189. <xsl:text>true</xsl:text>
  1190. </xsl:when>
  1191. <xsl:otherwise>
  1192. <xsl:text>false</xsl:text>
  1193. </xsl:otherwise>
  1194. </xsl:choose>
  1195. </xsl:variable>
  1196. <!-- determine which dialog to show when the set... options link is clicked-->
  1197. <xsl:variable name="morphletTarget">
  1198. <xsl:choose>
  1199. <!-- report options have not been set, note that even if the default agent options have been overridden this dialogue
  1200. should still be shown, because the overridden options are the new defaults -->
  1201. <xsl:when test="contains($objectClass, 'powerPlay8report')">
  1202. <xsl:value-of select="$gateway"/>
  1203. </xsl:when>
  1204. <xsl:when test="not(key('env-param','override_default_run_options')) or key('env-param','override_default_run_options')='false'">
  1205. <xsl:text>/ags/report_options_popup.xts</xsl:text>
  1206. </xsl:when>
  1207. <!-- report run options have been overridden-->
  1208. <xsl:otherwise>
  1209. <xsl:text>/ags/report_run_options.xts</xsl:text>
  1210. </xsl:otherwise>
  1211. </xsl:choose>
  1212. </xsl:variable>
  1213. <xsl:variable name="allowPDF"><xsl:if test="not(/root/session/param[@name='capabilities']/canGeneratePDFOutput)">false</xsl:if></xsl:variable>
  1214. <xsl:variable name="allowXML"><xsl:if test="not(/root/session/param[@name='capabilities']/canGenerateXMLOutput)">false</xsl:if></xsl:variable>
  1215. <xsl:variable name="allowCSV"><xsl:if test="not(/root/session/param[@name='capabilities']/canGenerateCSVOutput)">false</xsl:if></xsl:variable>
  1216. <xsl:variable name="allowXLS"><xsl:if test="not(/root/session/param[@name='capabilities']/canGenerateXLSOutput)">false</xsl:if></xsl:variable>
  1217. <xsl:variable name="restrictedUser" select="$allowPDF='false' or $allowXML='false' or $allowCSV='false' or $allowXLS='false'"/>
  1218. <xsl:template match="/">
  1219. <xts:sequence>
  1220. <xts:append select="/root/output">
  1221. <xos:part>
  1222. <xos:entityHeader>
  1223. <xos:param name="Content-Type">text/xml; charset=utf-8</xos:param>
  1224. </xos:entityHeader>
  1225. <xos:entityBody>
  1226. <xsl:element name="{key('request-param','resultNode')}" namespace="">
  1227. <markup>
  1228. <xts:transform name="XMLEncode">
  1229. <utml:form name="pform">
  1230. <utml:exclude-prefix>
  1231. <xsl:value-of select="'pv_'"/>
  1232. </utml:exclude-prefix>
  1233. <!-- exclusion list should remove certain items but definately those which are passed in context to the async call -->
  1234. <utml:exclusion-list>
  1235. <xsl:value-of select="' m_obj method cleared_prompts pageitem context m_rp_parameters has_prompts updatedTaskParameters '"/>
  1236. </utml:exclusion-list>
  1237. <agsdlg:header>
  1238. <dp:image>
  1239. <img alt="" border="0">
  1240. <xsl:attribute name="src">
  1241. <xsl:value-of select="$ags_image_root"/>icon_report_24.gif</xsl:attribute>
  1242. </img>
  1243. </dp:image>
  1244. <dp:title>
  1245. <xts:string id="DIALOG_REPORT_TITLE"/>
  1246. </dp:title>
  1247. <dp:description>
  1248. <xts:string id="DIALOG_REPORT_DESCRIPTION"/>
  1249. </dp:description>
  1250. </agsdlg:header>
  1251. <!-- need this to be included by default -->
  1252. <script type="text/javascript" src="../ags/dragDropHandler.js"/>
  1253. <utml:input type="hidden" id="taskParameters" name="taskParameters" />
  1254. <utml:input type="hidden" id="report_visited" name="report_visited" value="true"/>
  1255. <utml:input type="hidden" id="controller_state" name="controller_state"/>
  1256. <utml:input type="hidden" id="taskName" name="taskName" utml:update="false">
  1257. <utml:value>
  1258. <xsl:choose>
  1259. <xsl:when test="$hasReport and /root/cm:queryResponse/cm:queryReply[2]//cm:defaultName != '' ">
  1260. <xsl:value-of select="/root/cm:queryResponse/cm:queryReply[2]//cm:defaultName"/>
  1261. </xsl:when>
  1262. <xsl:when test="key('env-param', 'taskName') and string-length(string(key('env-param', 'taskName'))) > 0">
  1263. <xsl:value-of select="key('env-param', 'taskName')"/>
  1264. </xsl:when>
  1265. </xsl:choose>
  1266. </utml:value>
  1267. </utml:input>
  1268. <utml:input type="hidden" id="ui.routingServerGroup" name="ui.routingServerGroup" utml:update="false">
  1269. <utml:value>
  1270. <xsl:value-of select="/root/routingServerGroup/*[local-name() = 'result'][last()]"/>
  1271. </utml:value>
  1272. </utml:input>
  1273. <utml:input type="hidden" id="model" name="model" utml:update="false">
  1274. <utml:value>
  1275. <xsl:value-of select="/root/model"/>
  1276. </utml:value>
  1277. </utml:input>
  1278. <lyt:layout style="2">
  1279. <lyt:section>
  1280. <dp:textarea section3_align="left">
  1281. <!-- the report name label-->
  1282. <dp:section1>
  1283. <xts:string id="DIALOG_REPORT_LABEL"/>
  1284. </dp:section1>
  1285. <!-- the report name input-->
  1286. <dp:section2>
  1287. <!-- get the name of the report -->
  1288. <xsl:choose>
  1289. <xsl:when test="$hasReport and /root/cm:queryResponse/cm:queryReply[2]//cm:defaultName != '' " >
  1290. <xsl:value-of select="/root/cm:queryResponse/cm:queryReply[2]//cm:defaultName"/>
  1291. </xsl:when>
  1292. <xsl:otherwise>
  1293. <xts:string id="DIALOG_MESSAGE_NONE"/>
  1294. </xsl:otherwise>
  1295. </xsl:choose>
  1296. </dp:section2>
  1297. <dp:section3>
  1298. <a href="#" onclick="doSelectObject('reports.es', '{xtsext:javascriptencode(/root/env/param[@name = 'selected_path'])}')">
  1299. <xts:string id="SELECT_A_REPORT"/>
  1300. </a>
  1301. </dp:section3>
  1302. </dp:textarea>
  1303. </lyt:section>
  1304. <lyt:section>
  1305. <xsl:value-of select="key('request-param','suppressionDetails')" disable-output-escaping="yes"/>
  1306. </lyt:section>
  1307. </lyt:layout>
  1308. <lyt:layout style="1">
  1309. <lyt:section>
  1310. <dp:list title="DIALOG_RUN_OPTIONS">
  1311. <dp:section>
  1312. <dp:text nospace="true" wrap="true">
  1313. <xsl:attribute name="id">reportOptionSummaryContents</xsl:attribute>
  1314. <xsl:choose>
  1315. <xsl:when test="key('env-param','override_default_run_options')='true' or /root/agent_definition/agentOptions/form-vars/param[@name='override_default_options']='true'">
  1316. <xsl:variable name="ro" select="/root/reportOptions/*[local-name()='options']/*[local-name()='value']/*[local-name()='item']"/>
  1317. <xsl:choose>
  1318. <xsl:when test="/root/reportOptions">
  1319. <xsl:call-template name="ut:buildRunOptionSummary">
  1320. <xsl:with-param name="summaryPath" select="/root/reportOptions/*[local-name()='UIHelpers']"/>
  1321. <xsl:with-param name="outputFormat" select="$ro[./*[local-name()='name']='outputFormat']/*[local-name()='value']/*"/>
  1322. <xsl:with-param name="outputLocale" select="$ro[./*[local-name()='name']='outputLocale']/*[local-name()='value']/*"/>
  1323. <xsl:with-param name="archive" select="$ro[./*[local-name()='name']='archive']/*[local-name()='value'] = 'true'"/>
  1324. <xsl:with-param name="saveAsReportView" select="$ro[./*[local-name()='name']='saveAs' and ./*[local-name()='objectClass']='reportView']"/>
  1325. <xsl:with-param name="save" select="$ro[./*[local-name()='name']='saveOutput']/*[local-name()='value'] = 'true'"/>
  1326. <xsl:with-param name="saveAsName" select="$ro[./*[local-name()='name']='saveAs' and ./*[local-name()='objectClass']='reportView']/*[local-name()='objectName']/*[local-name()='item']/*[local-name()='value']"/>
  1327. <xsl:with-param name="print" select="$ro[./*[local-name()='name']='print']/*[local-name()='value'] = 'true'"/>
  1328. <xsl:with-param name="email" select="$ro[./*[local-name()='name']='email']/*[local-name()='value'] = 'true'"/>
  1329. <xsl:with-param name="mobile" select="$ro[./*[local-name()='name']='mobile']/*[local-name()='value'] = 'true'"/>
  1330. <xsl:with-param name="burst" select="$ro[./*[local-name()='name']='burst']/*[local-name()='value'] = 'true'"/>
  1331. <xsl:with-param name="contentTaskOption" select="$ro[./*[local-name()='name']='repairSecurityReferences']/*[local-name()='value']"/>
  1332. <xsl:with-param name="deploymentUpgradeOption" select="$ro[./*[local-name()='name']='upgradeClasses']"/>
  1333. <xsl:with-param name="jobDefinition" select="false()"/>
  1334. <xsl:with-param name="contentTask" select="true()"/>
  1335. <xsl:with-param name="deployment" select="true()"/>
  1336. <xsl:with-param name="detailed" select="false()"/>
  1337. </xsl:call-template>
  1338. <!-- Check if this report can be attached to email tasks-->
  1339. <xsl:if test="$ro[./*[local-name()='name']='availableAsEmailAttachment']">
  1340. <br/>
  1341. <xsl:text><xts:string id="IDS_OTHERRUN_ENABLE_ATTACHMENTS"/></xsl:text>
  1342. </xsl:if>
  1343. </xsl:when>
  1344. </xsl:choose>
  1345. </xsl:when>
  1346. <xsl:otherwise>
  1347. <xts:string id="IDS_OTHERRUN_DEFAULT"/>
  1348. </xsl:otherwise>
  1349. </xsl:choose>
  1350. </dp:text>
  1351. </dp:section>
  1352. <dp:section>
  1353. <xsl:choose>
  1354. <!-- Set...-->
  1355. <xsl:when test="not(key('env-param','override_default_run_options')) or key('env-param','override_default_run_options')='false'">
  1356. <a href="#" onclick="openOptionsDialog('{$morphletTarget}');">
  1357. <xts:string id="DIALOG_SET_RUN_OPTIONS"/>
  1358. </a>
  1359. </xsl:when>
  1360. <!-- Edit... Clear-->
  1361. <xsl:otherwise>
  1362. <a href="#" onclick="openOptionsDialog('{$morphletTarget}');">
  1363. <xts:string id="DIALOG_EDIT_RUN_OPTIONS"/>
  1364. </a>
  1365. <xsl:if test="not($restrictedUser)">
  1366. <xsl:copy-of select="$spacer"/>
  1367. <a href="#" onclick="javascript:clearOptions();">
  1368. <xts:string id="DIALOG_CLEAR_RUN_OPTIONS"/>
  1369. </a>
  1370. </xsl:if>
  1371. </xsl:otherwise>
  1372. </xsl:choose>
  1373. </dp:section>
  1374. </dp:list>
  1375. </lyt:section>
  1376. </lyt:layout>
  1377. <xsl:if test="$hasReport = 'true'">
  1378. <lyt:layout style="1">
  1379. <lyt:section width="100%">
  1380. <dp:list title="DIALOG_PROMPT_OPTIONS" width="100%">
  1381. <dp:section>
  1382. <dp:hint wrap="wrap">
  1383. <xts:string id="DIALOG_PROMPT_DESCRIPTION"/>
  1384. </dp:hint>
  1385. </dp:section>
  1386. <dp:section>
  1387. <div id="promptValuesDiv"/>
  1388. </dp:section>
  1389. </dp:list>
  1390. </lyt:section>
  1391. </lyt:layout>
  1392. </xsl:if>
  1393. <dp:emptyFooter/>
  1394. <script type="text/javascript">
  1395. var original_target = null;
  1396. function init() {
  1397. <xsl:if test="/root/env/param[@name='selected_path']">
  1398. parent.getConfigFrame().cfgSet("so.defaultLocation", "<xsl:value-of select="xtsext:javascriptencode(/root/env/param[@name='selected_path'])"/>/..");
  1399. </xsl:if>
  1400. <xsl:if test="not(/root/env/param[@name='report_visited'])">
  1401. <xsl:if test="not(/root/env/param[@name='selected_path'])">
  1402. doSelectObject('reports.es')
  1403. </xsl:if>
  1404. </xsl:if>
  1405. <xsl:if test="$hasReport = 'true' and /root/cm:queryResponse/cm:queryReply[2]//cm:defaultName != '' ">
  1406. loadParameters();
  1407. </xsl:if>
  1408. //let the listener know that this is a promptable report task
  1409. var taskId = "<xsl:value-of select="xtsext:javascriptencode(/root/req-params:requestParams/req-params:param[@name='tabSelectedID'])"/>";
  1410. var reportName = "<xsl:value-of select="xtsext:javascriptencode(/root/cm:queryResponse/cm:queryReply[2]//cm:defaultName)"/>";
  1411. var reportPath = "storeID(\'<xsl:value-of select="xtsext:javascriptencode(/root/cm:queryResponse/cm:queryReply[2]//cm:storeID)"/>\')";
  1412. parent.getConfigFrame().getAgentItemsListener().setReportTask(taskId, reportName, reportPath);
  1413. }
  1414. function loadParameters() {
  1415. var promptDiv = document.getElementById('promptValuesDiv');
  1416. if (promptDiv) {
  1417. var imgHTML = '&lt;img src="' + '<xsl:value-of select="xtsext:javascriptencode(string($skin_root))"/>' + '/prompting/images/loading_timed.gif"/&gt;';
  1418. // SEC_INFO: loading_string values retrieved from AGS_language.xml messages file from the server
  1419. promptDiv.innerHTML = imgHTML + parent.htmlEncode(parent.getConfigFrame().loading_string);
  1420. }
  1421. var taskId = "<xsl:value-of select="xtsext:javascriptencode(/root/req-params:requestParams/req-params:param[@name='tabSelectedID'])"/>";
  1422. var obj = "<xsl:value-of select="xtsext:javascriptencode(/root/env/param[@name='selected_path'])"/>";
  1423. var context = "<xsl:value-of select="xtsext:javascriptencode(/root/env/param[@name='context'])"/>";
  1424. var reportType = "<xsl:value-of select="xtsext:javascriptencode($objectClass)"/>";
  1425. var request = parent.getConfigFrame().getGetParameterRequestString(obj, context, obj+taskId, reportType);
  1426. <xsl:if test="not(contains($permissions, 'execute') and contains($permissions, 'read')) or $objectClass='powerPlay8Report' or $objectClass='powerPlay8ReportView'">
  1427. request += "&amp;doSkip=true";
  1428. </xsl:if>
  1429. // do the request
  1430. parent.getConfigFrame().startGetParametersRequest(request, parent.getConfigFrame().getGetParameterRequestString);
  1431. }
  1432. /*
  1433. * validate the report page and popup an appropriate alert message
  1434. */
  1435. function validate() {
  1436. var isValid = true;
  1437. <xsl:choose>
  1438. <xsl:when test="not($hasReport = 'true')">
  1439. isValid = false;
  1440. <xsl:variable name="no_report"><xts:string id='DIALOG_REPORT_NO_REPORT_NAME'/></xsl:variable>
  1441. alert('<xsl:value-of select="xtsext:javascriptencode(string($no_report))"/>');
  1442. </xsl:when>
  1443. <xsl:otherwise>
  1444. /* it could be prompted report! check to see if the prompts are still loading.
  1445. * if so then don't allow to edit the default options yet.
  1446. */
  1447. var promptDiv = document.getElementById('promptValuesDiv');
  1448. if (promptDiv != 'undefined' &amp;&amp; promptDiv.innerHTML.indexOf('loading_timed.gif') != -1) {
  1449. isValid = false;
  1450. <xsl:variable name="loading_prompts"><xts:string id='DIALOG_REPORT_LOADING_PROMPTS'/></xsl:variable>
  1451. alert('<xsl:value-of select="xtsext:javascriptencode(string($loading_prompts))"/>');
  1452. }
  1453. </xsl:otherwise>
  1454. </xsl:choose>
  1455. return isValid &amp;&amp; validatePromptPage();
  1456. }
  1457. /*
  1458. * Open the options dialog. Two dialogs are available depending on whether the user chooses
  1459. * to override the default options for the report task
  1460. * target The path to the morphlet to be executed
  1461. */
  1462. function openOptionsDialog(target) {
  1463. if (validate()) {
  1464. setup_popup();
  1465. doSubmit(target,'stack-up');
  1466. remove_popup();
  1467. }
  1468. }
  1469. function clearOptions() {
  1470. document.pform.override_default_run_options.value='false';
  1471. document.pform.submit();
  1472. }
  1473. function setup_popup()
  1474. {
  1475. // save the target
  1476. original_target = document.pform.target;
  1477. document.pform.target = "popUpFrame";
  1478. }
  1479. function remove_popup()
  1480. {
  1481. document.pform.target = original_target;
  1482. }
  1483. function doSubmit(location,op)
  1484. {
  1485. document.pform.m.value = location;
  1486. document.pform.ps_nav_op.value = op;
  1487. // submit the form
  1488. document.pform.submit();
  1489. }
  1490. </script>
  1491. <!-- build the scripts needed for prompting -->
  1492. <xsl:call-template name="promptValuesScript"/>
  1493. </utml:form>
  1494. </xts:transform>
  1495. </markup>
  1496. </xsl:element>
  1497. </xos:entityBody>
  1498. </xos:part>
  1499. </xts:append>
  1500. </xts:sequence>
  1501. </xsl:template>
  1502. <agspmt:promptValuesScript/>
  1503. <ut:buildRunOptionSummary/>
  1504. </xsl:stylesheet>
  1505. </xts:block>
  1506. <!--
  1507. ===============================================================================================
  1508. debug - special debug block for nested requests
  1509. ===============================================================================================
  1510. -->
  1511. <xts:block id="debug" type="exec" processor="XSLT" mimeType="text/html" dependency="genMarkup" condition=".[/root/session/param[@name='debug']='1']" mandatory="false">
  1512. <!-- Get the debug logic sheet -->
  1513. <xts:logicsheet path="logicsheets/debuglogic.xslt"/>
  1514. <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">
  1515. <xsl:output method="html" version="1.0" encoding="UTF-8" indent="no"/>
  1516. <xsl:template match="/">
  1517. <dbg:dumpxml select="/root"/>
  1518. </xsl:template>
  1519. </xsl:stylesheet>
  1520. </xts:block>
  1521. </xts:morphlet>