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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.09.2006, 13:41   #1  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
? Время созданного "сейчас" файла меньше timenow на 4 часа
Уважаемые коллеги, такая проблема. Даже две.
Есть такой тестовый джоб:
X++:
static void KKu_Job_6901_TestFileTime(Args _args)
{
    FileName fileName = 'C:\\testtime.txt';
    ;
    
    if (WinAPI::fileExists( fileName ))
        WinAPI::deleteFile( fileName );
    
    WinAPI::createFile( fileName );
    
    info( fileName );
    
    info( 'Даты в формате ГГ ММ ДД' );
    info( date2str(WinAPI::getFileCreatedDate ( fileName ) ,321,2,1,2,1,2) );
    info( date2str(WinAPI::getFileModifiedDate( fileName ) ,321,2,1,2,1,2) );
    info( date2str(WinAPI::getFileAccessedDate( fileName ) ,321,2,1,2,1,2) );
    
    info( 'Время в формате ЧЧ ММ СС' );
    info( time2str(WinAPI::getFileCreatedTime ( fileName ) ,3,1) );
    info( time2str(WinAPI::getFileModifiedTime( fileName ) ,3,1) );
    info( time2str(WinAPI::getFileAccessedTime( fileName ) ,3,1) );
    
    info( 'Время "сейчас" в формате ЧЧ ММ СС' );
    info( time2str( timenow(),3,1) );
}
Запускаю джоб 1-й раз. Получаю в инфологе:
Код:
C:\testtime.txt
Даты в формате ГГ ММ ДД
06 09 01
06 09 01
06 09 01
Время в формате ЧЧ ММ СС
09 21 06
09 21 06
09 21 06
Время "сейчас" в формате ЧЧ ММ СС
13 21 06
1-й вопрос: что это за 4 часа разницы, т.е. 13-9 ? Гринвич? UNIX-time? (любопытно, какая разница получится у других часовых поясов - отличная от 4?)
И как бороться? Просто тупо учитывать константой "4 часа" в коде или есть какая-нибудь специальная функция для такой коррекции?

Это еще не всё. По ходу возник второй вопрос. Напомню, что файл уже существует и я хочу его удалить и создать заново.
Запускаю джоб 2-й раз. Получаю в инфологе:
Код:
C:\testtime.txt
Даты в формате ГГ ММ ДД
 
 
 
Время в формате ЧЧ ММ СС
00 00 00
00 00 00
00 00 00
Время "сейчас" в формате ЧЧ ММ СС
13 22 23
Иду смотреть файл в Проводнике. Он существует, но как-то "странно"... На попытку удалить в Проводнике ругается, что занят другим процессом. Выхожу из Аксапты - файл запоздало исчезает.
2-й вопрос: Как этот файл освободить, не выходя из Аксапты?


Всем откликнувшимся заранее большое спасибо.
Теги
time, winapi, время, файл

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Закупка на проект "Время и расходы" Sentry DAX: Функционал 6 19.02.2016 14:09
"An unexpected exception occurred" во время установки. Hub DAX: Администрирование 2 19.12.2009 12:09
Время по графику и фактическое время работы в табеле nicko DAX: Функционал 0 09.02.2005 15:24
Поле с типом "Время" Кирилл DAX: Программирование 9 06.05.2004 10:53
Установить время файла? SnowMan DAX: Программирование 5 01.10.2003 14:42
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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