25.05.2010, 14:53 | #1 |
Модератор
|
Редактор сообщений электронной почты.
В DAX 2009 SP1 нашел пару глюков, хотелось бы узнать как поправить?
1) Основное --> Настройка --> Шаблоны сообщений эл. почты Создаю шаблон: Переключаясь между вкладками "Обычный" и "Предварительный просмотр" текст в окне сохраняет изначальную кодировку и стиль. Но стоит переключится на вкладку "HTML", кодировка меняется. вернувшись на вкладку "Обычный", вижу Как исправить кодировку? 2) На почту приходит сообщение. Cтрока: "Запись создана в Поставщики" произошло в 25.05.2010 10:38:30 в компании dem. Элемент данных слияния %occurred% показывает странное время = 25.05.2010 10:38:30 , а должно быть 25.05.2010 14:38:30 Куда исчезли 6 часов? (Дату и время сеанса в аксапте проверял. Системное время настроено правильно, часовой пояс тоже) P.S. Связанные темы Ссылка на Аксапту, Шаблоны сообщений эл. почты
__________________
This posting is provided "AS IS" with no warranties, and confers no rights. Последний раз редактировалось Poleax; 25.05.2010 в 15:06. Причина: Связанные темы |
|
25.05.2010, 15:10 | #2 |
Участник
|
1. Встречалось еще в 4.0. Пока так и не понял от чего зависит. На разных компьютерах - разное поведение.
2. Возможно, некорректные настройки UTC-времени? Поле заполняется так: datetime2str(_inbox.AlertCreatedDateTime, DateFlags::FormatAll)
__________________
Ivanhoe as is.. |
|
25.05.2010, 15:36 | #3 |
Участник
|
2. Посмотрел внимательнее:
Дата и время inbox задается в методе execute класса EventActionAlert: X++: alertCreatedDateTime = DateTimeUtil::newDateTime(systemdateget(),timenow(),DateTimeUtil::getUserPreferredTimeZone()) X++: datetime2str(DateTimeUtil::applyTimeZoneOffset(_inbox.AlertCreatedDateTime, DateTimeUtil::getUserPreferredTimeZone), DateFlags::FormatAll)
__________________
Ivanhoe as is.. |
|
|
За это сообщение автора поблагодарили: Poleax (1). |
25.05.2010, 15:52 | #4 |
Модератор
|
Цитата:
The time is incorrect on an email alert in Axapta General Discussions Time stored in the EventCUD table
__________________
This posting is provided "AS IS" with no warranties, and confers no rights. |
|
25.05.2010, 16:17 | #5 |
Модератор
|
Цитата:
Сообщение от Ivanhoe
2. Посмотрел внимательнее:
Дата и время inbox задается в методе execute класса EventActionAlert: X++: alertCreatedDateTime = DateTimeUtil::newDateTime(systemdateget(),timenow(),DateTimeUtil::getUserPreferredTimeZone()) X++: datetime2str(DateTimeUtil::applyTimeZoneOffset(_inbox.AlertCreatedDateTime, DateTimeUtil::getUserPreferredTimeZone), DateFlags::FormatAll) \Classes\EventActionEmail\createEmailParameterMap X++: parameterMap.insert('occurred',datetime2str(DateTimeUtil::applyTimeZoneOffset(_inbox.AlertCreatedDateTime,DateTimeUtil::getUserPreferredTimeZone()), DateFlags::FormatAll));
__________________
This posting is provided "AS IS" with no warranties, and confers no rights. |
|
|
За это сообщение автора поблагодарили: Raven Melancholic (2), wojzeh (1). |
25.05.2010, 16:24 | #6 |
Участник
|
П.1. Открываем форму SysInetHTMLEditor, метод parseHTML, находим в конце строку:
X++: retVal = '{\\rtf1\\ansi' + /*generateFontTable() +*/ element.generateColorTable() + '\r\n'; X++: retVal = '{\\rtf1\\ansi\\ansicpg1251' + /*generateFontTable() +*/ element.generateColorTable() + '\r\n';
__________________
Ivanhoe as is.. Последний раз редактировалось Ivanhoe; 25.05.2010 в 16:29. |
|
|
За это сообщение автора поблагодарили: NataLee (1). |
25.05.2010, 16:53 | #7 |
Модератор
|
Цитата:
X++: retVal = '{\\rtf1\\ansi\\ansicpg1251\\deff0\\deflang1049' + /*generateFontTable() +*/ element.generateColorTable() + '\r\n';
__________________
This posting is provided "AS IS" with no warranties, and confers no rights. |
|
|
За это сообщение автора поблагодарили: BOAL (2), NataLee (1), sukhanchik (4), demoded (1), Comandante (0), Cathome (1). |
25.05.2010, 17:08 | #8 |
Участник
|
В моем варианте тоже работает. Вопрос про универсальность критичен, если у вас Аксапта стоит в нескольких странах и несколько пользователей (с разной кодовой страницей) работают с шаблонами почты.
__________________
Ivanhoe as is.. |
|
|
За это сообщение автора поблагодарили: Poleax (5). |
10.05.2011, 16:58 | #9 |
Модератор
|
\Classes\EventActionEmail\createEmailParameterMap
подправили в Rollup 7
__________________
This posting is provided "AS IS" with no warranties, and confers no rights. |
|
15.07.2011, 19:59 | #10 |
Участник
|
По поводу п.2
Не уверен, что предложено правильное исправление (в том числе и Майкрософтом в RU7) Ведь все эти классы (EventAction*) запускаются на батч сервере и, соответственно, пользователь, для которого формируется оповещение, не является в общем случае тем же пользователем, который выполняет задание. И если они будут находиться в разных временных зонах, то результат будет неверным По идее, надо делать выборку из настроек пользователя, для которого отправляется оповещение
__________________
Axapta v.3.0 sp5 kr2 |
|
15.07.2011, 22:16 | #11 |
Участник
|
Не согласен. Посмотрите класс EventJobCUD.run() - обработка событий изначально запускается от имени пользователя, который получит сообщение.
__________________
Ivanhoe as is.. |
|
|
За это сообщение автора поблагодарили: AndyD (5). |
15.07.2011, 22:28 | #12 |
Участник
|
Да, точно, был нерав, умолкаю
__________________
Axapta v.3.0 sp5 kr2 |
|