Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Ничего не могу понять! / 15 сообщений из 15, страница 1 из 1
12.12.2005, 11:13
    #33430032
efiml
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Надо сформировать ХМL с русскими именами тэгов.
Использую ХМL - шаблон с XSL
<?xml version="1.0" encoding="windows-1251"?>
<КСвЗУВл xmlns:sql="urn:schemas-microsoft-com:xml-sql"
sql:xsl='land.xsl'>
<sql:header>
<sql:param name='flt'></sql:param>
</sql:header>
<sql:query>
select * from Служебная_инф_земля for xml auto, elements
</sql:query>
</КСвЗУВл>

XSL
<?xml version='1.0' encoding="windows-1251" ?>
<xsl:stylesheet xmlns:xsl= 'http://www.w3.org/1999/XSL/Transform'
version='1.0' >
<xsl:output method="xml"/>
<xsl:template match="/">
<?xml version="1.0" encoding="windows-1251" ?>
<КСвЗУВл>
<xsl:for-each select="/КСвЗУВл/Служебная_инф_земля">
<СлЧаст>
<ОбщСвСЧ>
<ИдФайл>
<ДатаФ>
<xsl:value-of select="ДатаФ"/>
</ДатаФ>
<Гуид>
<xsl:value-of select="Гуид"/>
</Гуид>
</ИдФайл>
<ТипИнф>
<xsl:value-of select="ТипИнф"/>
</ТипИнф>
<ВерсФор>
<xsl:value-of select="ВерсФор"/>
</ВерсФор>
<НаимПол>
<xsl:value-of select="НаимПол"/>
</НаимПол>
<ИдПол>
<xsl:value-of select="ИдПол"/>
</ИдПол>
<ВерсПрог>
<xsl:value-of select="ВерсПрог"/>
</ВерсПрог>
<ДатаСв>
<xsl:value-of select="ДатаСв"/>
</ДатаСв>
</ОбщСвСЧ>
</СлЧаст>
</xsl:for-each>
</КСвЗУВл>
</xsl:template>
</xsl:stylesheet>

При запуске в IE выходит сообщение:
The XML page cannot be displayed
Cannot view XML input using style sheet. Please correct the error and then click the Refresh button, or try again later.
System does not support the specified encoding. Error processing resource 'http://halflife/virt/templ/land.xml?flt=41'. Li...

<?xml version="1.0" encoding="utf-8"?>

Откуда utf-8, когда у меня windows-1251?
...
Рейтинг: 0 / 0
12.12.2005, 11:21
    #33430057
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
XSL
<?xml version='1.0' encoding="windows-1251" ?>
<xsl:stylesheet xmlns:xsl= 'http://www.w3.org/1999/XSL/Transform'
version='1.0' >
<xsl:output method="xml"/>
<xsl:template match="/">
<?xml version="1.0" encoding="windows-1251" ?>
...
...
Рейтинг: 0 / 0
12.12.2005, 12:22
    #33430222
M0us
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
по дефаулту SQLXML работает в кодировке UTF-8 (в том числе методы GET и POST).

как jimmers заметил
после строки
Код: plaintext
1.
<xsl:template match="/">
не нужно
Код: plaintext
<xsl:output method="xml"/>

в xsl поставьте
Код: plaintext
<xsl:output method="xml" encoding="windows-1251"/>

и еще... я конечно не уверен, и меня радуют названия tables на русском языке, но может быть лучше написать [Служебная_инф_земля] в квадратных скобках
...
Рейтинг: 0 / 0
13.12.2005, 02:59
    #33431838
efiml
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Исправил все как советовали, но результат не изменился
...
Рейтинг: 0 / 0
13.12.2005, 10:16
    #33432159
M0us
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
1 - попробуй кодировку utf-16

если не пройдет, то по шагам: отключи - xsl и проверь - возвращается ли без шаблона?
если да, то будем искать ошибку в xsl
иначе, - по ситуации...
...
Рейтинг: 0 / 0
13.12.2005, 12:03
    #33432559
