Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Группировка Help!! / 16 сообщений из 16, страница 1 из 1
28.05.2008, 09:46
    #35339195
rdfg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
Привет. Не поможете с проблемой.
Ести XML данные :
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
<tab>
<elementname>
	<notuniqueid>  1  </notuniqueid>
	<cname> bmw </cname>
	<color> white </color>
</elementname>
<elementname>
	<notuniqueid>  2  </notuniqueid>
	<cname> mercedes </cname>
	<color> black </color>
</elementname>
<elementname>
	<notuniqueid>  1  </notuniqueid>
	<cname> bmw </cname>
	<color> red </color>
</elementname>
</tab>

?
Как такую штуку сгруппировать по полю cname в excel?
Например: См приложение
...
Рейтинг: 0 / 0
28.05.2008, 10:25
    #35339320
rdfg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
забыл добавить. Через XSLT шаблон
...
Рейтинг: 0 / 0
28.05.2008, 14:18
    #35340233
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
первым делом надо написать результат преобразования
...
Рейтинг: 0 / 0
28.05.2008, 14:24
    #35340258
rdfg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
так ведь результат который хочу достичь представлен на картинке.
Или в XML виде както ??
...
Рейтинг: 0 / 0
28.05.2008, 14:27
    #35340265
rdfg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
кстати статически написать типа ss:MergeDown="1" не пойдет, т.к. изначально не
известно сколько ячеек вниз объединять. Например тотже Mercedes мог бы и с 4 цветами.
...
Рейтинг: 0 / 0
28.05.2008, 14:29
    #35340272
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
XSLT преобразует один XML документ в другой. Исходный документ Вы опубликовали, теперь осталось показать, что Вы хотите получить на выходе

С уважением, Vasilisk
...
Рейтинг: 0 / 0
28.05.2008, 15:07
    #35340410
rdfg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:o="urn:schemas-microsoft-com:office:office"
 xmlns:x="urn:schemas-microsoft-com:office:excel"
 xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:html="http://www.w3.org/TR/REC-html40">
 <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
  <Author>samoylenko</Author>
  <LastAuthor>samoylenko</LastAuthor>
  <Created> 2008 - 05 -28T11: 03 :44Z</Created>
  <Version> 12 . 00 </Version>
 </DocumentProperties>
 <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
  <WindowHeight> 8895 </WindowHeight>
  <WindowWidth> 14175 </WindowWidth>
  <WindowTopX> 360 </WindowTopX>
  <WindowTopY> 45 </WindowTopY>
  <RefModeR1C1/>
  <ProtectStructure>False</ProtectStructure>
  <ProtectWindows>False</ProtectWindows>
 </ExcelWorkbook>
 <Styles>
  <Style ss:ID="Default" ss:Name="Normal">
   <Alignment ss:Vertical="Bottom"/>
   <Borders/>
   <Font ss:FontName="Calibri" x:CharSet="204" x:Family="Swiss" ss:Size="11"
    ss:Color="#000000"/>
   <Interior/>
   <NumberFormat/>
   <Protection/>
  </Style>
  <Style ss:ID="s64">
   <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
  </Style>
 </Styles>
 <Worksheet ss:Name="Лист1">
  <Table ss:ExpandedColumnCount="3" ss:ExpandedRowCount="6" x:FullColumns="1"
   x:FullRows="1" ss:DefaultRowHeight="15">
   <Row ss:Index="4">
    <Cell ss:Index="2" ss:MergeDown="1" ss:StyleID="s64"><Data ss:Type="String">bmw</Data></Cell>
    <Cell><Data ss:Type="String">white</Data></Cell>
   </Row>
   <Row>
    <Cell ss:Index="3"><Data ss:Type="String">red</Data></Cell>
   </Row>
   <Row>
    <Cell ss:Index="2"><Data ss:Type="String">mercedes</Data></Cell>
    <Cell><Data ss:Type="String">black</Data></Cell>
   </Row>
  </Table>
  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
   <PageSetup>
    <Header x:Margin="0.3"/>
    <Footer x:Margin="0.3"/>
    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
   </PageSetup>
   <Print>
    <ValidPrinterInfo/>
    <PaperSizeIndex> 9 </PaperSizeIndex>
    <HorizontalResolution> 600 </HorizontalResolution>
    <VerticalResolution> 600 </VerticalResolution>
   </Print>
   <Selected/>
   <Panes>
    <Pane>
     <Number> 3 </Number>
     <ActiveRow> 5 </ActiveRow>
     <ActiveCol> 2 </ActiveCol>
    </Pane>
   </Panes>
   <ProtectObjects>False</ProtectObjects>
   <ProtectScenarios>False</ProtectScenarios>
  </WorksheetOptions>
 </Worksheet>
 <Worksheet ss:Name="Лист2">
  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
   x:FullRows="1" ss:DefaultRowHeight="15">
  </Table>
  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
   <PageSetup>
    <Header x:Margin="0.3"/>
    <Footer x:Margin="0.3"/>
    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
   </PageSetup>
   <ProtectObjects>False</ProtectObjects>
   <ProtectScenarios>False</ProtectScenarios>
  </WorksheetOptions>
 </Worksheet>
 <Worksheet ss:Name="Лист3">
  <Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="1" x:FullColumns="1"
   x:FullRows="1" ss:DefaultRowHeight="15">
  </Table>
  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
   <PageSetup>
    <Header x:Margin="0.3"/>
    <Footer x:Margin="0.3"/>
    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
   </PageSetup>
   <ProtectObjects>False</ProtectObjects>
   <ProtectScenarios>False</ProtectScenarios>
  </WorksheetOptions>
 </Worksheet>
