powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Группировка Help!!
16 сообщений из 16, страница 1 из 1
Группировка Help!!
    #35339195
rdfg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет. Не поможете с проблемой.
Ести 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
Группировка Help!!
    #35339320
rdfg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл добавить. Через XSLT шаблон
...
Рейтинг: 0 / 0
Группировка Help!!
    #35340233
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
первым делом надо написать результат преобразования
...
Рейтинг: 0 / 0
Группировка Help!!
    #35340258
rdfg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так ведь результат который хочу достичь представлен на картинке.
Или в XML виде както ??
...
Рейтинг: 0 / 0
Группировка Help!!
    #35340265
rdfg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати статически написать типа ss:MergeDown="1" не пойдет, т.к. изначально не
известно сколько ячеек вниз объединять. Например тотже Mercedes мог бы и с 4 цветами.
...
Рейтинг: 0 / 0
Группировка Help!!
    #35340272
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XSLT преобразует один XML документ в другой. Исходный документ Вы опубликовали, теперь осталось показать, что Вы хотите получить на выходе

С уважением, Vasilisk
...
Рейтинг: 0 / 0
Группировка Help!!
    #35340410
rdfg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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
Группировка Help!!
    #35340420
rdfg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:) Хочу такую. только динамически объединение мутить. Остальное все вода, просто все в кучу
скинул. (Это мне Excel выдал)
...
Рейтинг: 0 / 0
Группировка Help!!
    #35340424
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ты уверен что хочешь получить именно это?
По виду exel'евская табличка.
Напиши приведенную табличку на картинке в html !
тогда поможем ,а в эксель сам перегонай
...
Рейтинг: 0 / 0
Группировка Help!!
    #35340452
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечный вид будет вот такой:
Код: 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
Группировка Help!!
    #35340491
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как группировать, обсуждалось, считать можно count'ом
...
Рейтинг: 0 / 0
Группировка Help!!
    #35340513
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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
Группировка Help!!
    #35340577
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:) вот когда вопросы писать надо. все любители/профессионалы здесь.
maXmo -привет. ты же в состоянии был код написать, чего отделался мелкой подсказкой?
_Vasilisk_ - привет. че то на xmlhack дано вопросов никаких не видно, он вообще живой?
...
Рейтинг: 0 / 0
Группировка Help!!
    #35340630
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SuSa_Vasilisk_ - привет. че то на xmlhack дано вопросов никаких не видно, он вообще живой?
Живой. Периодически появляются. Последнее сообщение от 26 мая
...
Рейтинг: 0 / 0
Группировка Help!!
    #35341218
rdfg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Черт.. как то не понятно с итерацией
Я на C# циклами строки сгенерил :)
...
Рейтинг: 0 / 0
Группировка Help!!
    #35341229
rdfg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо за внимание!
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Группировка Help!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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