اصلاح مشکل اختلاف ساعت برنامه Microsoft Dynamics 365 در سال 1403
همانطور که اطلاع دارید برخلاف سال های گذشته در سال 1402 ساعت رسمی کشور تغییر نیافته و این امر موجب اختلال در عملکرد برنامه های نرم افزاری متعددی گردیده است. برنامه Dynamics 365 نیز یکی از برنامه هایی است که با عدم تغییر ساعت رسمی کشور دچار اختلال شده است. به جهت رفع این مشکل می توانید از راه حل زیر استفاده نمایید. بر روی تمامی سرورهای مرتبط با برنامه CRM (DB,App,Service) از قسمت Control Panel وارد تنظیمات ساعت و منطقه زمانی شوید (مطابق تصویر). بر روی گزینه Date and Time کلیک نمایید و سپس بر روی دکمه Change time zone کلیک نموده و گزینه Automatically adjust clock for Daylight Saving Time را غیرفعال نمایید. پس از آن به سرور دیتابیس متصل و سپس برنامه SSMS را اجرا نمایید. در بین دیتابیس های مرتبط با نرم افزار CRM بر روی دیتابیس Organization های مورد نظر خود کوئری زیر را اجرا نمایید.
IF NOT EXISTS (SELECT * from TimeZoneRuleBase where EffectiveDateTime = '2023-03-21 00:00:00.000')
INSERT INTO [dbo].[TimeZoneRuleBase] ([DaylightDayOfWeek] ,
[StandardSecond] ,
[OrganizationId] ,
[CreatedOnBehalfBy] ,
[EffectiveDateTime] ,
[DaylightHour] ,
[ModifiedBy] ,
[ModifiedOnBehalfBy] ,
[StandardDayOfWeek] ,
[StandardHour] ,
[CreatedOn] ,
[TimeZoneRuleId] ,
[Bias] ,
[StandardMinute] ,
[StandardMonth] ,
[DaylightMinute] ,
[DaylightDay] ,
[DaylightYear] ,
[CreatedBy] ,
[StandardDay] ,
[DaylightBias] ,
[StandardBias] ,
[DaylightSecond] ,
[TimeZoneRuleVersionNumber] ,
[ModifiedOn] ,
[StandardYear] ,
[DaylightMonth] ,
[TimeZoneDefinitionId]) VALUES (0 ,0 ,NULL ,NULL ,'2023-03-21 00:00:00.000' ,
0 ,
NULL ,
NULL ,
0 ,
0 ,
GETUTCDATE() ,
NEWID() ,
-210 ,
0 ,
0 ,
0 ,
0 ,
0 ,
NULL ,
0 ,
-60 ,
0 ,
0 ,
(Select MAX(TimeZoneRuleVersionNumber)+1 from [dbo].[TimeZoneRuleBase] tzr inner join [dbo].[TimeZoneDefinitionBase] tzd on tzr.TimeZoneDefinitionId = tzd.TimeZoneDefinitionId where tzd.StandardName = 'Iran Standard Time') ,
GETUTCDATE() ,
0 ,
0 ,
(select Top(1) TimeZoneDefinitionId FROM [dbo].[TimeZoneDefinitionBase] where StandardName = 'Iran Standard Time'
سپس سرور Application را Restart نمایید. در نظر داشته باشید اصلاح ساعت سرور به تنهایی کمکی به رفع مشکل نمی کند زیرا برنامه CRM درون خود یک Daylight Saving دارد و از روی آن ذخیره ساعت فعالیت ها را انجام میدهد. این کوئری دقیقا همان Daylight Saving داخل برنامه را اصلاح و سپس با مشاهده ساعت سرور و به نحوی مطابقت ساعت سرور و تنظیمات زمانی درون ساخت خود اقدام به ثبت ساعات ذخیره رکوردها می نماید.
با سپاس