AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.10.2009, 10:55   #1  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
? Ошибка XML в "Таблица" Причина: Ошибочное значение
Кто встречался с такой проблемой?

При нажатии на кнопку "Export to Microsoft Office Excel" (Spread Sheet) вываливается ошибка.

PHP код:
Ошибка XML в "Таблица"
Причина:    Ошибочное значение
Файл
:    C:\DOCUME~1\AXUSER~1\LOCALS~1\Temp\OWCSheet5216.XML
Группа
:    Cell
Тег
:    Data
Значение
:    0512-02-01

Ошибка XML в 
"Таблица"
Причина:    Ошибочное значение
Файл
:    C:\DOCUME~1\AXUSER~1\LOCALS~1\Temp\OWCSheet5216.XML
Группа
:    Cell
Тег
:    Data
Значение
:    0608-03-07 
Выгрузка данных в Office 2007 из Ax 3.0 SP6
Старый 08.10.2009, 11:10   #2  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
режет глаз отсутствие слэшей...

X++:
C:DOCUME~1AXUSER~1LOCALS~1TempOWCSheet5216.XML
Старый 08.10.2009, 11:32   #3  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
Цитата:
Сообщение от DSPIC Посмотреть сообщение
режет глаз отсутствие слэшей...

X++:
C:DOCUME~1AXUSER~1LOCALS~1TempOWCSheet5216.XML
Это глюк тегов [ PHP ] [ /PHP ] Все слеши слопали


Ошибка XML в "Таблица"
Причина: Ошибочное значение
Файл: C:\DOCUME~1\AXUSER~1\LOCALS~1\Temp\OWCSheet5216.XML
Группа: Cell
Тег: Data
Значение: 0512-02-01

Ошибка XML в "Таблица"
Причина: Ошибочное значение
Файл: C:\DOCUME~1\AXUSER~1\LOCALS~1\Temp\OWCSheet5216.XML
Группа: Cell
Тег: Data
Значение: 0608-03-07
Старый 08.10.2009, 11:43   #4  
Lemming is offline
Lemming
Участник
Аватар для Lemming
 
1,144 / 343 (14) ++++++
Регистрация: 20.04.2004
Адрес: Москва, Чайнатаун в Люблино
Записей в блоге: 10
Дата "0512-02-01" действительно похожа на ошибочную Возможно стоит поискать код, который генерит дату 512 года.
Старый 08.10.2009, 11:50   #5  
Alexx7 is offline
Alexx7
Сам.AX
Аватар для Alexx7
Самостоятельные клиенты AX
1C
 
305 / 28 (1) +++
Регистрация: 22.07.2009
Цитата:
Сообщение от Lemming Посмотреть сообщение
Дата "0512-02-01" действительно похожа на ошибочную Возможно стоит поискать код, который генерит дату 512 года.


Data - Данные
Date - Дата.
Это значение "0512-02-01" может быть всё что угодно.
Старый 08.10.2009, 11:53   #6  
Lemming is offline
Lemming
Участник
Аватар для Lemming
 
1,144 / 343 (14) ++++++
Регистрация: 20.04.2004
Адрес: Москва, Чайнатаун в Люблино
Записей в блоге: 10
Цитата:
Сообщение от Alexx7 Посмотреть сообщение
Это значение "0512-02-01" может быть всё что угодно.
Спасибо, возможно промахнулся. Ну тут уже автору темы виднее что это за значение. Но очень уж оно похоже на дату.

upd: Фрагмент экселевского XML-a <Cell ss:StyleID="s21"><Data ss:Type="DateTime">2001-10-05T00:00:00.000</Data></Cell>

Последний раз редактировалось Lemming; 08.10.2009 в 11:57.
Старый 08.10.2009, 12:09   #7  
Poleax is offline
Poleax
Модератор
Аватар для Poleax
MCP
MCBMSS
Злыдни
 
1,353 / 595 (22) +++++++
Регистрация: 17.02.2005
Адрес: msk
Записей в блоге: 34
Решение найдено.
Не смотря на следующий код, Excel сам переобразовал № договора = "0512/02" в дату. Игнорировав команду activeCell.NumberFormat("General"); (Формат пробовал разный)
X++:
 ....
  activeCell = xExcelSheetManager.selected(_currentRow, nextCol);
  activeCell.NumberFormat("General");
   .... 
  activeCell.formula(TurnoverVendEngineObject.dimensionName(iNum, sysDimNum));
  xExcelSheetManager.activeCell_fontItalic(_italic);
  xExcelSheetManager.activeCell_fontBold(_bold);
  ....
переписал строку

X++:
  activeCell.formula('\''+TurnoverVendEngineObject.dimensionName(iNum, sysDimNum));
Старый 08.10.2009, 16:45   #8  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,691 / 1195 (43) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
General - это формат "Общий". Т.е. фактически, вы предлагаете Excel самому определить какой формат у тех данных, которые он получает. Так что, все правильно. Просили определить, он и определяет в меру своего понимания.

Чтобы указать формат именно текстовый надо дать команду

X++:
activeCell.NumberFormat("@");
Ну, или как Вы и посутпили, подмешать первым символом какой-либо символ, который однозначно заставит Excel интерпретировать формат как текст.
Теги
excel, xml

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Закрытие склада - ошибка "Значение 1 не найдено в map" Artem Mikhailov DAX: Функционал 5 07.02.2009 13:27
Ошибка при выборе поля "подразделение" на форме Дима DAX: Программирование 5 01.10.2007 11:23
Ошибка "Значение <3> не найдено в MAP". Lysov DAX: Программирование 3 20.02.2007 18:24
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38
Ошибка "Memory could not be "read" kalex DAX: Администрирование 14 23.01.2003 12:54
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 12:31.