джиммерс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Лучше привести XML и XSLT снова полностью в приложении (ZIP).
...
Рейтинг: 0 / 0
14.12.2005, 08:51
    #33434721
efiml
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Записал все в land.rar. Таблицу SQL перевел в dbf
...
Рейтинг: 0 / 0
14.12.2005, 23:43
    #33436911
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Добрый ночи

Вообще-то вопрос специфичен для SQL Server, поэтому лучше бы его в форуме SQL Server задать.

Удачи
...
Рейтинг: 0 / 0
15.12.2005, 09:46
    #33437171
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Пытаюсь импортировать DBF файл - вылетает по ошибке, что таблица служебная_инф_земля не найдена. Как вы получили этот DBF?
...
Рейтинг: 0 / 0
15.12.2005, 10:02
    #33437209
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Вот с такими XML и XSLT вроде работает, но ввиду отсутствия таблицы я не могу проверить полностью. Приведите DDL для создания таблицы.

XML
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
<?xml version="1.0" encoding="windows-1251"?>
<КСвЗУВл xmlns:sql="urn:schemas-microsoft-com:xml-sql" sql:xsl="land.xsl">
	<sql:header>
		<sql:param name="flt"/>
	</sql:header>
	<sql:query>select * from [Служебная_инф_земля] for xml auto, elements</sql:query>
</КСвЗУВл>

XSLT
Код: 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.
<?xml version='1.0' encoding="windows-1251" ?>
<xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform' 
   version='1.0' >
   <xsl:output method="xml" encoding="windows-1251"/>
  <xsl:template match="/">
   <КСвЗУВл>
   <xsl:for-each select="/КСвЗУВл/Служебная_инф_земля"> 
    <СлЧаст>
     <ОбщСвСЧ>
      <ИдФайл>
       <ДатаФ>
         <xsl:value-of select="ДатаФ"/>  
       </ДатаФ>
       <Гуид>
         <xsl:value-of select="Гуид"/>  
       </Гуид>
      </ИдФайл>
      <ТипИнф>
        <xsl:value-of select="ТипИнф"/>   
      </ТипИнф>
      <ВерсФор>
        <xsl:value-of select="ВерсФор"/>   
      </ВерсФор>
      <НаимПол>
        <xsl:value-of select="НаимПол"/>   
      </НаимПол>
      <ИдПол>
        <xsl:value-of select="ИдПол"/>  
      </ИдПол>
      <ВерсПрог>
        <xsl:value-of select="ВерсПрог"/>   
      </ВерсПрог>
      <ДатаСв>
        <xsl:value-of select="ДатаСв"/>   
      </ДатаСв>
     </ОбщСвСЧ>
    </СлЧаст>
   </xsl:for-each> 
   </КСвЗУВл>
  </xsl:template>
</xsl:stylesheet>
...
Рейтинг: 0 / 0
16.12.2005, 01:45
    #33439552
efiml
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Большое спасибо, jimmers!
Все прошло.
Dbf я получил через SQLEXEC
...
Рейтинг: 0 / 0
16.12.2005, 12:19
    #33440351
джиммерс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
SQLEXEC - это как?
...
Рейтинг: 0 / 0
16.12.2005, 12:32
    #33440417
qu-qu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
джиммерс SQLEXEC - это как?

В среде VFP вызывает SQLEXEC, получает из него курсор и сохраняет на диске как dbf (насколько я понимаю).
...
Рейтинг: 0 / 0
16.12.2005, 22:38
    #33442067
jimmers
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
Я всё понимаю, но с Foxpro я последний раз работал году в 1998, в институте...
Так что недурно написать детали...
...
Рейтинг: 0 / 0
19.12.2005, 02:00
    #33443234
efiml
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ничего не могу понять!
nConnHand=SQLCONNECT('sqlserver') && Подключяюсь к базе (sqlserver -имя ODBC)
=SQLEXEC(nConnHand,"select * from [Служебная_инф_земля]",'cur_land') && перевожу таблицу Sql Server в курсор Visual FoxPro
select cur_land
copy to land && копирую курсор в dbf
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Ничего не могу понять! / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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