Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > XML, XSL > отчеты для MS & OOffice в XML+XSL


Автор: zloyGamer 8.7.2009, 20:34
скажите как формировать отчеты с шаблона для офисов?
вот от суда взял примерчик: http://www.w3schools.com/xsl/xsl_w3celementref.asp
для краткости вот он:

catalog.xml:
Код

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="catalog.xsl"?>
<catalog>
   <cd>
      <title>Empire Burlesque</title>
      <artist>Bob Dylan</artist>
      <country>USA</country>
      <company>Columbia</company>

   </cd>
</catalog>


catalog.xsl:
Код

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
  <body>
    <h2>My CD Collection</h2>
    <table border="1">
      <tr bgcolor="#9acd32">
        <th>Title</th>
        <th>Artist</th>
      </tr>
      <tr>
        <td><xsl:value-of select="catalog/cd/title" /></td>
        <td><xsl:value-of select="catalog/cd/artist" /></td>
      </tr>
    </table>
  </body>

  </html>
</xsl:template>
</xsl:stylesheet>

и в IE6.0 и в MS excell оно нормально открывается, хотя в MS ещёраз надо указать шаблон catalog.xsl,
а вот в OpenOffice 3 что то не за ладилось...,
возникает сомнение и вопрос - вообще такое возможно в Office'ских программах?
или я просто что то не так делаю?

как вы формируете отчеты для Offico'в ?

Автор: jsa 9.7.2009, 10:53
Цитата(zloyGamer @  9.7.2009,  01:34 Найти цитируемый пост)
а вот в OpenOffice 3 что то не за ладилось...

и что именно?
Код

<html>
    <body>
        <h1>
            test
        </h1>
        
        <table border="1">
            <tr>
                <th>sdsdf</th>
                <th>dfsdf</th>
            </tr>
            <tr>
                <td>
                    121212
                </td>
                <td>34234</td>
            </tr>
        </table>
    </body>
</html>

у меня ОО (calc) отлично все распознал

Автор: zloyGamer 9.7.2009, 14:46
Код

и что именно?
у меня ОО (calc) отлично все распознал

что у тебя за версия ОО? 
у меня такое не прокатывает, он почемуто пытается сделать импорт текста из него(см рисунок)
также МS office по умолчанию пытается открыть его как набор данных...

как сделать/что записать в xml'ках чтоб все офисы нормально их воспринимали?? 

Автор: jsa 10.7.2009, 04:41
дык, зачем офису отдовать xml, сделай преобразование, и отдовай html
calc и excel отлично понимают

Автор: zloyGamer 10.7.2009, 08:14
но в html  нельзя указать где будет разрыв страницы, и какой формат , если можно то как?

и как програмно генерить html'ки из моего xml и xls? 
чтоб у конечного пользователя сразу запускался ексель, или ворд?

Автор: jsa 10.7.2009, 08:45
Цитата(zloyGamer @  10.7.2009,  13:14 Найти цитируемый пост)
но в html  нельзя указать где будет разрыв страницы, и какой формат , если можно то как?

оформи в екселе документ, со всеми разрывами  и т.п. сохрани его как xhtml, открой в редакторе, посмотри че тебе ексель сгенерил - сделай подобное

Цитата(zloyGamer @  10.7.2009,  13:14 Найти цитируемый пост)
и как програмно генерить html'ки из моего xml и xls? 

для этого и существуют xslt-процессоры, во большинстве ЯП существует поддержка
Цитата(zloyGamer @  10.7.2009,  13:14 Найти цитируемый пост)
чтоб у конечного пользователя сразу запускался ексель, или ворд? 

выставляй соответсвующие хеадеры, например
Код

Content-Type: application/vnd.ms-excel

а содержимое выводи как html

Автор: zloyGamer 10.7.2009, 09:35
спасибо огромное!! 
если все так просто то думаю дальше только дело времени, буду эксперементировать...

Автор: jsa 10.7.2009, 10:21
Цитата(zloyGamer @  10.7.2009,  14:35 Найти цитируемый пост)
если все так просто то думаю дальше только дело времени, буду эксперементировать...

 smile на самом деле все не так просто, везде есть свои подводные камни, обойти которые поможет опыт и знания... так что дерзай, как говориться все в наших руках

Автор: zloyGamer 10.7.2009, 16:07
да я уже кое что заметил..., 
разметка и формат страницы которую сохраняет MSexcell в html'е понимает только MSexcell, OOcalc открывает его как обычную html'ку, такчто с html'ем ничего не получится.., 
а вот если в MSexcell схранять в xml то OOcalc нормально открывает но изменения которые он сохраняет почемуто они оба криво потом открывают  smile 

но мне пока достаточно того что первоначально одну и туже xml'ку они одинаково отображают - такчто буду пока бороться с xml..
возможно потом появятся ещё какие варианты... но возможно они уже будут не актуальны ))

ещё раз спасибо, ты мне оч. помог!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)