|
|
#1 |
|
Участник
|
Проблема с сохранением XML
Формирую XML, используя классы XMLDocument и XMLElement .
За пример брал класс InventJournalData_Loss_RU XML сформировал PHP код:
ругается .: Цитата:
Метод 'save' в COM-объекте класса 'microsoft.xmldom' возвратил код ошибки 0x80004005 (E_FAIL), который означает: Unable to save character to 'iso-8859-1' encoding.
Но к сожалению, не нашел у класса метода его выставляющего , и на сайте. Подскажите, пожалуйста как обойти проблему.. |
|
|
|
|
#2 |
|
Moderator
|
Вот это (http://www.adem.karavaevo.ru/index.p...id=77&Itemid=2) работает ?
|
|
|
|
|
#3 |
|
Участник
|
Приведенный Вами пример работает.
А мой нет. =( Работающий пример PHP код:
Мой, не работающий ... PHP код:
|
|
|
|
|
#4 |
|
Moderator
|
Аксапты у меня нет
, так что ничем, к сожалению, помочь пока не могу.Единственное, что в заголовке XML документа, можно указать кодировку документа. То есть, вместо имющегося: PHP код:
PHP код:
Как это достигается в Аксапте, к сожалению не помню. Если совсем ни как - смогу посмореть в выходные. |
|
|
|
|
#5 |
|
Участник
|
Спасибо!
Попробую еще попробовать выставить еncoding "вручную" =) Если получится - то сообщу, иначе считайте что не справился пока. Еще раз спасибо. |
|
|
|
|
#6 |
|
Участник
|
Проблема именно в кодировке. (что в принципе и следовало из сообщения =)) )
Попробовал вместо реальных данных подставить английские буквы - все сохранилось. Так что вопрос сужается до следующего: Как выставить в формируемом xml нужную кодировку ? |
|
|
|
|
#7 |
|
сибиряк
|
Цитата:
Изначально опубликовано ATimTim
Так что вопрос сужается до следующего: Как выставить в формируемом xml нужную кодировку ? ![]() PHP код:
__________________
С уважением, Вячеслав. |
|
|
|
|
#8 |
|
Участник
|
2ATimTim
Именно аттрибутом encoding и выставить. Зайдите в XMLDocument::newBlank() и найдите строку
PHP код:
|
|
|
|
|
#9 |
|
Участник
|
Спасибо всем.
Изменил кодировку прямо в классе. |
|
|
|
|
#10 |
|
Moderator
|
А я бы отнаследовал
|
|
|
|
|
#11 |
|
Участник
|
А я изменил =)
|
|
|
|
|
#12 |
|
Moderator
|
Ну, ваше дело.
Хотя про это, кажется, написано в Best Practices и даже есть вопрос такой на экзаменах. Ну, и вообще, отнаследоваться было бы безопаснее Во-первых, может существовать стандартный функционал, написанный с расчетом на получение encoding=1251. Во-вторых, если вам понадобится xml в еще одной (третьей) кодировке - вы опять этот класс править полезете ?
|
|
|
|
|
#13 |
|
Участник
|
Полностью с Вами согласен.
|
|
|
|
|
#14 |
|
Участник
|
Цитата:
Изначально опубликовано slava
Вот кусочек рабочего кода ![]() PHP код:
PHP код:
Что меня смущает в этом вопросе: неужели до сих пор в стандартной функциональности Axapta не реализовано такого класса. Хотя, я не исключаю, что мне об этом просто не известно. Буду краней признателен за подсказку в этом вопросе, поскольку у меня стойкое ощущение, что мною был только что снова изобретен велосипед.
|
|
|
|
|
#15 |
|
Участник
|
st_msav
Как ощущается в роли Творца? (вопрос риторический
) Буржуи они, наплевать им на windows-1251. ИМХО, будет работать и с ISO-8859-1, если ее установить в системе
|
|
|
|
|
#16 |
|
Участник
|
Re: st_msav
Цитата:
Изначально опубликовано maximus
Как ощущается в роли Творца? (вопрос риторический ) Буржуи они, наплевать им на windows-1251. ИМХО, будет работать и с ISO-8859-1, если ее установить в системе
|
|
|
|
|
#17 |
|
Участник
|
можно сначала попробовать document.loadXML("<?xml version=\"1.0\" encoding='windows-1251'?><BranchCompany/>"
; а затем уже работать с тем, что получилось
|
|
|
|
|
#18 |
|
Участник
|
Цитата:
Изначально опубликовано belugin
можно сначала попробовать document.loadXML("<?xml version=\"1.0\" encoding='windows-1251'?><BranchCompany/>" ; а затем уже работать с тем, что получилось
А тем более, что мне еще нужно отсылать XML в виндовой кодировке "наружу".
|
|
|
|
|
#19 |
|
Участник
|
я имел ввиду:
PHP код:
|
|
|
|
|
#20 |
|
Участник
|
Я может чего не понимаю, но при чем тут запись документа в определенной кодировке и метод loadXML?! Мне, например, нужно не читать XML а Аксапте, а формировать их из Аксапты для внешних приложений.
|
|
|