منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[مثال] تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (https://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (https://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (https://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [مثال] تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس (/showthread.php?tid=21498)

الصفحات: 1 2 3


تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - محمود بكرى - 26-08-17

Wink 

السلام عليكم ورحمة الله وبركاته

كل عام وانتم بخير

بالمرفق مثال  تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس 

حيث ان قواعد بيانات اكسس لا تتعامل مع التاريخ الهجري فمن الافضل ان يخزن بالميلادي وتتم عليه جميع العمليات 

بالميلادي 

ولاكن اذا اردنا عرضها بالهجري نحتاج الى دالة للتحويل يمكن استخدامها باكثر من صورة

وهنا اخترت ان استخدمها مع الداتا جريد وهو مثال بسيط بالمرفق 

وكل عام وانتم بخير


.rar   convert to hjri.rar (الحجم : 84.67 ك ب / التحميلات : 149)



RE: تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - سعود الشامان - 26-08-17

وعليكم السلام ورحمة الله وبركاته

كل عام وانت بصحة وسلامة , جزاء الله خير الجزاء

لدي معركة مع التاريخ , حيث أن تعاملنا ف السعودية مع التاريخ بالهجري

وصيغة التاريخ في جهازي هجري وفي قاعدة البيانات الصيغة هجري
لكن عند إضافة البيانات تحفظ بصيغة وقيمة خاطئة

صورة للتوضيح

[صورة مرفقة: p_603mdp731.png]

وهذا الكود المستخدم

كود :
Dim cmd As New OleDbCommand(String.Format("insert into Patient_data (Pa_Name, Pa_Age, Pa_Phone, number_file, Data_mo3d) values ('{0}','{1}','{2}','{3}',#{4}# )", TextBox2.Text, TextBox6.Text, TextBox5.Text, TextBox3.Text, DateTimePicker1.Value.ToString("yyyy/MM/dd")))



RE: تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - محمود بكرى - 26-08-17

يا هلا بالاشقاء الاخ سعود جرب المرفق لمثالى بعد التعديل والمفترض انه يعمل لديك بصورة سليمة حيث النسخة لدي en فلم اجربها عندي وان شاء الله تفيدك وتكون حل لمشكلتك
رجاء لاحظ الفروق بين المرفق والسابق

.rar   convert to hjri2.rar (الحجم : 87.45 ك ب / التحميلات : 150)


RE: تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - سعود الشامان - 26-08-17

وأنتم أشقائنا وأستاذتنا أدام الله الموده والمحبيه بيننا

أستاذ محمود للأسف لم تفتح معي الأمثله




[صورة مرفقة: 150375253411361.png]



هل هو بسبب إصدار NET Framework ؟




[صورة مرفقة: 150375279912141.png]


RE: تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - محمود بكرى - 26-08-17

أدام الله المحبة اخي مسعود بين جميع الاشقاء العرب ووحد كلمتنا
نعم اخي مسعود واضح ان المشكلة فى اصدار الفريم ورك لديك
ان لم يعمل يمكنك فتح مشروع جديد ثم اضافة فورم من ملف موجود ثم اضافة الفورم من الامثلة او يمكنك فتح ملف الكود من خلال notpad++
بالتوفيق


RE: تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - حريف برمجة - 26-08-17

للمعلومية اخي نزلت المثال وجربته يعطي التاريخ الهجري في الحالتين .


RE: تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - أبو نوره - 26-08-17

مرحبا اخى سعود

جرب هذا التعديل
ممكن تلاقي التاريخ في الاكسس بالميلادي فهذا طبيعي هو حيتحول لوحده في الفورم
PHP كود :
Dim cmd As New OleDbCommand("insert into Patient_data (Pa_Name, Pa_Age, Pa_Phone, number_file, Data_mo3d) values (@name, @age, @phone, @nfile, @dt)"con)
cmd.Parameters.AddWithValue("@name"TextBox2.Text)
cmd.Parameters.AddWithValue("@age"TextBox6.Text)
cmd.Parameters.AddWithValue("@phone"TextBox5.Text)
cmd.Parameters.AddWithValue("@nfile"TextBox3.Text)
cmd.Parameters.AddWithValue("@dt"DateTimePicker1.Value.Date

ملاحظه

الهجري اللي في الاكسس خاص باللي يبرمجو داخل الاكسس بدون فجوال ومالوش علاقه بالهجري اللي الفجوال
يعني ممكن تلاقي اختلاف يوم او يومين
تجاهل الهجري اللي الاكس لانه ما يعتمد على تقويم ام القرى يللي في السعوديه
ولو تتركه بالميلادي مثل ما كان يكون افضل

والفجوال بياخذ التاريخ من الويندوز حسب ما هو محدد


RE: تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - محمود بكرى - 26-08-17

(26-08-17, 06:01 PM)حريف برمجة كتب : للمعلومية اخي نزلت المثال وجربته يعطي التاريخ الهجري في الحالتين .

لان تنسيق الويندوز لديك بالعربي فى الاصل ولاكن هل التاريخين معا فى زر الهجري بالهجري ام واحد هجري والاخر ميلادي فى المثال الثاني التعديل 
جرب واخبرني اخي حريف
ولاكن للمعلومة ايضا التاريخ مسجل فى القاعدة الميلادي فان ظهر معاك هجري فهذا هو الغرض من المثال ولاكن تعامل انت مع التعديل فى المثال الثاني فهو للنسخ العربية


RE: تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - سعود الشامان - 26-08-17

هلا وغلا ابو نوره للأسف ما اشتغل معي الكود ( لم تضاف البيانات )

انا مطلوب مني برنامج عياده
إرسال رسائل نصيه للمراجعين , وتذكيره بقرب الموعد
بالنسبة عند إختلاف التاريخ يمشي المراجع على اليوم ( الأحد أو الاثنين ...)

لكن تبقى الإشكالية عند التذكير بالموعد ( يجب أن تصل المراجع رسالة ) محتواها ( لديك موعد بعد يومين ,, يوم كذا , تاريخ كذا , الساعه كذا ) هل سيتم احتساب التاريخ الهجري بشكل صحيح ؟!

متحير في الموضوع لي اسبوع

بالنسبة لمثال الغالي محمود بكرى استطعت الحصول على الاكواد وقمت بعمل مشروع جيد وتمت الإضافة بالتاريخ الهجري والوضع ok
لكن لم أستطع تطبيق الكود في مشروعي

ممكن  توضح لي استاذ محمود جملة الانسيرت هنا
 Huh > صابني تشنج بالمخ Undecided

[صورة مرفقة: p_6038b7b71.png]

فهمت جملة الإنسيرت

لانه لا يوجد لدينا إلا عمود واحد لم تضع إسم العمود

جربت اسوي عمود ثاني واسميه saud

واجعل جملة الإنسيرت بهذا الشكل

كود :
.CommandText = "insert into tb1 (saud) values('" & DateTimePicker1.Value.ToShortDateString & "')"

وتمت الكتابة في عمود saud

كل الشكر لكل من شارك في الموضوع أستفدت من الكثير
 Shy


RE: تحويل التاريخ الميلادي الى هجري داخل الداتا جريد من قاعدة بيانات اكسس - محمود بكرى - 26-08-17

(26-08-17, 08:51 PM)سعود الشامان كتب : هلا وغلا ابو نوره للأسف ما اشتغل معي الكود ( لم تضاف البيانات )

انا مطلوب مني برنامج عياده
إرسال رسائل نصيه للمراجعين , وتذكيره بقرب الموعد
بالنسبة عند إختلاف التاريخ يمشي المراجع على اليوم ( الأحد أو الاثنين ...)

لكن تبقى الإشكالية عند التذكير بالموعد ( يجب أن تصل المراجع رسالة ) محتواها ( لديك موعد بعد يومين ,, يوم كذا , تاريخ كذا , الساعه كذا ) هل سيتم احتساب التاريخ الهجري بشكل صحيح ؟!

متحير في الموضوع لي اسبوع

بالنسبة لمثال الغالي محمود بكرى استطعت الحصول على الاكواد وقمت بعمل مشروع جيد وتمت الإضافة بالتاريخ الهجري والوضع ok
لكن لم أستطع تطبيق الكود في مشروعي

ممكن  توضح لي استاذ محمود جملة الانسيرت هنا
 Huh > صابني تشنج بالمخ Undecided  

[صورة مرفقة: p_6038b7b71.png]
اخي سعود حياك الله
الموضوع ان كلمة القيم (values)هى معيارية ان تضع فى كامل الاعمدة حسب ترتيب القيم بين الاقواس والتى هنا لدي عمود واحد و قيمة مدخلة واحدة بين الاقواس وهي قيمة الديت تيم بيكر (date time picker1) 
ولاكن لكي تضيف فى قاعدة البيانات بشكل صحيح وتقبله القاعدة اكسس على انه تاريخ صحيح يجب ان يكون التاريخ بالميلادي حتى وان ظهر لك بالهجري تبعا للويندوز
وهنا ياتي دور تثبيت الثقافة (en-us) فى حدث اللود للفورم الرئيسي حتي يتم التعامل بالتاريخ الميلادي الموافق للتاريخ الهجري داخل قاعدة البيانات وعندما يعرض لك التاريخ يقوم الفيجول باحضاره من القاعدة على انه ميلادي ومفهوم لديه انه تاريخ صحيح ويعرضه فى اداة التيم بيكر طبقا لثقافة الويندوز بالتاريخ الموافق له
يعني السر ان يسجل التاريخ بالميلادي داخل القاعدة ويتم ذلك من استدعء الثقافة (en-us) فى بداية التحميل للفورم
وكود ذلك كالاتيى
اولا استداء المكتبة

PHP كود :
Imports System.Threading 
ثانيا الكود فى حدث التحميل

PHP كود :
Thread.CurrentThread.CurrentCulture = New CultureInfo("en-US"
ولك خالص الشكر