|
![]() |
#1 |
Участник
|
Владимир спасибо, что разъяснил.
Но все равно странно , если в excel в ячейку вбить дату (формат ячейки дата) 25.03.2015, и указать формат ячейки общий - то число будет - 42088. dateNull() + oxmlCell.getValue() = число 27.03.2015 Конечно можно отнимать 2 дня ))) но мне кажется это не есть гуд ) |
|
![]() |
#2 |
Участник
|
Нормально это. Вы же пытаетесь выполнить конвертацию из одной системы в другую. Без констант здесь не обойтись.
Для Axapta даты меньше 01.01.1900 - не существует. А что есть "базовая дата" для Excel - не известно. Очень сложно найти информацию по системным ограничениям Excel. Как следствие, остается только подгонка через константы. Кстати, скорее всего, "базовая дата" - это все-таки 31.12.1899. А еще 1 день - это результат округления при "переводе" типа Real в строку. Я имею в виду, что в Excel хранится дата вместе со временем. И время здесь больше полудня, что при округлении дает еще один дополнительный день. Попробуйте все-таки прочитать не строковую величину, а числовую. Для проверки, настройте формат отображения в ячейке Excel, чтобы видеть еще часть со временем. Подозреваю, что реально в ячейке записано нечто вроде 42087,583333
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|