powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Помогите найти самый легкий способ редартирования xml файла.
5 сообщений из 5, страница 1 из 1
Помогите найти самый легкий способ редартирования xml файла.
    #37995521
катабака
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Постараюсь подробно описать проблему:
Есть интернет магазин, цены которого регулируются в cms. Любой каталог и подкаталог, и подподкаталог можно выгрузить в xml.
Передо мной стоит задача поднять цену, которая стоит между <price>470</price> на 5%.
И добавить оптовую цену которая должна быть между <price1>0</price1> , сейчас она стоит ноль, так как магазин не планировал торговать оптом. т. е. от этой цены отнять 10%.
Открываю файл через Excel, добавляю формулу, всё отлично, но не могу сохранить. Пишет что карты не предназначены для экспорта.
Контора которая делала сайт говорит, что нужно заходить в каждый товар и изменять цены в ручную, а также добавлять в ручную оптовую цену.
Я для примера выгрузил подкаталог с 3 позициями товара, но на самом деле нужно отредактировать каталог где 1600 товаров.
Моих знаний не достаточно для решения этой проблемы, хотя интуитивно кажется что есть.
Может быть есть какие то программы для редактирования xml по типу Excel, что можно было написать формулу, и растянуть?
Помогите пожалуйста!
Пример файла.

автор<?xml version="1.0" encoding="utf-8" ?>
- <eshop id="10007493">
- <cat>
<parent>10011541</parent>
<uid>00010012120</uid>
<title>Мерцана Детский Поплин</title>
<descr />
<link> http://домен/store/10011158/10011541/10012120/</link>
- <positions>
- <pos>
<uid>00010109490</uid>
<title>Зайки Комплект постельного белья Детский Поплин Мерцана (Россия)</title>
<price>470</price>
<price1>0</price1>
<price2>0</price2>
<currency>1</currency>
<amount_left>0</amount_left>
<producer>Мерцана</producer>
<descr />
<link> http://домен/store/10011158/10011541/10012120/?pos=10109490</link>
</pos>
- <pos>
<uid>00010109491</uid>
<title>Мишки Комплект постельного белья Детский Поплин Мерцана (Россия)</title>
<price>470</price>
<price1>0</price1>
<price2>0</price2>
<currency>1</currency>
<amount_left>0</amount_left>
<producer>Мерцана</producer>
<descr />
<link> http://домен/store/10011158/10011541/10012120/?pos=10109491</link>
</pos>
- <pos>
<uid>00010109492</uid>
<title>Собачки Комплект постельного белья Детский Поплин Мерцана (Россия)</title>
<price>470</price>
<price1>0</price1>
<price2>0</price2>
<currency>1</currency>
<amount_left>0</amount_left>
<producer>Мерцана</producer>
<descr />
<link> http://домен/store/10011158/10011541/10012120/?pos=10109492</link>
</pos>
</positions>
</cat>
</eshop>
...
Рейтинг: 0 / 0
Помогите найти самый легкий способ редартирования xml файла.
    #37995588
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если вы можете в табличном виде вывести данные в эксель, то его возможностей достаточно.
Выполните действия (эксель 2007 и выше): панель "разработчик" (возможно она скрыта, нужно открыть в настройках) - Источник - Карты XML - Добавить

Этот текст сохранить в файл с расширением xsd и добавить получившийся файл:
Код: xml
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.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:element name="eshop">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="cat">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="parent" type="xs:unsignedInt" />
							<xs:element name="uid" type="xs:string" />
							<xs:element name="title" type="xs:string" />
							<xs:element name="descr"  type="xs:string"/>
							<xs:element name="link" type="xs:string" />
							<xs:element name="positions">
								<xs:complexType>
									<xs:sequence>
										<xs:element maxOccurs="unbounded" name="pos">
											<xs:complexType>
												<xs:sequence>
													<xs:element name="uid" type="xs:string" />
													<xs:element name="title" type="xs:string" />
													<xs:element name="price" type="xs:double" />
													<xs:element name="price1" type="xs:double" />
													<xs:element name="price2" type="xs:double" />
													<xs:element name="currency" type="xs:unsignedByte" />
													<xs:element name="amount_left" type="xs:nonNegativeInteger" />
													<xs:element name="producer" type="xs:string" />
													<xs:element name="descr" type="xs:string" />
													<xs:element name="link" type="xs:string" />
												</xs:sequence>
											</xs:complexType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
			<xs:attribute name="id" type="xs:unsignedInt" use="required" />
		</xs:complexType>
	</xs:element>
</xs:schema>

В окошке справа появится дерево элементов. Нужно перетащить мышкой из элемента pos каждую из веток uid, title и т.д. на заголовок соответствующей колонки таблицы. После этого сохранение в xml будет работать.
...
Рейтинг: 0 / 0
Помогите найти самый легкий способ редартирования xml файла.
    #37995598
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В остальные элемены (cat/parent, cat/title и т.д.) данные придется занести вручную, но это уже ерунда.
...
Рейтинг: 0 / 0
Помогите найти самый легкий способ редартирования xml файла.
    #37996333
mage.lan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катабака,

можно xsl-ку написать, которая пролетит по вашему xml и подредактирует нужные теги...
можно sublim text 2 взять и регулярками и/или макросами все поправить.

но везде достаточно высокий порог вхождения, для такой задачи.
лучше все же с Excel разобраться, если вы в него все загрузили.
...
Рейтинг: 0 / 0
Помогите найти самый легкий способ редартирования xml файла.
    #37996496
катабака
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за оперативные ответы. Буду разбираться.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Помогите найти самый легкий способ редартирования xml файла.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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