powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / навигация по xml-документу
6 сообщений из 6, страница 1 из 1
навигация по xml-документу
    #34130602
NNika
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть такой Xml
Код: 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.
<xml xmlns:x="urn:schemas-microsoft-com:office:excel">
  <x:PivotTable>
    <x:OWCVersion> 10 . 0 . 0 . 5851  </x:OWCVersion>
    <x:NoDisplayToolbar/>
    <x:DisplayScreenTips/>
    <x:CubeProvider>msolap. 2 </x:CubeProvider>
    <x:CacheDetails/>
    <x:ConnectionString>Provider=MSOLAP. 2 ;Integrated Security=SSPI;Persist Security Info=True;SSPI=anonymous;Data Source=http:// 10 . 80 . 26 . 149 ;Initial Catalog=Nsk;Client Cache Size= 25 ;Auto Synch Period= 10000 ;Safety Options= 1 </x:ConnectionString>
    <x:DataMember>Погрузка</x:DataMember>
    <x:Name>Погрузка по дороге</x:Name>
    <x:PivotField>
      <x:Name>Гр1</x:Name>
      <x:SourceName>[Гр].[Гр1]</x:SourceName>
      <x:FilterCaption>Гр</x:FilterCaption>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Гр2</x:Name>
      <x:SourceName>[Гр].[Гр2]</x:SourceName>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Гр3</x:Name>
      <x:SourceName>[Гр].[Гр3]</x:SourceName>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Гр4</x:Name>
      <x:SourceName>[Гр].[Гр4]</x:SourceName>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Груз1</x:Name>
      <x:SourceName>[Груз].[Груз1]</x:SourceName>
      <x:FilterCaption>Груз</x:FilterCaption>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Груз2</x:Name>
      <x:SourceName>[Груз].[Груз2]</x:SourceName>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Год</x:Name>
      <x:SourceName>[Дата].[Год]</x:SourceName>
      <x:FilterCaption>Дата</x:FilterCaption>
      <x:CompareOrderedMembersBy>Name</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Месяц</x:Name>
      <x:SourceName>[Дата].[Месяц]</x:SourceName>
      <x:CompareOrderedMembersBy>Name</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>День</x:Name>
      <x:SourceName>[Дата].[День]</x:SourceName>
      <x:CompareOrderedMembersBy>Name</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Отправитель</x:Name>
      <x:SourceName>[Отправитель].[Отправитель]</x:SourceName>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>РПС1</x:Name>
      <x:SourceName>[РПС].[РПС1]</x:SourceName>
      <x:FilterCaption>РПС</x:FilterCaption>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>РПС2</x:Name>
      <x:SourceName>[РПС].[РПС2]</x:SourceName>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Страна назн</x:Name>
      <x:SourceName>[Станция назн].[Страна назн]</x:SourceName>
      <x:FilterCaption>Станция назн</x:FilterCaption>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Дорога назн</x:Name>
      <x:SourceName>[Станция назн].[Дорога назн]</x:SourceName>
      <x:CompareOrderedMembersBy>UniqueName</x:CompareOrderedMembersBy>
    </x:PivotField>
      
  </x:PivotTable>
</xml>

C помощью javascript, мне надо добрать до последнего <x:PivotField> и получить значение
Код: plaintext
[Станция назн].[Дорога назн]
, если мне не известно заранее сколько <x:PivotField> содержит xml.
Вот.
...
Рейтинг: 0 / 0
навигация по xml-документу
    #34131483
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lastChild?
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
навигация по xml-документу
    #34131977
NNika
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Немного не то, а если есть ещё один <x:PivotField>, который лежит ниже? Может быть есть что-нибудь на подобие xPath в javascript? Мне бы хотелось написать универсальную программу, в которой нужно было бы указать только условие, по кторому и находится нужный тэг.
Ну, допоустим вот так:
Найти <x:PivotField>, в котором <x:Name>Страна назн</x:Name> . Если это делать с помощью XSL, то это просто, а как тоже самое сделать, но только средствами javascript?
Заранее спасибо за ответы.
...
Рейтинг: 0 / 0
навигация по xml-документу
    #34133182
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
/xml/x:PivotTable/x:PivotField[last()]/x:SourceName
но тег с именем xml по стандарту недопустим.
...
Рейтинг: 0 / 0
навигация по xml-документу
    #34144133
NNika
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за ответ.
У меня возник ещё один вопрос.
Если взять этот фрагмент:
Код: 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.
<xml xmlns:x="urn:schemas-microsoft-com:office:excel">
 <x:PivotTable>
 <x:PivotField>
      <x:Name>Год</x:Name>
      <x:SourceName>[Дата].[Год]</x:SourceName>
      <x:FilterCaption>Дата</x:FilterCaption>
      <x:CompareOrderedMembersBy>Name</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Месяц</x:Name>
      <x:SourceName>[Дата].[Месяц]</x:SourceName>
      <x:CompareOrderedMembersBy>Name</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>День</x:Name>
      <x:SourceName>[Дата].[День]</x:SourceName>
      <x:CompareOrderedMembersBy>Name</x:CompareOrderedMembersBy>
      <x:IncudedMember>
          <x:Name>  12 </x:Name>  
          <x:UniqueName>[Даты].[Все Даты].[ 2006 ].[November].[ 12 ]</x:UniqueName>      
     </x:IncudedMember>
    </x:PivotField>
 </x:PivotTable>
</xml>

Мне нужно обратиться к <x:PivotField>у которого есть элемент <x:IncudedMember>.
В зависимости от ситуации <x:IncudedMember> может содержатся как в 1-м, так и во 2-м и 3-м <x:PivotField>'е.
Если <x:IncudedMember> содержится во втором <x:PivotField>, то фрагмент выглядит так:
Код: 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.
<xml xmlns:x="urn:schemas-microsoft-com:office:excel">
 <x:PivotTable>
 <x:PivotField>
      <x:Name>Год</x:Name>
      <x:SourceName>[Дата].[Год]</x:SourceName>
      <x:FilterCaption>Дата</x:FilterCaption>
      <x:CompareOrderedMembersBy>Name</x:CompareOrderedMembersBy>
    </x:PivotField>
    <x:PivotField>
      <x:Name>Месяц</x:Name>
      <x:SourceName>[Дата].[Месяц]</x:SourceName>
      <x:CompareOrderedMembersBy>Name</x:CompareOrderedMembersBy>
        <x:IncudedMember>
          <x:Name> November</x:Name>  
          <x:UniqueName>[Даты].[Все Даты].[ 2006 ].[November]</x:UniqueName>      
        </x:IncudedMember>
    </x:PivotField>
    <x:PivotField>
      <x:Name>День</x:Name>
      <x:SourceName>[Дата].[День]</x:SourceName>
      <x:CompareOrderedMembersBy>Name</x:CompareOrderedMembersBy>
         </x:PivotField>
 </x:PivotTable>
</xml>
Как обратиться к <x:PivotField>у которого есть элемент <x:IncudedMember>, если позиция<x:IncudedMember> в документе не фиксированна ?
...
Рейтинг: 0 / 0
навигация по xml-документу
    #34145465
NNika
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос снят.
Всё тривиально.
Код: plaintext
selectSingleNode("xml/x:PivotTable/x:PivotField/x:IncludedMember/x:UniqueName");
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / навигация по xml-документу
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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