ضمن تبریک سال نو و آرزوی موفقیت برای تمامی کاربران عزیز، با توجه به تفاوتهای تغییر ساعت در ایران، نسبت به سایر کشورهای جهان، نیاز است تا برای جلوگیری از برهم خوردن نظم دادههای نرم افزار CRM تغییراتی در آن ایجاد نمایید.
همانطور که میدانید طی سال 1402 و در ادامه 1403، برخلاف رسم معمول همیشگی و جهانی که ساعتها را در ابتدای بهار یک ساعت جلو میکشند، بر اساس مقررات جدید، این اتفاق در ایران نمیافتد! به عبارت دیگر ساعت رسمی کشور با شروع سال نو تغییری نخواهد کرد!
با این وجود تمامی ابزارهای دیجیتالی و نرمافزارهای خارجی متصل به شبکه، از جمله نرم Dynamics 365 ce در این تاریخ به صورت اتوماتیک ساعت داخلی خود را تغییر داده و یک ساعت جلو میکشند.
این موضوع باعث شده تا بسیاری از کاربران نرم افزار CRM داینامیکس 365 در عملکرد مجموعه با اختلالات زیادی مواجه شوند. تمامی کاربران نرم افزار داینامیکس 365 کیان پرداز هوشمند میتوانند با استفاده از روش زیر، نسبت به رفع این مشل اقدام نمایند:
- بر روی تمامی سرورهای مرتبط با برنامه CRM شامل DB,App,Service، از قسمت Control Panel وارد بخش تنظیمات ساعت و منطقه زمانی شوید.
2. بر روی گزینه Date and Time کلیک کنید و سپس روی دکمه Change time zone بزنید و گزینه Automatically adjust clock for Daylight Saving Time را غیرفعال نمایید.
3. حال به سرور دیتابیس متصل شده و سپس برنامه SSMS را اجرا نمایید.
4. در بین دیتابیسهای مرتبط با نرم افزار 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’))
5. در نهایت برای اعمال شدن تغییرات یک بار دستور iisreset را به صورت run as admin در سرور crm اجرا نمایید.
نکته : توجه داشته باشید اصلاح ساعت سرور به تنهایی موجب رفع مشکل نمی شود، زیرا برنامه CRM درون خود یک Daylight Saving دارد و مبتنی بر ساعت آن، فعالیت هایش را انجام میدهد. کوئری فوق دقیقا همان بخش Daylight Saving داخل برنامه را اصلاح کرده و سپس با مشاهده ساعت سرور (به نحوی که ساعت سرور با تنظیمات زمانی درون ساخت خود مطابقت داشته باشد) اقدام به ثبت ساعات ذخیره رکوردها می نماید.