06.11.2013, 19:12 | #1 |
Участник
|
Проблема с датой в кастомной сущности
Добрый день
Есть MS CRM 4 стоит на win2008 R2 и SQL 2008 24 октября появилась проблема с кастомной сущностью При заполнении в ней кастомного поля "дата" через миникалендарь встроенный день откатывается на сутки назад. Пример. Задаю дату 26.10.2013, сохраняю, запрашиваю отчет по действиям за промежуток с 24 по 26, фильтр стоит по этому кастомному полю. В итоге получаю сущность созданная 26го, появляется не в 26 а 25 числом. В SQL делаю запрос на аналогичную выгрузку, получаю, что поле "дата" имеет 25.10.2013. Лезу обратно в базу, в CRM отображается в поле дата 26.10.2013 как и забивали. Но в SQL та же запись имеет число 25.10.2013. До 24 октября 2013 все нормально. Вопрос куда копать? Хоть примерно? |
|
06.11.2013, 19:31 | #2 |
Участник
|
в отчет.
Больше всего что в отчете используется статическое изменение даты +2 часа а нужно через преобразователь по часовым поясам. В базе оно хранит в UTC и полную дату и время 26.10 в срм это 25.10.2013 21:00 в SQL |
|
06.11.2013, 19:37 | #3 |
Участник
|
Вот 1 из примеров http://blogs.microsoft.co.il/blogs/a...s-crm-4-0.aspx
|
|
06.11.2013, 19:59 | #4 |
Участник
|
Тут не проблема с каким то одним отчетом, этот отчет нормально работал почти год.
Случайно выяснили что 24 числа начался вот такой сбой. т.е. в самой crm все как занесли руками 26.10.2013, а уже в SQL это же поле значится 25.10.2013, я уже и время смотрел у всех полей с 24го числа это поле ровно на 1 день назад на 20:00:00 вечера. Про пробелмы с часовыми поясами я читал, тут другое, на самом сервере где она крутится, я сижу и выполняю отчет на нем же. Даты стоят правильные. Я сделал запрос к скулю изменилась ли дата создания... тут все ок, как была 26.10.2013 так и осталась. Только это конкретное поле, одной конкретной сущности. |
|
06.11.2013, 22:17 | #5 |
Участник
|
Update: Создал для этой сущности новый атрибут (datetime - только дата), поместил на форму.
Создаю новую, забиваю в новый атрибут 06.11.2013, в старую косячную 06.11.2013 и лезу в SQL. Запрашиваю все документы созданные по полю createdon 06.11.2013 И получаю свой документ, но атрибуты, что новый, что старый выдают мне 05.11.2013 20:00:00 Теперь как исправить не знаю... пока залатал автоприсваиванием на день вперед, но это не вариант. Это не косяк часового пояса, ибо дата на которую меняется в SQL ровно на сутки раньше, а время всегда 20:00:00 Последний раз редактировалось Technician; 06.11.2013 в 22:19. Причина: Update |
|
06.11.2013, 22:42 | #6 |
Участник
|
Вы уверенны, что Ваша проблема связанна с определенной сущность, а не со всеми поля типа дата во всех сущностях при определенных датах?
Моё мнение по вопросу: Я думаю, что Ваша проблема связанна с тем, что в России последние год два не переводят время. В срм есть специальная таблица в которой содержится информация о летнем и зимнем времени. Что бы это правильно работало Майкрософт должны выпустить патч, который меняет эту информацию. Т.к. у вас срм 4, а для него думаю такого патча не существует. Решение: Вы можете попробовать поменять эту информацию сами ручками в SQL. Не рекомендуется. Переходите на новый срм. (шутка) p.s.1 Я живу в Израиле. У нас наше умное правительство в этом году в июне решило, что будет переводить время не 6 сентября а 26 октября. Ну и все системы работали с неправильным временем два месяца. Мы дали частичное решение перевести часовой пояс на Грецию. Но это решение не полное. p.s. 2 В Вашем случае нужно найти страну которая тоже не переводит время, но находится в том же часовом поясе.
__________________
Читайте SDK!!! |
|
06.11.2013, 23:29 | #7 |
Участник
|
А таблицу эту можно посмотреть где либо? И опять же вопрос если это перевод времени, почему запись созданная 06.11.2013 в 19:45 и запись созданная 06.11.2013 в 22:00, откатываются на 05.11.2013 20:00
Ну и вопрос сразу в SQL где смотреть? Update: мда в общем съезжают ВСЕ кастомные поля типа datetime кроме оригинального createdon.... во всех сущностях ;( Вилы... Последний раз редактировалось Technician; 06.11.2013 в 23:37. |
|
07.11.2013, 00:51 | #8 |
Участник
|
Цитата:
Попробуйте отключить все плагины и скрипты. Время не откатывается, а конвертируется в UTC. Название таблицы я поищу.
__________________
Читайте SDK!!! |
|
07.11.2013, 01:06 | #9 |
Участник
|
__________________
Читайте SDK!!! |
|
07.11.2013, 01:57 | #10 |
Участник
|
Окей, вопрос не в том откатывается или конвертируется, если бы дело было в часовом поясе, то конвертация была бы наверное в разные часы-минуты. т.е скажем запись с временем 14:00 конвертировалась бы в 20:00, а 15:00 в 21:00. А у меня четко все в 20:00
|
|
07.11.2013, 10:01 | #11 |
Участник
|
Поищите код/SQl Job ....
__________________
Читайте SDK!!! |
|
|
|