Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Вниз

TWebBrowser + XML + XSL   Найти похожие ветки 

 
DmitryK   (2006-07-17 14:48) [0]

Мне нужно отформатировать XML документ с помощью XSL и показать результат в TWEbBrowser. XSL находится в отдельном
файле, в IE все работает, а вот в TWebBrowser не форматирует.

Из-за чего может не получаться? Спасибо.


 
Медвед   (2006-07-17 15:05) [1]

wb.Navigate(xml.transformNode(xsl.selectSingleNode("//xsl:stylesheet")));


 
DmitryK   (2006-07-17 15:14) [2]

Можешь меня поправить.

Вот фрагмент кода. Мне не понятно, что такое xsl. Как его проинициализировать?

var
 xml: IXMLDOMDocument;
begin
 xml := CoDOMDocument.Create;
 try
    if OpenDialog1.Execute then
      xml.loadXML(OpenDialog1.FileName);

    wb.Navigate(xml.transformNode(xsl.selectSingleNode("//xsl:stylesheet")));
 finally
   xml := nil;
 end;
end;


 
имя   (2006-07-17 15:15) [3]

Удалено модератором
Примечание: Ник смени


 
DmitryK   (2006-07-17 15:26) [4]

Вот код.

var
 xml, xsl: IXMLDOMDocument;

begin
 xml := CoDOMDocument.Create;
 xsl := CoDOMDocument.Create;
 try

    if OpenDialog1.Execute then
     xml.loadXML(OpenDialog1.FileName);
    if OpenDialog1.Execute then
     xsl.loadXML(OpenDialog1.FileName);
    wbGeneralData.Navigate(xml.transformNode(xsl.selectSingleNode("//xsl:stylesheet")));
 finally
   xsl := nil;
   xml := nil;
 end;


end;

Вот XSL файл.

<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
 <h2>Bug Manager</h2>
 <h3>import file from <xsl:value-of select="ALL/TBugExpImp/UserExp"/></h3>
 <h3>date <xsl:value-of select="ALL/TBugExpImp/DataExp"/></h3>
 <br></br>
 <table border="1">
   <tr bgcolor="#CCCCCC">
     <td align="Left"><strong> SoftWare  </strong></td>
     <td align="Left"><strong> Subject  </strong></td>
     <td align="Left"><strong> Bug status  </strong></td>
   </tr>
   <xsl:for-each select="ALL/TBugExpImp/BugsList/TBug">
     <tr bgcolor="#F5F5F5">
       <td><xsl:value-of select="SoftWare/SoftName"/></td>
       <td align="left"><xsl:value-of select="BugSubject"/></td>
       <td><xsl:value-of select="Status/StatusName"/></td>
     </tr>
     <tr></tr>  
   </xsl:for-each>
 </table>
</xsl:template>
</xsl:stylesheet>


Вот кусок XML файла.



<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/xsl" href="bugs.xsl"?>
<ALL><TBugExpImp><DataExp>38915.5964351736</DataExp><UserExp>admin</UserExp><BugsList><TBug><Nr>76</Nr><BugSubject>Не добавляються новые манданты</BugSubject><Module>Манданты</Module><Status><Nr>3</Nr><StatusName>Fixed</StatusName></Status><Category><CatName>Bug</CatName><IsStandard>True</IsStandard></Category><SoftWare><SoftName>AsuMed</SoftName></SoftWare><Noticed><UserName>DK</UserName><CanLogin>True</CanLogin><UserGroup><Nr>3</Nr><USName>Programmers</USName></UserGroup></Noticed><Date>38615</Date><MVersion>0</MVersion><SVersion>0</SVersion><BVersion>1</BVersion><Fixed_bug>1</Fixed_bug><Fixed><UserName>vk</UserName><CanLogin>True</CanLogin><UserGroup><Nr>1</Nr><USName>Administrator</USName></UserGroup></Fixed><FixedOn>38616</FixedOn><FixMVersion>0</FixMVersion><FixSVersion>0</FixSVersion><FixBVersion>1</FixBVersion><Solve><UserName>Not set</UserName><CanLogin>False</CanLogin><UserGroup><Nr>0</Nr><USName>Not set</USName></UserGroup></Solve><WishedPriority><PriorName>Immediatelly</PriorName><IsStandard>True</IsStandard></WishedPriority><DefinedPriority><PriorName>Not set</PriorName><IsStandard>True</IsStandard></DefinedPriority><SolveMVersion>0</SolveMVersion><SolveSVersion>0</SolveSVersion><SolveBVersion>1</SolveBVersion><Checked_bug>0</Checked_bug><Checked><UserName>Not set</UserName><CanLogin>False</CanLogin><UserGroup><Nr>0</Nr><USName>Not set</USName></UserGroup></Checked><CheckedOn>0</CheckedOn><CheckedMVersion>0</CheckedMVersion><CheckedSVersion>0</CheckedSVersion><CheckedBVersion>0</CheckedBVersion></TBug></BugsList></TBugExpImp></ALL>



В итоге получается ошибка.

"Ошибка в элементе верхнего уровня!"


 
имя   (2006-07-17 15:29) [5]

Удалено модератором


 
DmitryK   (2006-07-17 15:32) [6]

Ошибка в методе navigate.

Большое спасибо за помощь.


 
имя   (2006-07-17 15:43) [7]

Удалено модератором



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.036 c
3-1150786225
zdm
2006-06-20 10:50
2006.08.27
Вставка значения в поле с зарезервированным именем(SUM)


15-1153207818
novoalex
2006-07-18 11:30
2006.08.27
FreeBSD


3-1150871662
Дима80
2006-06-21 10:34
2006.08.27
Удалить индекс из таблицы DBF


15-1154501290
vidiv
2006-08-02 10:48
2006.08.27
Русская ISA Server 2004


15-1154071589
IceBeerg
2006-07-28 11:26
2006.08.27
Во! Незнал.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский