スタイルシート (XSL) Web リソース

 

公開日: 2017年1月

対象: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online

XML データを変換するには、スタイルシート (XSL) Web リソースを使用します。

XSL Web リソースの機能

ソリューションで使用されている XML データを変換するには、XSL Web リソースを使用します。

以下の Web リソースが連動することで、XML Web リソースのデータを使用してテーブルを表示するページがレンダリングされます。 これらの Web リソースのソース ファイルは sdk\samplecode\cs\client\webresources\importwebresources\importwebresources\filestoimport の SDK Microsoft Dynamics CRM SDK パッケージをダウンロードします。 に含まれている Import Web Resources サンプルの一部です。

  • HTML Web リソース: sample_/ImportWebResources/Content/ShowData.htm

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
     <title></title>
     <script src="Script/Script.js" type="text/javascript"></script>
     <link href="CSS/Styles.css" rel="stylesheet" type="text/css" />
    </head>
    <body onload="SDK.ImportWebResources.showData()">
     <div id="results" />
    </body>
    </html>
    
  • XSL Web リソース: sample_/ImportWebResources/XSL/Transform.xslt

    <?xml version="1.0" encoding="utf-8"?>
    <xsl:stylesheet version="1.0"
                    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                    xmlns:msxsl="urn:schemas-microsoft-com:xslt"
                    exclude-result-prefixes="msxsl"
    >
     <xsl:output method="xml"
                 indent="yes"/>
    
     <xsl:template match="@* | node()">
      <xsl:copy>
       <xsl:apply-templates select="@* | node()"/>
      </xsl:copy>
     </xsl:template>
    
    
     <xsl:template match="people">
      <xsl:element name="table">
       <xsl:element name="thead">
        <xsl:element name="tr">
         <xsl:element name="th">
          <xsl:text>First Name</xsl:text>
         </xsl:element>
         <xsl:element name="th">
          <xsl:text>Last Name</xsl:text>
         </xsl:element>
        </xsl:element>
       </xsl:element>
       <xsl:element name="tbody">
        <xsl:apply-templates />
       </xsl:element>
      </xsl:element>
    
     </xsl:template>
    
     <xsl:template match="person">
      <xsl:element name="tr">
       <xsl:element name="td">
        <xsl:value-of select="@firstName"/>
       </xsl:element>
       <xsl:element name="td">
        <xsl:value-of select="@lastName"/>
       </xsl:element>
      </xsl:element>
    
     </xsl:template>
    
    </xsl:stylesheet>
    
  • XML Web リソース: sample_/ImportWebResources/Data/Data.xml

    <?xml version="1.0" encoding="utf-8" ?>
    <people>
     <person firstName="Apurva"
             lastName="Dalia" />
     <person firstName="Ofer"
             lastName="Daliot" />
     <person firstName="Jim"
             lastName="Daly" />
     <person firstName="Ryan"
             lastName="Danner" />
     <person firstName="Mike"
             lastName="Danseglio" />
     <person firstName="Alex"
             lastName="Darrow" />
    </people>
    
  • スクリプト Web リソース: sample_/ImportWebResources/Script/Script.js

    //If the SDK namespace object is not defined, create it.
    if (typeof (SDK) == "undefined")
    { SDK = {}; }
    // Create Namespace container for functions in this library;
    SDK.ImportWebResources = {
     dataFile: "Data/Data.xml",
     transformFile: "XSL/Transform.xslt",
     showData: function () {
    
      //Create an XML document from the Data.xml file
      var dataXml = new ActiveXObject("Msxml2.DOMDocument.6.0");
      dataXml.async = false;
      dataXml.load(this.dataFile);
    
      //Create an XML document from the Transform.xslt file
      var transformXSLT = new ActiveXObject("Msxml2.DOMDocument.6.0");
      transformXSLT.async = false;
      transformXSLT.load(this.transformFile);
    
      // Set the innerHTML of the results area to the output of the transformation.
      var resultsArea = document.getElementById("results");
      resultsArea.innerHTML = dataXml.transformNode(transformXSLT);
     }
    
    }
    
  • CSS Web リソース: sample_/ImportWebResources/CSS/Styles.css

    body
    {
        font-family: Calibri;
    }
    table
    {
        border: 1px solid gray;
        border-collapse: collapse;
    }
    th
    {
        text-align: left;
        border: 1px solid gray;
    }
    td
    {
        border: 1px solid gray;
    }
    

関連項目

Microsoft Dynamics 365 の Web リソース
Webpage (HTML) の Web リソース
CSS Web リソース
スクリプト (JScript) Web リソース
データ (XML) Web リソース
画像 (JPG、PNG、GIF、ICO) の Web リソース
Silverlight (XAP) の Web リソース

Microsoft Dynamics 365

© 2017 Microsoft. All rights reserved. 著作権