بتاريخ: 13 نوفمبر 20169 سنة comment_279760 السلام عليكم و رحمة الله هذه اول مواضيعي اسال الله تعالى ان ينفعني و اياكم بها. لا يخفى على احد اهمية استخدام التاريخ الهجري و لا يمكن الاعتماد كليه على معادلات اوراكل مثل : -- لتحويل تاريخ اليوم الميلادي الى هجري نستخدم select to_char(sysdate,'dd/mm/yyyy','nls_calendar =''arabic hijrah''') from dual حيث نجد اختلاف يوم او يومين فمثلا يوم 13 صفر 1437 عند تحويله باستخدام المعادلة السابقة فالناتج يكون : 12/02/1438 و لكن الصحيح ان التاريخ الهجري المقابل للتاريخ الميلادي 13/11/2016 هو13/02/1438. و افضل طريقة حسب ما اعرف و قرات هو الاحتفاظ بالتاريخ الهجري في قاعدة البيانات كما هو دون الاعتماد على معادلات اوراكل. الطريقة التي اعتمدت عليها : # انشاء جدول Create table Ar_convert_date (convert_id number , Hj_date varchar2(10) , G_date varchar2(10)) # عمل شيت اكسيل بنفس شكل الجدول و يبدا التاريخ الميلادي من 01/01/2015 و حتى 01/01/2050 # تحت Hj_date في الاكسيل نكتب معادلة تحويل الهجري و هي: =text(G_date,"b2dd/mm/yyyy") # في عمود جديد في الاكسيل نكتب معادلة التاريخ الميلاد و تكون : =text(G_date,"dd/mm/yyyy") #بعد ذلك نقوم بنسخ الثلاثة اعمدة : Convert_id , Hj_date , العمود الاخيرالرابع # لصق القيم فقط Paste Values في شيت جديد # بعد هذا يمكن استيراد البيانات مباشرة الى اوراكل باستخدام الTOAD و ان كنت افضل الاستيراد باستخدام جملة INSERT # طبعا لن ارهقكم في كتابة جملة INSERT عدد 12866 مرة و هذا مستحيل # نقوم بكتابة جملة INSERT في الاكسيل كما هو مرفق ثم عمل نسخ و لصق للقيم فقط Paste Values #نسخ جملة INSERT الى متصفح Browser من خلال الدخول الى http://localhost:5560/isqlplus/workspace.uix كما هو معروف و عمل Execute و بهذا تم ادراج جميع التواريخ الميلادي (01/01/2015 حتى 01/01/2050) و الهجري (11/03/136 - 08/04/1472) في الفترة المحددة . #الخطوة التالية تكون عمل Function او Procedure باقي الملفات في الرابط التالي بسب ان حجمها تجاوز ال 1 ميجا. https://drive.google.com/open?id=0B2PUacEN7OKGbXZxRGxLRUU5anM CONV_DATE_Function.txt Create Table.txt تقديم بلاغ
بتاريخ: 13 نوفمبر 20169 سنة comment_279766 مشكور على مجهودك الرائع .. لكن من وجهة نظري إن كلاً من أوراكل وميكروسوفت يستخدمان خوارزميات معينة للتنبؤ بالتاريخ الهجري وتعتبر كافة برامج وخدمات تحويل التأريخ بهذه الطريقة غير دقيق 100% بل قد يزيد أو ينقص بمقدار 1 الى 2 يوم على الأقل ... وننصح بالرجوع الى تقويم أم القرى الموضوع من هذا الرلبط اضافة ... كما أن هناك ملف جاهز لتحديد التأريخ بطريقة رائعة في نفس الموضوع المشار اليه أعلاه تحميل الملف مباشرة من هنا تم تعديل 13 نوفمبر 20169 سنة بواسطة Faisal Matari تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.