</Workbook>
...
Рейтинг: 0 / 0
28.05.2008, 15:09
    #35340420
rdfg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
:) Хочу такую. только динамически объединение мутить. Остальное все вода, просто все в кучу
скинул. (Это мне Excel выдал)
...
Рейтинг: 0 / 0
28.05.2008, 15:11
    #35340424
SuSa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
ты уверен что хочешь получить именно это?
По виду exel'евская табличка.
Напиши приведенную табличку на картинке в html !
тогда поможем ,а в эксель сам перегонай
...
Рейтинг: 0 / 0
28.05.2008, 15:19
    #35340452
SuSa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
Конечный вид будет вот такой:
Код: plaintext
1.
2.
3.
<table border="1">
<tr><td rowspan="2">  1 </td><td> 1 </td></tr>
<tr><td> 2 </td></tr>
<tr><td> 3 </td><td> 3 </td></tr>
щас код наворганим
...
Рейтинг: 0 / 0
28.05.2008, 15:27
    #35340491
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
как группировать, обсуждалось, считать можно count'ом
...
Рейтинг: 0 / 0
28.05.2008, 15:33
    #35340513
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
  <xsl:template match="tab">
    <table border="1">
      <xsl:for-each select="elementname">
        <xsl:sort select="cname"/>
        <tr>
          <xsl:variable name="cname" select="cname"/>
          <xsl:if test="not(preceding-sibling::elementname[cname = $cname])">
            <td rowspan="{count(../elementname[cname = $cname])}">
              <xsl:value-of select="$cname"/>
            </td>
          </xsl:if>
          <td>
            <xsl:value-of select="color"/>
          </td>
        </tr>
      </xsl:for-each>
    </table>
  </xsl:template> 

С уважением, Vasilisk
...
Рейтинг: 0 / 0
28.05.2008, 15:53
    #35340577
SuSa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
:) вот когда вопросы писать надо. все любители/профессионалы здесь.
maXmo -привет. ты же в состоянии был код написать, чего отделался мелкой подсказкой?
_Vasilisk_ - привет. че то на xmlhack дано вопросов никаких не видно, он вообще живой?
...
Рейтинг: 0 / 0
28.05.2008, 16:06
    #35340630
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
SuSa_Vasilisk_ - привет. че то на xmlhack дано вопросов никаких не видно, он вообще живой?
Живой. Периодически появляются. Последнее сообщение от 26 мая
...
Рейтинг: 0 / 0
28.05.2008, 18:51
    #35341218
rdfg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
Черт.. как то не понятно с итерацией
Я на C# циклами строки сгенерил :)
...
Рейтинг: 0 / 0
28.05.2008, 18:55
    #35341229
rdfg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка Help!!
спасибо за внимание!
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Группировка Help!! / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]