doScheduleAction.xts 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: ps
  5. (C) Copyright IBM Corp. 2005, 2011
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <!--
  9. Copyright (C) 2008 Cognos ULC, an IBM Company. All rights reserved.
  10. Cognos (R) is a trademark of Cognos ULC, (formerly Cognos Incorporated).
  11. -->
  12. <!--
  13. ===============================================================================================
  14. ===============================================================================================
  15. -->
  16. <xts:morphlet xmlns:xts="http://developer.cognos.com/schemas/xts/" requiredCapability="canUseScheduling">
  17. <xts:block id="doFormCommand" processor="XSLT" type="exec">
  18. <xts:logicsheet path="logicsheets/buslogic.xslt"/>
  19. <xts:logicsheet path="logicsheets/cm-logic.xsl"/>
  20. <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
  21. xmlns:xts="http://developer.cognos.com/schemas/xts/"
  22. xmlns:es="http://developer.cognos.com/schemas/eventManagementService/1"
  23. xmlns:send="http://developer.cognos.com/schemas/xts/logic-sheet/xslt/brl/1/"
  24. xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/"
  25. xmlns:form="http://developer.cognos.com/schemas/xts/portal/iFrmCmd/1/"
  26. xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  27. xmlns:bus="http://developer.cognos.com/schemas/bibus/3/"
  28. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  29. xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
  30. xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  31. xmlns:xtsext="xalan://com.cognos.xts.ext.XTSExt"
  32. exclude-result-prefixes="xtsext">
  33. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  34. <xsl:template match="/root/command/form:doScheduleAction/form:env">
  35. <xts:sequence>
  36. <xts:append>
  37. <send:request provider="eventManagementService">
  38. <xsl:choose>
  39. <xsl:when test="form:param[@name='action']='cancel'">
  40. <es:cancelEvents>
  41. <xsl:call-template name="requestBody"/>
  42. </es:cancelEvents>
  43. </xsl:when>
  44. <xsl:when test="form:param[@name='action']='release'">
  45. <es:releaseEvents>
  46. <xsl:call-template name="requestBody"/>
  47. </es:releaseEvents>
  48. </xsl:when>
  49. <xsl:when test="form:param[@name='action']='suspend'">
  50. <es:holdEvents>
  51. <xsl:call-template name="requestBody"/>
  52. </es:holdEvents>
  53. </xsl:when>
  54. </xsl:choose>
  55. </send:request>
  56. </xts:append>
  57. </xts:sequence>
  58. </xsl:template>
  59. <xsl:template name="requestBody">
  60. <eventIDs xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="xsd:string[{count(form:param[starts-with(@name,'checkbox_')])}]">
  61. <xsl:for-each select="form:param[starts-with(@name, 'checkbox_')]">
  62. <item xsi:type="xsd:string"><xsl:value-of select="."/></item>
  63. </xsl:for-each>
  64. </eventIDs>
  65. </xsl:template>
  66. </xsl:stylesheet>
  67. </xts:block>
  68. <!--
  69. ===============================================================================================
  70. commandResults - operation results
  71. ===============================================================================================
  72. -->
  73. <xts:block id="commandResults" processor="XSLT" type="exec" mode="output" mimeType="text/xml" dependency="doFormCommand">
  74. <xts:logicsheet path="logicsheets/cm-logic.xsl"/>
  75. <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:cm="http://developer.cognos.com/schemas/xts-cm/1/" version="1.0">
  76. <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/>
  77. <xsl:template match="/root">
  78. <response xmlns="http://developer.cognos.com/schemas/xts/portal/iFrmCmd/1/">
  79. <xsl:choose>
  80. <xsl:when test="*[local-name()='cancelEventsResponse' or local-name()='releaseEventsResponse' or local-name()='holdEventsResponse']">
  81. <xsl:copy-of select="*[local-name()='cancelEventsResponse' or local-name()='releaseEventsResponse' or local-name()='holdEventsResponse']"/>
  82. </xsl:when>
  83. <xsl:otherwise>
  84. <error/>
  85. </xsl:otherwise>
  86. </xsl:choose>
  87. </response>
  88. </xsl:template>
  89. <xsl:template match="text()"/>
  90. </xsl:stylesheet>
  91. </xts:block>
  92. </xts:morphlet>