Date Convert JS
Version: |
2.6 |
Copyright: |
2004-2011
JSSoft |
Control Programmer: |
Javad Soltani «Javad_JSP
at Yahoo.com» |
در زمینه کنترل دادههای
تاریخی در برنامهنویسی تاکنون الگوریتمها
و برنامههای زیادی وارد این عرصه شده اما سلامت و صحت عملکرد
بسیاری از آنها به دلیل ناقص بودن الگوریتم مورد
استفاده در آنها دچار خدشه شده و با کمال تأسف باید گفت که تعداد انگشت شماری از
آنها فقط تا 95 درصد دادههای خروجیشان صحیح میباشد.
به عنوان مثال تبدیل تاریخ
میلادی به هجریشمسی را کمی مورد بررسی قرار میدهیم.
تاریخ هجریشمسی با عنوان تقویم جلالی شناخته شده است که:
"سالها
12 ماه دارند که از هجرت پیامبر(ص) از مکه به مدینه در سال 622 بعد از میلاد شروع شدهاند. یک سال
جلالی در اولین روز بهار نجومی و یا در روز بعد از آن که به ترتیب منطبق با
این است که لحظه اعتدالی قبل یا بعد از ساعت 12:00 به وقت تهران اتفاق بیافتد,
شروع میشود.
در 6 ماه
اول سال همه ماهها 31 روز و در 6 ماه دوم در یک سال
کبیسه همه 30 روز
دارند. در سالهای
معمولی (غیر کبیسه) آخرین ماه سال 29 روزه است. بنابراین هر فصل با 3
ماه متوالی منطبق است.
انتظار میرود که تقریبا هر چهارمین سال در تقویم ایرانی یک سال
کبیسه باشد و این نظم مشهور در تقویم خورشیدی است. بعلاوه معمولا بعد از هر 32 سال (که
بعضی اوقات بعد از 28 یا
36 سال محاسبه میشود) یک سال
معمولی اضافه میشود یعنی 4 سال متوالی به جای 3
سال متوالی 365 روزه است. بطور متداول سالهای کبیسه
بطور یکنواخت در دورههای 33 ساله
محاسبه میشوند و سالهایی هستند که در تقسیم بر 33
باقی مانده 1,5,9,13,17,22,26و 30 داشته باشند. برای نمونه سال جلالی 1375 که در
20 مارس 1996 شروع شده
است باقی مانده 22 دارد بنابراین کبیسه است."
یکی از علل متفاوت بودن
کنترل فوق با دیگر مبدلهای تاریخ در آن است که اصول
تبدیل تاریخ (چه در هجریشمسی و چه در دیگر تقویمها)
کاملا رعایت شده. برای اثبات این مطلب از شما دعوت میکنم
بخشهای بعدی را با دقت مطالعه نمایید.
مبدل تاریخDateConvertJS از انواع تاریخهای
زیر پشتیبانی میکند:
تقویم |
Gregorian |
میلادی-Civil |
تقویم |
Hebrew |
یهودی |
تقویم |
Islamic |
اسلامی-هجری قمری |
تقویم |
Julian |
|
تقویم |
Persian |
ایرانی-هجریشمسی |
خود کنترل در سالهای 85-84 به
زبان Visual Basic 6.0 (sp6)
نوشته و کامپایل شده و تا کنون چندین بار بهینه سازی
شده است. به همین دلیل کلیه مثالها و ارجاعات در این
سند با همین زبان برنامه نویسی خواهد بود.
لازم به ذکر است که محیط عملکرد در نسخه 2.6 ,سیستم عاملهای
ویندوز XP,
ویندوز Vista و ویندوز Se7en است.
توضیحات جامع و چگونگی استفاده از این کنترل در سند PDF (برای
دانلود کلیک کنید) آن آمده است.
تمام تصاویر
و تقویمهای نمونهای که در
این سند مشاهده میکنید (یا ممکن است همراه سند بدون تصویر عرضه شوند) فقط از خود
کنترل تهیه شدهاند و هیچ گونه کار گرافیکی
و یا ویرایش روی آنها صورت نگرفته است!
این کنترل با نام DateConvertJS26.ocx در اختیارتان
میباشد که میتوانید نسخه 2 رایگان/آزمایشی آن را از آدرس زیر دانلود کنید, به
همراه سورس کد برنامه تقویم 85 که کار با کنترل را برای
شما راحتتر خواهد کرد.
« http://javadsoltani.persiangig.com/Program/DateConvertJS26/DateConvertJS2Trial.zip »
همراه بسته زیر یک برنامه
نمونه با نام تقویم دهه 90 وجود دارد که در آن به طور ذاتی از کنترل نسخه 2.6.2
استفاده شده. برای مشاهده تواناییهای نسخه جدید میتوانید این برنامه را نصب و اجرا کنید:
« http://javadsoltani.persiangig.com/Program/DateConvertJS26/90sDecadeCalendar.zip »
در پایان سند PDF
چگونگی خرید نسخه اصلی بیان شده است.